Освой Arduino играючи
/* Моя кошка замечательно разбирается в программировании. Стоит мне объяснить проблему ей - и все становится ясно. */
John Robbins, Debugging Applications, Microsoft Press, 2000
Для примера понадобятся две кнопки и светодиод. С помощью одной кнопки будем увеличивать яркость, а вторая кнопка будет уменьшать яркость.
const int BUTTON1 = 2;
const int BUTTON2 = 3;
const int LED = 11;
int brightness = 0;
void setup() {
pinMode(BUTTON1, INPUT_PULLUP);
pinMode(BUTTON2, INPUT_PULLUP);
digitalWrite(BUTTON1, HIGH);
digitalWrite(BUTTON2, HIGH);
Serial.begin(9600);
}
void loop() {
if (!digitalRead(BUTTON1) && digitalRead(BUTTON2))
{
if (brightness < 255) brightness++;
analogWrite(LED, brightness);
Serial.println(brightness);
delay(10);
}
else if (digitalRead(BUTTON1) && !digitalRead(BUTTON2))
{
if (brightness != 0) brightness--;
analogWrite(LED, brightness);
Serial.println(brightness);
delay(10);
}
}