O codigo funciona direito o problema e que tenho q falar 2 vezes , tipo verde
pra acender , tbem pro azul e amarelo , como tiro esse bug.
se estou certo esta armazanando coisa q nao deve.
me ajudem
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
int pinos[] = {7,8,13} ;
const char *cores[3]= {"AZUL","AMARELO","VERDE,"};//cores[0] = "AZUL"; cores[1] = "AMARELO"; cores[2] = "VERDE";
char estado = 'Ligado';
int tamArrays = sizeof(pinos)/2-1;
byte com = 0;
boolean inverte = 1;
boolean ligaDeslig = 0;
void setup() {
Serial.begin(9600);
lcd.begin(16,2);
for (int i = 0; i<=tamArrays; i++) {
pinMode(pinos[i],OUTPUT);
}
Serial.write(0xAA);
Serial.write(0x37); // modo compacto
delay(1000);
Serial.write(0xAA);
Serial.write(0x21); // importando grupo 1
analogWrite(6,100);
}
void loop() {
while (Serial.available()) {
com = Serial.read();
switch (com){
case 0x11 : // azul
acao(0);
break;
case 0x12 : //amarelo
acao(1);
break;
case 0x13 : //verde
acao(2);
break;
case 0x14 : // liga
ligDes(1);
break;
case 0x15 : //desliga
ligDes(2);
break;
}//if
}//loop
lcd.cursor();
}
int acao(int i) {
inverte = digitalRead(7);
if(inverte == 0) {
ligaDeslig=!ligaDeslig;
digitalWrite(pinos[i],ligaDeslig);
}
else
ligaDeslig=!ligaDeslig;
digitalWrite(pinos[i],ligaDeslig);
}
int ligDes(int i) {
if (i == 1) {
lcd.clear();
lcd.setCursor(0,0);
lcd.write("Todos Ligados");
for(int f = 0; f <=tamArrays; f++) {
digitalWrite(pinos[f],HIGH);
}
}
else if(i == 2) {
lcd.clear();
lcd.setCursor(0,0);
lcd.write("Todos Desligados");
for(int g = 0; g <=tamArrays; g++) {
digitalWrite(pinos[g],LOW);
}
}
}
char ligDes(char i) {
char *cores[] = {"AZUL LIGADO","AMARELO LIGADO","VERDE LIGADO"};
lcd.clear();
lcd.setCursor(0,0);
lcd.write(cores[i]);
}
desconsiderem a parte do lcd.
Tags:
As respostas para este tópico estão encerradas.
tenta mudar pra UpMode, acrescentando esse código no void setup.
Serial.write(0xAA);
Serial.write(0x53);
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por