terça-feira, 20 de abril de 2021

EX38 - Potenciômetro e LED's com shield multi funções e Arduino Uno


 Este projeto também vai usar os dois leds, mas controlados por um potenciômetro que está ligado na porta analógica

 
A0 do Arduino. Os leds piscam alternadamente e quanto mais você girar o potenciômetro para a direita, mais lentamente eles vão piscar.

//Programa: Shield Arduino Multifuncoes
//Objetivo: Potenciometro com leds
//Autor: Prof. Sinésio Raimundo Gomes
//Definicao dos pinos
#define Pino_Led_Azul 13
#define Pino_Led_Vermelho 12
#define Pino_Pot A0
//Armazena valor lido do potenciometro
int valor_pot;
void setup()
{
//Pinos led e buzzer como saida
pinMode(Pino_Led_Azul , OUTPUT);
pinMode(Pino_Led_Vermelho , OUTPUT);
//Pino potenciometro como entrada
pinMode(Pino_Pot, INPUT);
}
void loop()
{
//Le o valor do potenciometro
valor_pot = analogRead(Pino_Pot);
valor_pot = map(valor_pot, 0, 1024, 100, 500);
//Pisca o led de acordo com o valor lido
digitalWrite(Pino_Led_Azul, HIGH);
digitalWrite(Pino_Led_Vermelho, LOW);
delay(valor_pot);
digitalWrite(Pino_Led_Azul, LOW);
digitalWrite(Pino_Led_Vermelho, HIGH);
delay(valor_pot);
}

Este programa utiliza o comando MAP (linha 26), que “converte” o valor lido da porta analógica A0, entre 0 e 1024, em um valor entre 100 e 500, que é o valor que será usado para determinar o tempo no comando DELAY, que os leds ficarão acesos. Lembrando que esse tempo é em milissegundos (ms).

© Direitos de autor. 2020: Gomes; Sinésio Raimundo. Última atualização: 14/06/2023 

Nenhum comentário:

Postar um comentário