# Microprocesadores - ISC
from machine import Pin
from utime import sleep
# Definición de pines para segmentos A-G y DP
pins = [
Pin(2, Pin.OUT), # A
Pin(3, Pin.OUT), # B
Pin(4, Pin.OUT), # C
Pin(5, Pin.OUT), # D
Pin(6, Pin.OUT), # E
Pin(8, Pin.OUT), # F
Pin(7, Pin.OUT), # G
Pin(0, Pin.OUT) # DP
]
# Patrones para display de ánodo común (0 = encendido, 1 = apagado)
# Orden: del 0 al 9
digits = [
[0,0,0,0,0,0,1,1], # 0
[1,0,0,1,1,1,1,1], # 1
[0,0,1,0,0,1,0,1], # 2
[0,0,0,0,1,1,0,1], # 3
[1,0,0,1,1,0,0,1], # 4
[0,1,0,0,1,0,0,1], # 5
[0,1,0,0,0,0,0,1], # 6
[0,0,0,1,1,1,1,1], # 7
[0,0,0,0,0,0,0,1], # 8
[0,0,0,1,1,0,0,1] # 9
]
def clear_display():
"""Apaga todos los segmentos"""
for pin in pins:
pin.value(1)
clear_display()
while True:
# Recorremos la lista en orden normal (0 -> 9)
for digit in digits:
for j in range(len(pins)):
pins[j].value(digit[j])
sleep(1) # Espera 1 segundo entre números