Рассматриваются примеры программ управления GPIO микроконтроллера на языке MicroPython.
MicroPython — реализация языка Python, написанна на Си и предназначенна для выполнения на микроконтроллерах.
Микроконтроллер (англ. Micro Controller Unit, MCU) — микросхема, предназначенная для управления электронными устройствами. По своей сути, микроконтроллер — это однокристальный компьютер.
Микроконтроллер управляет внешними устройствами и получает данные из внешнего мира через свои GPIO.
GPIO — это интерфейс ввода/вывода общего назначения (англ. general-purpose input/output). GPIO, обычно, — это универсальный интерфейс и конфигурируется для определённой роли программно.
В микроконтроллерах GPIO связаны с определёнными ножами корпуса микроконтроллера. Ножки микроконтроллеров, так же, называют выводами или Pin-ами.
В следующем примере программы на языке MicroPython мы управляем светодиодом, который обычно устанавливается на платах разработки с микроконтроллерами ESP. Этот светодиод, обычно, припаян к GPIO2 микроконтроллера и шине питания + 3,3V через токо-ограничительный резистор.
import machine
import time
pin = machine.Pin(2, machine.Pin.OUT)
while True:
pin.off()
time.sleep_ms(100)
pin.on()
time.sleep_ms(900)
Лист. 1. Программа Blink.
Рис. 1. Функциональное назначение выводов на платах разработки с микроконтроллерами ESP
Рис. 2. Принципиальная электрическая схема.
import machine
import time
gpio = [16, 5, 4, 0, 2, 14, 12, 13]
pin = [machine.Pin(i, machine.Pin.OUT) for i in gpio]
while True:
for i in range(8):
pin[i].off()
time.sleep_ms(100)
pin[i].on()
Лист. 2. Бегущий огонь.