Hi,
I'm trying to scroll a text on a 7 segment display. The display library doesn't have a scroll option so I made one up via a repetitive code. Because said code looks too awkward, I'd like to shorten it using a loop, but I just cannot get it right.
I appreciate some hints.
TIA
I'm trying to scroll a text on a 7 segment display. The display library doesn't have a scroll option so I made one up via a repetitive code. Because said code looks too awkward, I'd like to shorten it using a loop, but I just cannot get it right.
I appreciate some hints.
TIA
import time from Adafruit_LED_Backpack import SevenSegment brightness = 10 # init display. Must be called once before using the display. seg = SevenSegment.SevenSegment(address=0x70) seg.begin() seg.set_brightness(brightness) btext = {' ': 0x00, '-': 0x40, 'h': 0x76, 'a': 0x77, 'p': 0x73, 'y': 0x6E, 'b': 0x7c, 'i': 0x10, 'r': 0x50, 't': 0x78, 'd': 0x5E, 'n': 0x54} #content: space h a p p y space b i r t h d a y space d a n i arry = [0x00, 0x76, 0x77, 0x73, 0x73, 0x6E, 0x00, 0x7c, 0x10, 0x50, 0x78, 0x76, 0x5E, 0x77, 0x6E, 0x00, 0x5E, 0x77, 0x54, 0x10 ] #this works def scroll_msg_(): ''' displays happy birthday dani from btext''' seg.clear() seg.set_digit_raw(0, btext[' ']) seg.set_digit_raw(1, btext[' ']) seg.set_digit_raw(2, btext[' ']) seg.set_digit_raw(3, btext[' ']) seg.write_display() time.sleep(.3) seg.clear() seg.set_digit_raw(0, btext[' ']) seg.set_digit_raw(1, btext[' ']) seg.set_digit_raw(2, btext[' ']) seg.set_digit_raw(3, btext['h']) seg.write_display() time.sleep(.3) seg.clear() seg.set_digit_raw(0, btext[' ']) seg.set_digit_raw(1, btext[' ']) seg.set_digit_raw(2, btext['h']) seg.set_digit_raw(3, btext['a']) seg.write_display() time.sleep(.3) seg.clear() seg.set_digit_raw(0, btext[' ']) seg.set_digit_raw(1, btext['h']) seg.set_digit_raw(2, btext['a']) seg.set_digit_raw(3, btext['p']) seg.write_display() time.sleep(.3) seg.clear() seg.set_digit_raw(0, btext['h']) seg.set_digit_raw(1, btext['a']) seg.set_digit_raw(2, btext['p']) seg.set_digit_raw(3, btext['p']) seg.write_display() time.sleep(.3) seg.clear() seg.set_digit_raw(0, btext['a']) seg.set_digit_raw(1, btext['p']) seg.set_digit_raw(2, btext['p']) seg.set_digit_raw(3, btext['y']) seg.write_display() time.sleep(.3) seg.clear() seg.set_digit_raw(0, btext['p']) seg.set_digit_raw(1, btext['p']) seg.set_digit_raw(2, btext['y']) seg.set_digit_raw(3, btext[' ']) seg.write_display() time.sleep(.3) seg.clear() seg.set_digit_raw(0, btext['p']) seg.set_digit_raw(1, btext['y']) seg.set_digit_raw(2, btext[' ']) seg.set_digit_raw(3, btext['b']) seg.write_display() time.sleep(.3) seg.clear() seg.set_digit_raw(0, btext['y']) seg.set_digit_raw(1, btext[' ']) seg.set_digit_raw(2, btext['b']) seg.set_digit_raw(3, btext['i']) seg.write_display() time.sleep(.3) seg.clear() seg.set_digit_raw(0, btext[' ']) seg.set_digit_raw(1, btext['b']) seg.set_digit_raw(2, btext['i']) seg.set_digit_raw(3, btext['r']) seg.write_display() time.sleep(.3) seg.clear() seg.set_digit_raw(0, btext['b']) seg.set_digit_raw(1, btext['i']) seg.set_digit_raw(2, btext['r']) seg.set_digit_raw(3, btext['t']) seg.write_display() time.sleep(.3) seg.clear() seg.set_digit_raw(0, btext['i']) seg.set_digit_raw(1, btext['r']) seg.set_digit_raw(2, btext['t']) seg.set_digit_raw(3, btext['h']) seg.write_display() time.sleep(.3) seg.clear() seg.set_digit_raw(0, btext['r']) seg.set_digit_raw(1, btext['t']) seg.set_digit_raw(2, btext['h']) seg.set_digit_raw(3, btext['d']) seg.write_display() time.sleep(.3) seg.clear() seg.set_digit_raw(0, btext['t']) seg.set_digit_raw(1, btext['h']) seg.set_digit_raw(2, btext['d']) seg.set_digit_raw(3, btext['a']) seg.write_display() time.sleep(.3) seg.clear() seg.set_digit_raw(0, btext['h']) seg.set_digit_raw(1, btext['d']) seg.set_digit_raw(2, btext['a']) seg.set_digit_raw(3, btext['y']) seg.write_display() time.sleep(.3) seg.clear() seg.set_digit_raw(0, btext['d']) seg.set_digit_raw(1, btext['a']) seg.set_digit_raw(2, btext['y']) seg.set_digit_raw(3, btext[' ']) seg.write_display() time.sleep(.3) seg.clear() seg.set_digit_raw(0, btext['a']) seg.set_digit_raw(1, btext['y']) seg.set_digit_raw(2, btext[' ']) seg.set_digit_raw(3, btext['d']) seg.write_display() time.sleep(.3) seg.clear() seg.set_digit_raw(0, btext['y']) seg.set_digit_raw(1, btext[' ']) seg.set_digit_raw(2, btext['d']) seg.set_digit_raw(3, btext['a']) seg.write_display() time.sleep(.3) seg.clear() seg.set_digit_raw(0, btext[' ']) seg.set_digit_raw(1, btext['d']) seg.set_digit_raw(2, btext['a']) seg.set_digit_raw(3, btext['n']) seg.write_display() time.sleep(.3) seg.clear() seg.set_digit_raw(0, btext['d']) seg.set_digit_raw(1, btext['a']) seg.set_digit_raw(2, btext['n']) seg.set_digit_raw(3, btext['i']) seg.write_display() time.sleep(.5) seg.clear() def scroll_msg(): ''' displays happy birthday dani from array''' seg.clear() for i in range(4): for t in range(len(arry)): seg.set_digit_raw(1, arry[t]) seg.write_display() time.sleep(.5) seg.clear() def main(): scroll_msg() time.sleep(2) if __name__ == '__main__': while(True): main()