from machine import Pin
from utime import sleep

# 7-segment display layout
#       A
#      ---
#  F |  G  | B
#      ---
#  E |     | C
#      ---
#       D

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
]

# Padrões dos dígitos de 0 a 9 (decimal) para o display de 7 segmentos
digits = [
    [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, 1, 1, 0, 0], # 9
]

def reset():
    """Desliga todos os segmentos do display de 7 segmentos."""
    for pin in pins:
        pin.value(1)

reset()

def show_digit(digit_index):
    """Mostra um dígito no display de 7 segmentos."""
    for i in range(len(pins)):
        pins[i].value(digits[digit_index][i])

# Valor inicial da contagem regressiva (9)
start_value = 9

while True:
    for i in range(start_value, -1, -1):  # Contagem regressiva de 9 até 0
        show_digit(i)
        sleep(1)  # Pausa de 1 segundo entre cada número
    reset()  # Apaga o display após a contagem terminar
    sleep(2)  # Pausa de 2 segundos antes de reiniciar a contagem
BOOTSELLED1239USBRaspberryPiPico©2020RP2-8020/21P64M15.00TTT