ESTUDANDO O MUNDO ARDUINO:E ANTECIPANDO O FUTURO:

LED R.G.B.

acessar com  www.ebanataw.com.br/expledrgb.htm

O LED RGB é um diodo que emite luz. Diferentemento do LED comum, o LED RGB tem 4 pernas.

Basta fazer passar uma corrente que ele irá emitir uma luiz. A cor da luz vai depende de qual das pernas está passando a corrente elétrica.

A perna mais comprida é a perna comum. As demais acionam a cor vermelha, verde e azul.

CUIDADO: A corrente que passamos pelo LED não pode ser maior que 20 miliamperes, de modo que você deve colocar um resistor em série com ele para limitar a corrente elétrica.

Sendo um diodo, o LED tem polaridade, isto é, uma das pernas é polo positivo e a outra é polo negativo. O polo positivo é a perna mais longa. O sentido da corrente deve ser do polo positivo para o polo negativo. Caso você ligue o LED ao contrário, isto é, entrando com a corrente pelo polo negativo, o LED não vai acender.

O valor do resistor vai depender do valor da voltagem.

Aplique a Lei de Ohm para calcular o valor do resitor. V = r.i   isto é  r = V / i

Para uma tensão de 9 Volts, r = 9 / 0,020 = 450 ohms

O valor do resistor não precisa ser exatamente estes. Colocando um resistor de, por exemplo 400 ohms, na voltagem de 9 Volts, o LED acenderá mais brilhante e, ao contrário, com um resistor de 500 ohms o LED vai acender mais fraco.

Veja uma montagem simples que nem precisa do ARDUINO para você ver como funciona. No caso empreguei resistores de 470 ohms, 3 botoeiras e uma bateria de 9 Volts.

Veja uma montagem simples que nem precisa do ARDUINO para você ver como funciona. No caso empreguei resistores de 470 ohms, 3 botoeiras e uma bateria de 9 Volts.

Agora, veja uma montagem, também simples, e que usa o ARDUINO:

#define RED_RGB 9 //Define RED_RGB como 9
#define GREEN_RGB 10 //Define RED_RGB como 10
#define BLUE_RGB 11 //Define RED_RGB como 11
#define pot A0  //Define pot_RED como A0
#define RED_botao 2 //Define RED_botao como 2
#define GREEN_botao 3 //Define GREEN_botao como 3
#define BLUE_botao 4 //Define BLUE_botao como 4

int valor_RED; //Variável para armazenar o valor do vermelho
int valor_GREEN; //Variável para armazenar o valor do verde
int valor_BLUE; //Variável para armazenar o valor do azul

void setup()
{      

pinMode
(RED_botao, INPUT_PULLUP); //Configura o pino 2 como entrada e com o resistor de pullup ativo   
pinMode(GREEN_botao, INPUT_PULLUP); //Configura o pino 3 como entrada e com o resistor de pullup ativo   
pinMode
(BLUE_botao, INPUT_PULLUP); //Configura o pino 4 como entrada e com o resistor de pullup ativo   

}


void
loop()
{    

while(!(digitalRead(RED_botao))) //Enquanto o botão do pino 2 estiver pressionado  
{    
valor_RED = map(analogRead(pot), 0, 1023, 0, 255); //Pega o valor do potenciômetro,                     //converte a escala de 0 a 1023 em 0 a 255, e armazena em valor_RED                                    
analogWrite
(RED_RGB, valor_RED); //Gera o PWM no pino 9 (R - Vermelho), com o valor convertido                                     //do potenciômetro  

}  
//==================================================================
      
while
(!(digitalRead(GREEN_botao))) //Enquanto o botão do pino 3 estiver pressionado
{    
valor_GREEN = map(analogRead(pot), 0, 1023, 0, 255); //Pega o valor do potenciômetro,                     //converte a escala de 0 a 1023 em 0 a 255, e armazena em valor_GREEN                         

analogWrite
(GREEN_RGB, valor_GREEN); //Gera o PWM no pino 10 (G - Verde), com o valor convertido                                         //do potenciômetro  
}      

while
(!(digitalRead(BLUE_botao))) //Enquanto o botão do pino 4 estiver pressionado  
{    valor_BLUE = map(analogRead(pot), 0, 1023, 0, 255);; //Pega o valor do potenciômetro,                     //converte a escala de 0 a 1023 em 0 a 255, e armazena em valor_GREEN                         

analogWrite
(BLUE_RGB, valor_BLUE); //Gera o PWM no pino 11 (B - Azul), com o valor convertido                                       //do potenciômetro  
}  

}

Acionando individualmente cada perna do LED RGB você verá o led acendendo em VERMELHO, VERDE e AZUL, isto é, Red, Green e Blue.

Acionando duas ou as três pernas com tensões que podem variar de 0 a 1023, você vai obter toda a gama de cores conforme o diagrama seguinte, dependendo da combinação de tensões nas pernas do led:

 

NOTA: Este site é mantido pela equipe do engenheiro Roberto Massaru Watanabe e se destina principalmente para adolecentes e estudantes. Pelo caráter pedagógico do site, seu conteúdo pode ser livremente copiado, impresso e distribuido. Só não pode piratear, isto é, copiar e depois divulgar como se fosse de sua autoria.


ET-18\RMW\arduino\mascara.htm em 08/02/2018, atualizado em 01/01/2020 .