Arduino, Internet das Coisas e Computação vestível |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Você está em » Home : Projetos diversos :: 12. Controle Remoto/Receptor Ir ::: 12.2. Acende e apaga LEDs pelo controle
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
12.2. Acende e apaga LEDs pelo controle
|
// Projeto: Acende e apaga LEDs pelo controle remoto // Autor: André Silveira // Data: 22/09/2019 #include <LiquidCrystal.h> // Biblioteca LiquidCrystal #include <IRremote.h> // Biblioteca IRemote int PINO_REC = 10; // Declara pino conectado ao Receptor IR IRrecv irrecv(PINO_REC); // Criando instância de objeto IRrecv decode_results results; // declarando os results int Pino_Vermelho = 4; // Pino da cor vermelho do LED int Pino_Verde = 5; // Pino da cor verde do LED int Pino_Azul = 6; // Pino da cor azul do LED // Inicializa instancia de classe do LiquidCrystal LiquidCrystal lcd(A0,A1,A2,A3,A4,A5); void setup() { Serial.begin(9600); Serial.println("Aperte uma tecla"); irrecv.enableIRIn(); // Inicializa a recepção de códigos pinMode(Pino_Vermelho, OUTPUT); pinMode(Pino_Azul, OUTPUT); pinMode(Pino_Verde, OUTPUT); lcd.begin(2,16); ligaled(0,0,0,"Aperte uma tecla"); } void loop() { // --- Se alguma tecla foi apertada imprime o código Hexadecimal --- // results.value = 0; if (irrecv.decode(&results)) { Serial.print(" > Apertou: "); Serial.print(results.value, HEX); // imprime o HEX Code irrecv.resume(); // reinicializa o receptor } // --- Se alguma tecla for apertada testa o código Hexadecimal --- // switch (results.value) { case 0xFD30CF: Serial.print(" > Ligou Led Branco"); Serial.println(""); ligaled(255,255,255,"Ligou Led"); break; case 0xFD08F7: Serial.print(" > Ligou Led Vermelho"); Serial.println(""); ligaled(255, 0, 0,"Cor vermelha"); break; case 0xFD8877: Serial.print(" > Ligou Led Verde"); Serial.println(""); ligaled(0, 255, 0,"Cor verde"); break; case 0xFD48B7: Serial.print(" > Ligou Led Azul"); Serial.println(""); ligaled(0, 0, 255,"Cor azul"); break; case 0xFD28D7: Serial.print(" > Desligou Led"); Serial.println(""); ligaled(0, 0, 0,"Desligou Led"); break; case 0: // --- Tecla não digitada break; default: Serial.print(" > Tecla invalida"); Serial.println(""); lcd.clear(); lcd.setCursor(0,0); lcd.print("0 1 2 3 4"); lcd.setCursor(0,1); lcd.print("Tecla errada"); delay(400); break; } delay(100); } // --- Função que liga ou desliga os Leds --- // void ligaled(int r, int g, int b, String mensagem) { analogWrite(Pino_Vermelho, r); analogWrite(Pino_Verde, g); analogWrite(Pino_Azul, b); lcd.clear(); lcd.setCursor(0,0); lcd.print("0 1 2 3 4"); lcd.setCursor(0,1); lcd.print(mensagem); } |
[Voltar] |
[Avançar] |