Начнем с алгоритма работы нашей программы!
1. Если нажать кнопку КН1 подключенную к порту D4, то на ножке микроконтроллера D4 появится минус источника питания и включится светодиод.
2. Иначе, светодиод выключен.
Перейдем к написанию программы и рисованию электрической схемы!
И так схема у нас есть, на ней обозначены микроконтроллер,ножки gnd и питания 3,3В, к порту D4 подключена кнопка КН1, вернемся к программе.
Практически к каждому материалу есть видеоролик на YouTube и RUTUBE каналах, теорию можно прочитать в статье, а как работает устройство в железе, посмотреть в видеоролике!
Светодиод у нас подключен к порту D2, настроим в программе ножки порта D2 на выход, допишем в программе led = machine.Pin(2, machine.Pin.OUT), так как кнопка у нас подключена к порту D4 настроим его ножку на вход knopka = machine.Pin(4, machine.Pin.IN), по алгоритму наш микроконтроллер должен понимать, что когда мы подали минус замкнув кнопку, для этого подтянем ножки порта D4 к +3,3в через внутренний резистор микроконтроллера командой machine.Pin.PULL_UP, можно использовать внешние подтягивающие резисторы, но об этом поговорим в другой раз когда будем бороться с дребезгом контактов. С настройкой портов закончили, далее чтобы наша программа работала добавим в программу модуль import machine, который содержит необходимые функции, для работы платы.
Вот такой получился код:
Запишем в наш бесконечный цикл while True, код опроса порта на котором подключена кнопка и включение, выключение светодиода:
Для опроса кнопки воспользуемся операторами if и else, строка if knopka() == 0:) означает, если ножка порта D4 равна минусу, то выполним код led.on(), иными словами включаем светодиод, в противном случае else, выключим led.off() светодиод!
Ничего сложного в опросе портов микроконтроллера нет, в этом примере показан самый простой опрос ножки порта микроконтроллера, в дальнейшем я расскажу другие варианты, можно сказать более правильные, также поговорим о таком понятии как дребезг контактов и как с ним бороться!
Исходный код программы Скачать архив
Понравился проект? Не забудь поделиться им с друзьями в соц. сетях.
А также подписаться на наш канал на YouTube и RUTUBE !
- СПАСИБО ЗА ПРОСМОТР.
- С уважением.
- Электроника и Робототехника!