Мы с соцсетях

Кнопка

Кнопка
Тип статьи:
Авторская

В примерах Arduino IDE есть скетч Button, в котором показано как управлять на нажатие кнопки. Программа построена таким образом, что светодиод включен при нажатии кнопки и выключен, когда отпущена.

Это не всегда удобно. Модернизируем код, чтобы нажатием тактировалось состояние, т.е. один такт: нажали — отпустили  кнопку.

Собираем схему согласно рисунка

Программа будет выглядеть следующим образом:

const int buttonPin = 2;     
const int ledPin =  13;      
int buttonState = 0;        
int State = 0; 
int State_LED = 0; 
void setup() {
pinMode(ledPin, OUTPUT);
pinMode(buttonPin, INPUT);
}
void loop() {
buttonState = digitalRead(buttonPin);
if (buttonState==HIGH){
if (State==0){
if (State_LED == 0) {
digitalWrite(ledPin, HIGH); 
} 
else                 {
digitalWrite(ledPin, LOW); 
}
State_LED=!State_LED;
State=1;
}
}
else {if (State==1)
{State=0;}
}
}