Gráfico de barras com potenciômetro
Parte da seção Saídas do Journey de Arduino da Coddy. Lição 18 de 24.
Uma fileira de LEDs pode mostrar um número como uma barra: quanto mais LEDs acesos, maior o número. Aqui, o número vem do botão giratório.
Primeiro, converta a leitura na quantidade de LEDs que devem acender, de 0 a 5:
int count = map(analogRead(A0), 0, 1023, 0, 5);Depois, percorra cada LED com um loop for e decida o que fazer com cada um. Os LEDs antes da posição count ficam acesos; os demais ficam apagados:
for (int i = 0; i < 5; i++) {
if (i < count) {
digitalWrite(ledPins[i], HIGH);
} else {
digitalWrite(ledPins[i], LOW);
}
}O else é importante: quando você gira o botão para baixo, é ele que apaga os LEDs que não fazem mais parte da barra.
Desafio
MédioO potenciômetro está em A0 e os LEDs estão em ledPins. Faça um gráfico de barras:
- converta a leitura em uma contagem de 0 a 5 com
map() - acenda essa quantidade de LEDs, começando pelo primeiro do array, e apague os outros
- aguarde 10 ms e faça isso novamente
Pressione Run e gire o potenciômetro; em seguida, clique em Check.
Experimente você mesmo
const int knobPin = A0;
int ledPins[] = {2, 3, 4, 5, 6};
void setup() {
for (int i = 0; i < 5; i++) {
pinMode(ledPins[i], OUTPUT);
}
}
void loop() {
// converta a leitura em uma contagem de 0 a 5
// acenda os primeiros LEDs de acordo com a contagem e apague os demais
}
Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Saídas
1Brilho
Reduza o brilho de um LED com PWMPinos PWM marcados com ~Aumente gradualmente o brilho de um LEDAumente e reduza o brilho gradualmenteDimmer com potenciômetro4Laços e Arrays
Repita com um laço forUm array de pinos de LEDPerseguidor de cinco LEDsGráfico de barras com potenciômetroContador binário com LEDsPratique por conta própria: Playground de Arduino