from machine import Pin
from time import sleep
# 7-segment display layout
# A
# ---
# F | G | B
# ---
# E | | C
# ---
# D
display_unidade = [
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(7, Pin.OUT), # F
Pin(8, Pin.OUT) # G
]
display_dezena = [
Pin(16, Pin.OUT), # A
Pin(17, Pin.OUT), # B
Pin(18, Pin.OUT), # C
Pin(19, Pin.OUT), # D
Pin(20, Pin.OUT), # E
Pin(21, Pin.OUT), # F
Pin(22, Pin.OUT) # G
]
# Common anode 7-segment display digit patterns
digitos = [
[0, 0, 0, 0, 0, 0, 1], # 0
[1, 0, 0, 1, 1, 1, 1], # 1
[0, 0, 1, 0, 0, 1, 0], # 2
[0, 0, 0, 0, 1, 1, 0], # 3
[1, 0, 0, 1, 1, 0, 0], # 4
[0, 1, 0, 0, 1, 0, 0], # 5
[0, 1, 0, 0, 0, 0, 0], # 6
[0, 0, 0, 1, 1, 1, 1], # 7
[0, 0, 0, 0, 0, 0, 0], # 8
[0, 0, 0, 0, 1, 0, 0] # 9
]
while True:
for numero in range(100):
unidade = numero%10
dezena = numero//10
for led in range(7):
display_unidade[led].value(digitos[unidade][led])
for led in range(7):
display_dezena[led].value(digitos[dezena][led])
sleep(0.5)