mirror of
https://github.com/esp8266/Arduino.git
synced 2025-06-17 22:23:10 +03:00
Adding Tom's new examples.
This commit is contained in:
56
build/shared/examples/Display/barGraph/applet/barGraph.cpp
Normal file
56
build/shared/examples/Display/barGraph/applet/barGraph.cpp
Normal file
@ -0,0 +1,56 @@
|
||||
|
||||
|
||||
|
||||
// these constants won't change:
|
||||
#include "WProgram.h"
|
||||
void setup();
|
||||
void loop();
|
||||
const int analogPin = 0; // the pin that the potentiometer is attached to
|
||||
const int ledCount = 10; // the number of LEDs in the bar graph
|
||||
|
||||
int ledPins[] = {
|
||||
2, 3, 4, 5, 6, 7,8,9,10,11 }; // an array of pin numbers to which LEDs are attached
|
||||
|
||||
|
||||
void setup() {
|
||||
// loop over the pin array and set them all to output:
|
||||
for (int thisLed = 0; thisLed < ledCount; thisLed++) {
|
||||
pinMode(ledPins[thisLed], OUTPUT);
|
||||
}
|
||||
}
|
||||
|
||||
void loop() {
|
||||
// read the potentiometer:
|
||||
int sensorReading = analogRead(analogPin);
|
||||
// map the result to a range from 0 to the number of LEDs:
|
||||
int ledLevel = map(sensorReading, 0, 1023, 0, ledCount);
|
||||
|
||||
// loop over the LED array:
|
||||
for (int thisLed = 0; thisLed < ledCount; thisLed++) {
|
||||
// if the array element's index is less than ledLevel,
|
||||
// turn the pin for this element on:
|
||||
if (thisLed < ledLevel) {
|
||||
digitalWrite(ledPins[thisLed], HIGH);
|
||||
}
|
||||
// turn off all pins higher than the ledLevel:
|
||||
else {
|
||||
digitalWrite(ledPins[thisLed], LOW);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
int main(void)
|
||||
{
|
||||
init();
|
||||
|
||||
setup();
|
||||
|
||||
for (;;)
|
||||
loop();
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
Reference in New Issue
Block a user