terça-feira, 12 de novembro de 2019

Código Semáforo

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