Arduino ljus känsliga stapeldiagram (4 / 5 steg)
Steg 4: Här är koden
/*Bargraph skiss
Recept 7.5 från Arduino kokbok av Michael Margolis
Vänder på ett antal lysdioder proportion till ett värde av en analog sensor.
Sex lampor styrs men du kan ändra antalet lysdioder genom att ändra
värdet av NbrLEDs och lägga till stiften i arrayen ledPins
*/
CONST int NbrLEDs = 6;
CONST int ledPins [] = {13 12 11, 10.9, 8};
CONST int analogInPin = 0; / / Analog ingång pin ansluten till varierande resistor
const int vänta = 30,
Byta värden för följande två konstanter om katoder är anslutna till Gnd int sensorValue = 0; void loop() {
const boolean LED_ON = låg;
CONST boolean LED_OFF = hög;
int ledLevel = 0; sensor värde omvandlas till LED "barer"
void setup() {
för (int ledde = 0; ledde < NbrLEDs; ledde ++)
{
pinMode (ledPins [ledde], produktionen); / / göra alla LED stift utgångar
}
}
sensorValue = analogRead(analogInPin);
ledLevel = karta (sensorValue, 0, 700, 0, NbrLEDs), karta till antalet lysdioder
för (int ledde = 0; ledde < NbrLEDs; ledde ++)
{
om (ledde < ledLevel) {
digitalWrite (ledPins [ledde], LED_ON); / / slå på stift lägre än nivån
}
annat {
digitalWrite (ledPins [ledde], LED_OFF); / / stänga av stift högre än nivån för
}
}
}