def test(): """Scrolling Marquee.""" try: # Implementation dependant pin and SPI configuration if implementation.name == 'circuitpython': import board from busio import SPI from digitalio import DigitalInOut cs_pin = DigitalInOut(board.P0_15) dc_pin = DigitalInOut(board.P0_17) rst_pin = DigitalInOut(board.P0_20) spi = SPI(clock=board.P0_24, MOSI=board.P0_22) else: from machine import Pin, SPI cs_pin = Pin(16) dc_pin = Pin(4) rst_pin = Pin(17) # Baud rate of 40000000 seems about the max spi = SPI(1, baudrate=40000000, sck=Pin(14), mosi=Pin(13)) # Create the ILI9341 display: display = Display(spi, dc=dc_pin, cs=cs_pin, rst=rst_pin) display.clear() # Draw non-moving circles display.fill_rectangle(0, 0, 239, 99, color565(27, 72, 156)) display.fill_rectangle(0, 168, 239, 151, color565(220, 27, 72)) # Load Marquee image display.draw_image('images/Rototron128x26.raw', 56, 120, 128, 26) # Set up scrolling display.set_scroll(top=152, bottom=100) spectrum = list(range(152, 221)) + list(reversed(range(152, 220))) while True: for y in spectrum: display.scroll(y) sleep(.1) except KeyboardInterrupt: display.cleanup()
def test(): """Test code.""" # Baud rate of 40000000 seems about the max spi = SPI(1, baudrate=40000000, sck=Pin(14), mosi=Pin(13)) display = Display(spi, dc=Pin(4), cs=Pin(16), rst=Pin(17)) # Build color list from all upper case constants (lazy approach) colors = [ getattr(modules[__name__], name) for name in dir(modules[__name__]) if name.isupper() and name is not 'SPI' ] colors.sort() c = 0 for x in range(0, 240, 48): for y in range(0, 320, 64): display.fill_rectangle(x, y, 47, 63, colors[c]) c += 1 sleep(9) display.cleanup()
def test(): """Test code.""" # Baud rate of 40000000 seems about the max spi = SPI(1, baudrate=40000000, sck=Pin(14), mosi=Pin(13)) display = Display(spi, dc=Pin(4), cs=Pin(16), rst=Pin(17)) display.clear(color565(64, 0, 255)) sleep(1) display.clear() display.draw_hline(10, 319, 229, color565(255, 0, 255)) sleep(1) display.draw_vline(10, 0, 319, color565(0, 255, 255)) sleep(1) display.fill_hrect(23, 50, 30, 75, color565(255, 255, 255)) sleep(1) display.draw_hline(0, 0, 222, color565(255, 0, 0)) sleep(1) display.draw_line(127, 0, 64, 127, color565(255, 255, 0)) sleep(2) display.clear() coords = [[0, 63], [78, 80], [122, 92], [50, 50], [78, 15], [0, 63]] display.draw_lines(coords, color565(0, 255, 255)) sleep(1) display.clear() display.fill_polygon(7, 120, 120, 100, color565(0, 255, 0)) sleep(1) display.fill_rectangle(0, 0, 15, 227, color565(255, 0, 0)) sleep(1) display.clear() display.fill_rectangle(0, 0, 163, 163, color565(128, 128, 255)) sleep(1) display.draw_rectangle(0, 64, 163, 163, color565(255, 0, 255)) sleep(1) display.fill_rectangle(64, 0, 163, 163, color565(128, 0, 255)) sleep(1) display.draw_polygon(3, 120, 286, 30, color565(0, 64, 255), rotate=15) sleep(3) display.clear() display.fill_circle(132, 132, 70, color565(0, 255, 0)) sleep(1) display.draw_circle(132, 96, 70, color565(0, 0, 255)) sleep(1) display.fill_ellipse(96, 96, 30, 16, color565(255, 0, 0)) sleep(1) display.draw_ellipse(96, 256, 16, 30, color565(255, 255, 0)) sleep(5) display.cleanup()