Const int buttonPin = 2; // номер входа, подключенный к кнопке
Download 7.54 Kb.
|
knopka
const int buttonPin = 2; // номер входа, подключенный к кнопке const int relayPin = 3; // номер выхода светодиода /* переменные */ boolean lastButten = LOW; // предыдущее состояние кнопки boolean currentButten = LOW; // текущее состояние кнопки boolean relayOn = false; // текущее состояние свтодиода void setup() // Функция setup() { // инициализируем пин, подключенный к реле, как выход pinMode(relayPin, OUTPUT); // инициализируем пин, подключенный к кнопке, как вход pinMode(buttonPin, INPUT); } boolean debvance (boolean last) //убираем дребизг { boolean current = digitalRead (buttonPin); // считываем данные с кнопки if (last != current) // Если текущее состояние отличететься от предыдущего { delay (5); // Ждем 5 милисек. current = digitalRead (buttonPin); // Присваеваем текущее состояние кнопки return current; } } void loop() // Функция loop { currentButten = debvance (lastButten); // Передаем функции дребезга значение по умолчанию LOW if (lastButten == LOW && currentButten == HIGH) // Проверяем отпускали мы кнопку или нет { relayOn = !relayOn; // инвертируем значение } lastButten = currentButten; // Переприсваеваем прошлое состояние кнопки digitalWrite(relayPin, relayOn); // Включаем или выключаем реле (смотря что пришло после инверсии) delay (2); // Ждем 2 милисек. } Download 7.54 Kb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling