Boas!
void loop() {
int sensorReading = analogRead(analogPin);
int ledLevel = map(sensorReading, 0, 1023, 0, ledCount);
for (int thisLed = 0; thisLed < ledCount; thisLed++)
if (thisLed < ledLevel) {
digitalWrite(ledPins[thisLed], HIGH);
}
else {
digitalWrite(ledPins[thisLed], LOW);
}
}
Hoje trago aqui mais um tutorial a utilizar uma "Bargraph" igual ao da imagem abaixo, este componente consiste num agulmerado de 10 leds, só que com um aspeto visual "mais limpo".
Bom fiquem então com o projeto:
Material necessário:
-1 Bargraph
-1 Arduino
-10 Resistencias de 220 Ohm
-1 Potenciómetro
-Fio
Esquema:
Código:
const int analogPin = A0;
const int ledCount = 10;
int ledPins[] = {
2, 3, 4, 5, 6, 7,8,9,10,11 };
const int ledCount = 10;
int ledPins[] = {
2, 3, 4, 5, 6, 7,8,9,10,11 };
void setup() {
for (int thisLed = 0; thisLed < ledCount; thisLed++) {
pinMode(ledPins[thisLed], OUTPUT);
}
}
for (int thisLed = 0; thisLed < ledCount; thisLed++) {
pinMode(ledPins[thisLed], OUTPUT);
}
}
void loop() {
int sensorReading = analogRead(analogPin);
int ledLevel = map(sensorReading, 0, 1023, 0, ledCount);
for (int thisLed = 0; thisLed < ledCount; thisLed++)
if (thisLed < ledLevel) {
digitalWrite(ledPins[thisLed], HIGH);
}
else {
digitalWrite(ledPins[thisLed], LOW);
}
}
Vídeo: