from machine import Pin
from time import sleep
#=======================#
def giro(x):
A1.value(int(x[0]))
B1.value(int(x[1]))
A2.value(int(x[2]))
B2.value(int(x[3]))
#=======================#
#================inicio de interrupciones ====================================#
def isrA(pin):
global cnt
if (canal_a.value==0):
cnt =+ 1
if cnt>3:
cnt=0
def isrB(pin):
if (canal_b.value==0):
cnt =- 1
if cnt<0:
cnt=0
#=============================================================================#
canal_a= Pin(14,Pin.IN)
canal_a.irq(trigger=Pin.IRQ_FALLING,handler=isrA)
canal_b= Pin(12,Pin.IN)
canal_b.irq(trigger=Pin.IRQ_FALLING,handler=isrB)
A1=Pin(0,Pin.OUT)
A2=Pin(2,Pin.OUT)
B1=Pin(1,Pin.OUT)
B2=Pin(15,Pin.OUT)
lista=["0011","0110","1100","1001"]
cnt=0
while(1):
giro(lista[cnt])