Olá turma segue o código do Semáforo.
Façam as alterações que acharem necessário:
/*
* Semáforo - Turma de Robótica
* Módulos Relês são acionado com nível LOW (0).
*/
//portas para os leds
int ledVermelho=6; //fio laranja
int ledVerde=5; //verde
int ledAmarelo=4; //Amarelo5
int pinoPOT = A0; //PINO ANALÓGICO usado pelo Potenciômetro
int leituraA0; //VARIÁVEL QUE ARMAZENA O valor lido na porta analogica
int tmp; // valor para o tempo de mudança dos leds
void setup ()
{
pinMode(ledVerde,OUTPUT);//define pinos como saida
pinMode(ledVermelho,OUTPUT);
pinMode(ledAmarelo,OUTPUT);
//inicializa com rele desligados
digitalWrite(ledVermelho, HIGH);
digitalWrite(ledAmarelo, HIGH);
digitalWrite(ledVerde, HIGH);
delay(50);
}
void loop()
{
leituraA0= analogRead(pinoPOT);//analogRead(pinPOT);
tmp= map(leituraA0, 0, 1023, 2000, 8000); //EXECUTA A FUNÇÃO "map" DE ACORDO COM OS PARÂMETROS PASSADOS
mudar(tmp);
}
void mudar(int v){
digitalWrite(ledVermelho, LOW); // sinal 0 => aciona rele
delay(v); // waits for a second
digitalWrite(ledVermelho, HIGH); // sinal 1 => desliga rele
digitalWrite(ledAmarelo, LOW); // sinal 0 => aciona rele
delay(v/2);
digitalWrite(ledAmarelo, HIGH); // sinal 1 => desliga rele
digitalWrite(ledVerde, LOW); // sinal 0 => aciona rele
delay(v);
digitalWrite(ledVerde, HIGH); // sinal 1 => desliga rele
}
Nenhum comentário:
Postar um comentário