Arduino, Internet das Coisas e Computação vestível |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Você está em »
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
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] |