Подключение шагового двигателя к микроконтроллеру ESP8266 на языке microPython.

В данном уроке мы подключим шаговый двигатель к плате ESP8266  используя самодельный драйвер (Вы можете использовать любой, какой есть у Вас в наличии): Данный драйвер удобный тем, что на этапе изучения можно визуально наблюдать з входными импульсами которые приходят на вход драйвера, а так же видеть реакцию двигателя на данные импульсы. Для регулировки скорости работы двигателя, мы подключим реостат, при вращении которого у нас будет изменяться скорость вращения двигателя. В данном случаи реостат можно будет использовать как регулятор оборотов, а так же данный подход можно использовать как датчик, для примера у Вас крутиться неких механизм закрывая некую шторку, к шторке присоединён реостат, когда шторка максимально открыта, у нас скорость максимальная и шторка начинает быстро закрываться, при увеличении закрытия шторки, скорость падает обеспечивая тем самым плавное закрытие данной шторки. Наш драйвер подключим следующим образом:
1 вход — GPIO 5 (D1)
2 вход -GPIO 4 (D2)
3 вход — GPIO 0 (D3)
4 вход — GPIO 2 (D4)
5вход — GND
Регулировочный реостат подключим к ножке A0.
Программный код регулирования частоты вращения шаговым двигателем:
from machine import Pin, ADC
from time import sleep
pin1 =Pin(5, Pin.OUT) #D1
pin2 = Pin(4, Pin.OUT) #D2
pin3 = Pin(0, Pin.OUT) #D3
pin4 = Pin(2, Pin.OUT) #D4
pin1.off()
pin2.off()
pin3.off()
pin4.off()

adc = ADC(0)

def step (delate):
pin1.on()
pin2.on()
pin3.off()
pin4.off()
sleep(delate)
pin1.off()
pin2.on()
pin3.on()
pin4.off()
sleep(delate)
pin1.off()
pin2.off()
pin3.on()
pin4.on()
sleep(delate)
pin1.on()
pin2.off()
pin3.off()
pin4.on()
sleep(delate)

while True:
a = adc.read()
a = a * 1/(1024*10)
if a <= 0.02:
a = 0.02
step(a)