int motorE = 6; // PWM
int in1 = 7;
int motorD = 9; // PWM
int in4 = 8;
int farol = 2;
int lanterna = 4;
int buzina = 12;
int luz_freio = 11;
int LDR = A3;
char letra;
boolean status1 = false;
boolean status2 = false;
boolean status3 = false;
void setup() {
Serial.begin(9600);
pinMode(motorE, OUTPUT);
pinMode(motorD, OUTPUT);
pinMode(in1, OUTPUT);
pinMode(in4, OUTPUT);
pinMode(farol, OUTPUT);
pinMode(lanterna, OUTPUT);
pinMode(buzina, OUTPUT);
pinMode(luz_freio, OUTPUT);
}
void loop() {
int val = analogRead(LDR);
Serial.print("Valor do sensor = ");
Serial.println(val);
if (val>=155){
analogWrite(motorE, 0); // Para tudo
digitalWrite(in1, LOW);
analogWrite(motorD, 0);
digitalWrite(in4, LOW);
digitalWrite(luz_freio, LOW);
digitalWrite(farol, LOW);
digitalWrite(lanterna, LOW);
digitalWrite(buzina, HIGH);
delay(2000);
digitalWrite(buzina, LOW);
}
char letra = Serial.read();
if (letra == 'a'){ // Move pra frente
analogWrite(motorE, 255);
digitalWrite(in1, LOW);
analogWrite(motorD, 255);
digitalWrite(in4, LOW);
digitalWrite(luz_freio, LOW);
delay(500);
}
else if(letra == 'b'){ // Move pra trás
analogWrite(motorE, 0);
digitalWrite(in1, HIGH);
analogWrite(motorD, 0);
digitalWrite(in4, HIGH);
digitalWrite(luz_freio, LOW);
delay(500);
}
if (letra == 'c'){ // Move pra direita
analogWrite(motorE, 255);
digitalWrite(in1, LOW);
analogWrite(motorD, 0);
digitalWrite(in4, HIGH);
digitalWrite(luz_freio, LOW);
delay(500);
}
if (letra == 'd'){ // Move pra esquerda
analogWrite(motorE, 0);
digitalWrite(in1, HIGH);
analogWrite(motorD, 255);
digitalWrite(in4, LOW);
digitalWrite(luz_freio, LOW);
delay(500);
}
if (letra == 'h'){ // Freio
analogWrite(motorE, 0);
digitalWrite(in1, LOW);
analogWrite(motorD, 0);
digitalWrite(in4, LOW);
digitalWrite(luz_freio, HIGH);
delay(500);
}
if (letra == 'e'){
if(status1){
digitalWrite(farol, LOW);
status1 = false;
}else{
digitalWrite(farol, HIGH);
status1 = true;
delay(500);
}
}
if (letra == 'f'){
if(status2){
digitalWrite(lanterna, LOW);
status2 = false;
}else{
digitalWrite(lanterna, HIGH);
status2 = true;
delay(500);
}
}
if (letra == 'g'){
if(status3){
digitalWrite(buzina, LOW);
status3 = false;
}else{
digitalWrite(buzina, HIGH);
status3 = true;
delay(500);
}
}
}