import board
import digitalio
import time
# Configuración de pines del display (GP10 a GP16)
segment_pins = [
digitalio.DigitalInOut(board.GP10),
digitalio.DigitalInOut(board.GP11),
digitalio.DigitalInOut(board.GP12),
digitalio.DigitalInOut(board.GP13),
digitalio.DigitalInOut(board.GP14),
digitalio.DigitalInOut(board.GP15),
digitalio.DigitalInOut(board.GP16),
]
# Configurar como salida
for pin in segment_pins:
pin.direction = digitalio.Direction.OUTPUT
# Tabla para display de 7 segmentos (ánodo común)
bcd_to_7seg = [
[1,1,1,1,1,1,0], # 0
[0,1,1,0,0,0,0], # 1
[1,1,0,1,1,0,1], # 2
[1,1,1,1,0,0,1], # 3
[0,1,1,0,0,1,1], # 4
[1,0,1,1,0,1,1], # 5
[1,0,1,1,1,1,1], # 6
[1,1,1,0,0,0,0], # 7
[1,1,1,1,1,1,1], # 8
[1,1,1,1,0,1,1] # 9
]
# Función para actualizar el display
def update_display(number):
for i in range(7):
segment_pins[i].value = bcd_to_7seg[number][i]
# Inicializar contador
counter = 0
update_display(counter)
print("Contador de décadas iniciado")
# Bucle infinito
while True:
time.sleep(1)
counter = (counter + 1) % 10
update_display(counter)
print("Contador:", counter)