Agora você irá aprender como mudar a cor de um LED tricolor, o RGB. Veja as funções de cada pino do RGB: Esquema de Montagem Material Arduino Uno Protoboard 9 Jumpers 3 Resistores 1 LED RGB Programação //Mudando a cor de um LED RGB //www.professorakeila.com.br int pinoR = 11; //PINO DIGITAL EM QUE O TERMINAL 'R' ESTÁ CONECTADO int pinoG = 10; //PINO DIGITAL EM QUE O TERMINAL 'G' ESTÁ CONECTADO int pinoB = 9; //PINO DIGITAL EM QUE O TERMINAL 'B' ESTÁ CONECTADO //COMENTE A LINHA ABAIXO SE O LED RGB QUE ESTÁ UTILIZANDO É CATODO COMUM #define COMMON_ANODE void setup(){ pinMode(pinoR, OUTPUT); //DEFINE O PINO COMO SAÍDA pinMode(pinoG, OUTPUT); //DEFINE O PINO COMO SAÍDA pinMode(pinoB, OUTPUT); //DEFINE O PINO COMO SAÍDA } void loop(){ setColor(255, 0, 0); //PARÂMETROS PARA PRODUZIR A COR VERMELHA delay(1000); //INTERVALO DE 1 SEGUNDO setColor(0, 255, 0); //PARÂMETROS PARA PRODUZIR A COR VERDE delay(1000); //INTERVALO DE 1 SEGUNDO setColor(0, 0, 255); //PARÂMETROS PARA PRODUZIR A COR AZUL delay(1000);//INTERVALO DE 1 SEGUNDO setColor(255, 255, 0); //PARÂMETROS PARA PRODUZIR A COR AMARELA delay(1000); //INTERVALO DE 1 SEGUNDO setColor(80, 0, 80); //PARÂMETROS PARA PRODUZIR A COR VIOLETA delay(5000); //INTERVALO DE 1 SEGUNDO setColor(0, 255, 255); //PARÂMETROS PARA PRODUZIR A COR AZUL AQUA delay(1000); //INTERVALO DE 1 SEGUNDO } //FUNÇÃO QUE PRODUZ O BRILHO DE CADA UM DOS LEDS DE ACORDO COM OS PARÂMETROS INFORMADOS void setColor(int vermelho, int verde, int azul){ #ifdef COMMON_ANODE //SE O LED RGB FOR DEFINIDO COMO ANODO COMUM, FAZ vermelho = 255 - vermelho; //VARIÁVEL RECEBE O RESULTADO DA OPERAÇÃO '255 MENOS O PARÂMETRO (vermelho) INFORMADO' NA CHAMADA DA FUNÇÃO verde = 255 - verde; //VARIÁVEL RECEBE O RESULTADO DA OPERAÇÃO '255 MENOS O PARÂMETRO (verde) INFORMADO' NA CHAMADA DA FUNÇÃO azul = 255 - azul; //VARIÁVEL RECEBE O RESULTADO DA OPERAÇÃO '255 MENOS O PARÂMETRO (azul) INFORMADO' NA CHAMADA DA FUNÇÃO #endif analogWrite(pinoR, vermelho); //DEFINE O BRILHO DO LED DE ACORDO COM O VALOR INFORMADO PELA VARIÁVEL 'vermelho' analogWrite(pinoG, verde); //DEFINE O BRILHO DO LED DE ACORDO COM O VALOR INFORMADO PELA VARIÁVEL 'verde' analogWrite(pinoB, azul); //DEFINE O BRILHO DO LED DE ACORDO COM O VALOR INFORMADO PELA VARIÁVEL 'azul' }
Faça um comentário!