import time
import board
import digitalio
segments = {
'a': digitalio.DigitalInOut(board.GP16),
'b': digitalio.DigitalInOut(board.GP17),
'c': digitalio.DigitalInOut(board.GP18),
'd': digitalio.DigitalInOut(board.GP19),
'e': digitalio.DigitalInOut(board.GP20),
'f': digitalio.DigitalInOut(board.GP21),
'g': digitalio.DigitalInOut(board.GP22),
}
for seg in segments.values():
seg.direction = digitalio.Direction.OUTPUT
digits = {
0: (1, 1, 1, 1, 1, 1, 0),
1: (0, 1, 1, 0, 0, 0, 0),
2: (1, 1, 0, 1, 1, 0, 1),
3: (1, 1, 1, 1, 0, 0, 1),
4: (0, 1, 1, 0, 0, 1, 1),
5: (1, 0, 1, 1, 0, 1, 1),
6: (1, 0, 1, 1, 1, 1, 1),
7: (1, 1, 1, 0, 0, 0, 0),
8: (1, 1, 1, 1, 1, 1, 1),
9: (1, 1, 1, 1, 0, 1, 1),
}
segment_keys = ['a', 'b', 'c', 'd', 'e', 'f', 'g']
def display_digit(num):
pattern = digits[num]
for i, seg in enumerate(segment_keys):
segments[seg].value = pattern[i]
while True:
for i in range(9, -1, -1):
print("Displaying:", i)
display_digit(i)
time.sleep(1)