import time
from machine import Pin, SPI
from st7305viper import TFT29, FRAMERATE_16

led = Pin(15, Pin.OUT, value = 1)

pw = Pin(16, Pin.OUT, value = 1)
cs = Pin(39, Pin.OUT, value = 1)
dc = Pin(37, Pin.OUT, value = 1)
rs = Pin(35, Pin.OUT, value = 1)
spi = SPI(1, baudrate=40_000_000, polarity=0, phase=0, sck=Pin(18), mosi=Pin(33), miso=Pin(17))

lcd = TFT29(spi, cs, dc, rs, framerate = FRAMERATE_16)
lcd.text('Hello, World!', 8, 20, 1)
lcd.text('ABCDEFGHIJKLMNOPQRSTUVWXYZ', 8, 30, 1)
lcd.text('abcdefghijklmnopqrstuvwxyz', 8, 40, 1)
lcd.text('1234567890123456789012345678901234567890', 8, 50, 1)
t = time.ticks_ms()
lcd.refresh()
t = time.ticks_diff(time.ticks_ms(), t)
lcd.fill_rect(0, 0, 384, 9, 1)
lcd.text(f'Flush cost {t} ms.', 8, 0, 0)
lcd.refresh()

# ESP32-S2 viper 14 ms
