import utime
import machine
import random
pinA = machine.Pin(10, machine.Pin.OUT)
pinB = machine.Pin(11, machine.Pin.OUT)
pinC = machine.Pin(12, machine.Pin.OUT)
pinD = machine.Pin(13, machine.Pin.OUT)
btnDado = machine.Pin(16, machine.Pin.IN, machine.Pin.PULL_DOWN)
numeroDado=0
arreglo = [
[pinA, pinB, pinC, pinD],
[pinB, pinA, pinC, pinD],
[pinB, pinC, pinA, pinD],
[pinC, pinB, pinA, pinD],
[pinC, pinD, pinA, pinB],
[pinD, pinC, pinA, pinB],
[pinA, pinC, pinB, pinD],
[pinC, pinA, pinB, pinD],
[pinB, pinD, pinA, pinC]
]
def encender(alto, bajo, entrada1, entrada2):
entrada1.init(machine.Pin.IN)
entrada2.init(machine.Pin.IN)
alto.init(machine.Pin.OUT)
bajo.init(machine.Pin.OUT)
alto.value(1)
bajo.value(0)
utime.sleep_ms(5)
def encendercara():
if numeroDado==1:
encender(arreglo[3][0],arreglo[3][1],arreglo[3][2], arreglo[3][3])
elif numeroDado==2:
encender(arreglo[0][0],arreglo[0][1],arreglo[0][2], arreglo[0][3])
encender(arreglo[8][0],arreglo[8][1],arreglo[8][2], arreglo[8][3])
elif numeroDado==3:
encender(arreglo[0][0],arreglo[0][1],arreglo[0][2], arreglo[0][3])
encender(arreglo[3][0],arreglo[3][1],arreglo[3][2], arreglo[3][3])
encender(arreglo[8][0],arreglo[8][1],arreglo[8][2], arreglo[8][3])
elif numeroDado==4:
encender(arreglo[0][0],arreglo[0][1],arreglo[0][2], arreglo[0][3])
encender(arreglo[4][0],arreglo[4][1],arreglo[4][2], arreglo[4][3])
encender(arreglo[6][0],arreglo[6][1],arreglo[6][2], arreglo[6][3])
encender(arreglo[8][0],arreglo[8][1],arreglo[8][2], arreglo[8][3])
elif numeroDado==5:
encender(arreglo[0][0],arreglo[0][1],arreglo[0][2], arreglo[0][3])
encender(arreglo[4][0],arreglo[4][1],arreglo[4][2], arreglo[4][3])
encender(arreglo[6][0],arreglo[6][1],arreglo[6][2], arreglo[6][3])
encender(arreglo[8][0],arreglo[8][1],arreglo[8][2], arreglo[8][3])
encender(arreglo[3][0],arreglo[3][1],arreglo[3][2], arreglo[3][3])
elif numeroDado==6:
encender(arreglo[0][0],arreglo[0][1],arreglo[0][2], arreglo[0][3])
encender(arreglo[2][0],arreglo[2][1],arreglo[2][2], arreglo[2][3])
encender(arreglo[4][0],arreglo[4][1],arreglo[4][2], arreglo[4][3])
encender(arreglo[6][0],arreglo[6][1],arreglo[6][2], arreglo[6][3])
encender(arreglo[7][0],arreglo[7][1],arreglo[7][2], arreglo[7][3])
encender(arreglo[8][0],arreglo[8][1],arreglo[8][2], arreglo[8][3])
def GenerarNumero(pin):
global numeroDado
numeroDado=random.randint(1,6)
print(numeroDado)
btnDado.irq(trigger=machine.Pin.IRQ_FALLING, handler=GenerarNumero)
while True:
encendercara()
utime.sleep_ms(10)