Тактовая кнопка
Характеристики тактовой кнопки (Модуль KY-004)
Наибольшее напряжение 12 В;
Наибольший ток 50 мА;
Сопротивление при замыкании кнопки 50 мОм;
Сопротивление при размыкании кнопки 100 MегаОм;
Количество циклов замыкания/размыкания 100 тысяч;
Температура эксплуатации от -25℃ до 105℃;
Габариты 25x16x10 мм;
Подтягивающий резистор 10 кОм.
Схема подключения подтягивающего резистора к кнопки KY-004
Распиновка кнопки KY-004
Arduino — схема подключения кнопки и светодиода
Скетч для Arduino — при нажатии на кнопку светодиод перестает светиться
const int pin_led_digital = 5; const int pin_button_digital=6; int button=0; void setup () { Serial.begin(9600); pinMode(pin_led_digital, OUTPUT); pinMode(pin_button_digital, INPUT); } void loop () { int button=digitalRead(pin_button_digital); // при нажатии на кнопку светодиод перестает светиться if (button == HIGH) { digitalWrite(pin_led_digital, HIGH); } else { digitalWrite(pin_led_digital, LOW); } Serial.println("Состояние кнопки"); Serial.println(button); delay(400); }
Результат работы программы
Аналоговая кнопка
Схема подключения аналоговой кнопки и светодиода к Arduino
Скетч аналоговой кнопки для Arduino — при нажатии на кнопку светодиод перестает светиться
const int pin_led_digital = 5; const int pin_button_analog=A1; int button=0; void setup () { Serial.begin(9600); pinMode(pin_led_digital, OUTPUT); pinMode(pin_button_analog, INPUT); } void loop () { int button=digitalRead(pin_button_analog); // при включении светодиод мигает, при нажатие на кнопку // светодиод перестает светиться if (button == HIGH) { digitalWrite(pin_led_digital, HIGH); } else { digitalWrite(pin_led_digital, LOW); } Serial.println("Состояние кнопки"); Serial.println(button); }
Сенсорная кнопка
Сенсорная кнопка (touch sensor)
Схема подключения сенсорная кнопка и светодиода к Arduino
Скетч сенсорной кнопки (touch sensor) для Arduino — при нажатии на кнопку светодиод загорается
const int pin_led_digital = 5; const int pin_button_sensor_digital=6; int button_sensor=0; void setup () { Serial.begin(9600); pinMode(pin_led_digital, OUTPUT); pinMode(pin_button_sensor_digital, INPUT); } void loop () { int button_sensor=digitalRead(pin_button_sensor_digital); // при нажатии на сенсорную кнопку загорается светодиод if (button_sensor == HIGH) { digitalWrite(pin_led_digital, HIGH); } else { digitalWrite(pin_led_digital, LOW); } Serial.println("Состояние кнопки"); Serial.println(button_sensor); delay(400); }