Я предлагаю вам сохранить состояние светодиодов в «рамке», структурированной как ваш letter_a
. Это позволит вам легко изменить его и отобразить по своему усмотрению.
После этого нужно просто редактировать кадр каждый раз, когда у вас есть движение. Вы могли бы сделать что-то вроде этого:
def nextFrame(current_frame, queue):
for row in range(0, len(current_frame)):
new_row = current_frame[row][1:] + queue[row][0]
current_frame[row] = new_row
queue[row] = queue[row][1:]
return current_frame, queue
который вы могли бы использовать что-то вроде этого:
letter_a = ['00111100', '01000010', '01000010', '01111110', '01000010', '01000010', '01000010', '01000010']
current_frame = ['10000001', '01000010', '00100100', '00011000', '00011000', '00100100', '01000010', '10000001']
queue = ['00111100', '01000010', '01000010', '01111110', '01000010', '01000010', '01000010', '01000010']
while len(queue[0]):
display(current_frame)
current_frame, queue = nextFrame(current_frame, queue)