"""
ILI9341 demo (shapes)
https://github.com/rdagger/micropython-ili9341
"""
from time import sleep
from ili9341 import Display, color565
from machine import Pin, SPI
def test():
spi = SPI(2, baudrate=32000000, sck=Pin(18), mosi=Pin(23), miso=Pin(19))
display = Display(spi, dc=Pin(33), cs=Pin(5), rst=Pin(32))
while True:
# for i in range(1, 10, 2):
# display.draw_rectangle(0, 319-i, 2*i, 2*i, color565(255, 0, i))
# sleep(3)
# pyrimid
# display.draw_rectangle(0, 0, 163, 163, color565(255, 0, 255))
#for i in range(0, 240, 2):
# display.draw_rectangle(0+i, 0+i, 239 -2*i, 239 -2*i, color565(i, 0, i))
#sleep(3)
# strip
# display.clear(color565(64, 0, 255))
# for y in range(0, 320, 2):
# display.draw_hline(0, 0+y, 239, color565(255, 0, 255))
# sleep(3)
# two full screen
# display.clear(color565(64, 0, 255))
# sleep(1)
# display.clear(color565(64, 255, 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()
for i in range(0, 240, 2):
display.draw_rectangle(0, 0+i, 239-2*i, 239-2*i, color565(255, 0, 0))
sleep(3)
test()