from time import ticks_ms,sleep_ms
from machine import Pin,SPI
from actuadores import BTN_irq,SPI_7seg,buzzer
spi=SPI_7seg(0,18,19,17,22)
btn_inc=BTN_irq(5)
btn_dec=BTN_irq(6)
btn_reset=BTN_irq(10)
btn_on=BTN_irq(11)
b1=buzzer(4)
class turnero:
def __init__(self):
self.turno=0
def incremento(self):
if self.turno>=9999:
self.turno=0
else:
self.turno=self.turno+1
def decremento(self):
if self.turno<=0:
self.turno=0
else:
self.turno=self.turno-1
def clear(self):
self.turno=0
def numero(self):
turno_list=[int(d) for d in f"{self.turno:04d}"]
turno_digitos=[]
for dig in turno_list[::-1]:
turno_digitos.append(spi.digitos[dig])
return turno_digitos
turnero1=turnero()
status=False
while True:
sleep_ms(100)
if btn_inc.pressed():
turnero1.incremento()
b1.pip()
spi.write_list(turnero1.numero())
if btn_dec.pressed():
turnero1.decremento()
b1.pip(300,200)
spi.write_list(turnero1.numero())
if btn_reset.pressed():
turnero1.clear()
spi.write_list(turnero1.numero())
if btn_on.pressed():
if status:
status=False
spi.OFF()
print("apagando..")
else:
status=True
spi.ON()
spi.write_list(turnero1.numero())
print("prendiendo..")