В среде разработки напишите код, который считывает состояние входа. Используйте функцию digitalRead() внутри void loop(). Если уровень сигнала меняется с HIGH на LOW, загорится светодиод, подключенный к другому выходу.
Проверьте схему: нажмите на механизм – должен появиться отклик. Если реакции нет, убедитесь, что проводка не повреждена, а в программе указан правильный пин. Для точной работы добавьте обработку дребезга контактов через delay(50) или библиотеку Bounce2.
Сборка схемы с тактовым переключателем
Для работы потребуются:
- Микроконтроллер (например, Uno или Nano).
- Тактовый переключатель (нормально разомкнутый).
- Резистор 10 кОм.
- Соединительные провода.
Порядок действий:
- Подсоедините один контакт переключателя к цифровому пину (например, D2).
- Второй контакт соедините с землей (GND).
- Между пином D2 и +5V установите подтягивающий резистор.
Пример кода для считывания состояния:
void setup() {
pinMode(2, INPUT_PULLUP);
Serial.begin(9600);
}
void loop() {
int state = digitalRead(2);
Serial.println(state);
delay(100);
}
Если переключатель нажат, на мониторе порта появится 0, в противном случае – 1.
Необходимые компоненты для работы с тактовым элементом
Микроконтроллерная плата (например, Uno, Nano или Mega) с цифровыми входами.
Резистор номиналом 10 кОм для подтяжки сигнала к земле.
Монтажные провода типа «папа-папа» или «папа-мама» в зависимости от разъёмов.
Макетная плата для временного монтажа схемы без пайки.
Источник питания 5В (может использоваться USB-порт компьютера или внешний блок).
Как собрать схему с тактовым переключателем и микроконтроллером
Для сборки потребуется: тактовый переключатель, резистор 10 кОм, макетная плата, провода типа «папа-папа» и плата на базе ATmega.
Схема с подтягивающим резистором
1. Подсоедините один контакт переключателя к цифровому входу (например, D2).
2. Второй контакт соедините с землей (GND).
3. Между входом D2 и +5V установите резистор 10 кОм – это предотвратит «плавание» сигнала.
Важно: без резистора возможны ложные срабатывания из-за наводок.
Проверка в коде
Используйте стандартный скетч для чтения цифрового входа:
void setup() {
pinMode(2, INPUT);
Serial.begin(9600);
}
void loop() {
Serial.println(digitalRead(2));
delay(100);
}
При нажатии в мониторе порта должны отображаться изменения с 1 на 0.