import MAX7219
from machine import Pin, SPI
import time

spi = SPI(1, baudrate=10000000, polarity=1, phase=0, sck=Pin(4), mosi=Pin(2))
ss = Pin(5, Pin.OUT)
display = MAX7219.Matrix8x8(spi, ss, 4)

btn_pausa = Pin(14, Pin.IN, Pin.PULL_UP)  # Botón de detener
btn_reinicio = Pin(12, Pin.IN, Pin.PULL_UP)  # Botón de reiniciar
btn_hola = Pin(13, Pin.IN, Pin.PULL_UP)  # Botón para imprimir "Hola"

a = 0
conteo = True

def display_hola():
    display.fill(0)
    display.text("Hola", 0, 0, 1)
    display.show()

while True:
    if btn_pausa.value() == 0:  # Si el botón de detener está presionado
        conteo = False
    elif btn_reinicio.value() == 0:  # Si el botón de reiniciar está presionado
        a = 0
        conteo = True
    elif btn_hola.value() == 0:  # Si el botón de "Hola" está presionado
        display_hola()
        time.sleep(8)  # Breve pausa para mostrar la palabra "Hola" durante 2 segundos

    if conteo:
        print(a)
        a += 1
        time.sleep(0.0000001)
        display.brightness(0)
        display.fill(0)
        display.text(str(a), 0, 0, 2)
        display.show()