Eae Galera! Estou iniciando meus post's aqui no Arduino Paraná com um tutorial bem simples porém um divisor de águas no mundo da programação com à plataforma. Iremos trabalhar com LED RGB, legal não é? Mas antes de ir direto para o código vou explicar um pouco como funciona esse componente. O LED RGB gera cores primárias (Vermelho,Verde e Azul) podendo gerar outras cores quando essas primárias são acionadas ao mesmo tempo , assim como na imagem ilustrada abaixo:
Figura 1 - Padrão de Cores Primárias e Secundárias. |
A Figura 2 é um ilustrativo do LED RGB, o mesmo utilizado neste post.
Figura 2 - DataSheet do LED RGB |
Quando o pino 1 é alimentado o LED acende a cor vermelha, ao acionar o pino 3 obtemos como resultado a cor verde e o pino 4 é referente a cor azul. O pino 2 é o comum/Ground(GND - nos termos técnicos). Para obter as demais cores é só alimentar mais de um pino ao mesmo tempo, por exemplo, ao alimentar o pino 1,3 e 4 teremos como resultador a cor branca.
Estrutura do Projeto:
– Arduino Uno RC3;
– LED RGB 5V;
– Jumpers para cabeamento;
– 3 resistors de 100 ohms
– Micro Protoboard;
– Fritizing para modelagem.
Estrutura do Projeto:
– Arduino Uno RC3;
– LED RGB 5V;
– Jumpers para cabeamento;
– 3 resistors de 100 ohms
– Micro Protoboard;
– Fritizing para modelagem.
Diagrama do Projeto:
Figura 3 - Diagrama do Projeto |
Código:
// TUTORIAL - ALTERNANDO CORES COM LED RGB
//ARDUINO PARANÁ www.arduinoparana.com
//---------------------------------------------------------------
int ledR = 12;
int ledG = 9;
int ledB = 8;
void setup(){
pinMode(ledR, OUTPUT);
pinMode(ledG, OUTPUT);
pinMode(ledB, OUTPUT);
}
//METODOS ------------------------------------------------------
void vermelho(){
digitalWrite(ledR,HIGH);
digitalWrite(ledG,LOW);
digitalWrite(ledB,LOW);
}
void azul(){
digitalWrite(ledR,LOW);
digitalWrite(ledG,LOW);
digitalWrite(ledB,HIGH);
}
void verde(){
digitalWrite(ledR,LOW);
digitalWrite(ledG,HIGH);
digitalWrite(ledB,LOW);
}
void branco(){
digitalWrite(ledR,HIGH);
digitalWrite(ledG,HIGH);
digitalWrite(ledB,HIGH);
}
void amarelo(){
digitalWrite(ledR,HIGH);
digitalWrite(ledG,HIGH);
digitalWrite(ledB,LOW);
}
void ciano(){
digitalWrite(ledR,LOW);
digitalWrite(ledG,HIGH);
digitalWrite(ledB,HIGH);
}
void magenta(){
digitalWrite(ledR,HIGH);
digitalWrite(ledG,LOW);
digitalWrite(ledB,HIGH);
}
----------------------------------------------------------
void loop(){
vermelho();
delay(1000);
verde();
delay(1000);
azul();
delay(1000);
amarelo();
delay(1000);
ciano();
delay(1000);
magenta();
delay(1000);
branco();
delay(1000);
}
O vídeo do funcionamento do LED pode ser acompanhado abaixo.
Agora é só dar assas a imaginação! E brincar com o LED RGB.
OBS: É aconselhável utilizar resistores para diminuir a corrente, pois o Arduíno possui uma tensão de 5V e o LED trabalha com 3.3V.
Qualquer duvida, sugestão entre em contato conosco, até a próxima.
Nenhum comentário :
Postar um comentário