from machine import Pin
import time
# Definir los pines del display de 7 segmentos
seg_A = Pin(0, Pin.OUT)
seg_B = Pin(1, Pin.OUT)
seg_C = Pin(2, Pin.OUT)
seg_D = Pin(3, Pin.OUT)
seg_E = Pin(4, Pin.OUT)
seg_F = Pin(5, Pin.OUT)
seg_G = Pin(6, Pin.OUT)
# Mapeo de los números en segmentos (Cátodo común)
# Cada número se representa como un valor binario de 7 bits, donde 1 enciende un segmento
# Ejemplo: 0 = 0b1111110 (A encendido, B encendido, ..., G apagado)
numbers = {
0: 0b1111110, # 0
1: 0b0110000, # 1
2: 0b1101101, # 2
3: 0b1111001, # 3
4: 0b0110011, # 4
5: 0b1011011, # 5
6: 0b1011111, # 6
7: 0b1110000, # 7
8: 0b1111111, # 8
9: 0b1111011 # 9
}
# Función para mostrar un número en el display
def display_number(number):
# Asegurarse de que el número está entre 0 y 9
if number < 0 or number > 9:
return
# Obtener la configuración de los segmentos para el número
segments = numbers[number]
# Encender los segmentos correspondientes
seg_A.value((segments >> 6) & 1)
seg_B.value((segments >> 5) & 1)
seg_C.value((segments >> 4) & 1)
seg_D.value((segments >> 3) & 1)
seg_E.value((segments >> 2) & 1)
seg_F.value((segments >> 1) & 1)
seg_G.value(segments & 1)
# Mostrar números del 0 al 9 con un retraso de 1 segundo entre cada uno
while True:
for i in range(10):
display_number(i)
time.sleep(1)
Loading
pi-pico-w
pi-pico-w