Рассматриваются примеры программ управления 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. Бегущий огонь.