from machine import Pin, SPI, SoftI2C
from ili9341 import Display, color565
from ft6206 import Touch
from time import sleep

CYAN = color565(0, 255, 255)
PURPLE = color565(255, 0, 255)
WHITE = color565(255, 255, 255)

ROTATION = 180

spi = SPI(1, baudrate=1000000, sck=Pin(18), mosi=Pin(23), miso=Pin(19))
display = Display(spi, cs=Pin(5), dc=Pin(2), rst=Pin(4), rotation=ROTATION)
i2c = SoftI2C(scl=Pin(22), sda=Pin(21))
touch = Touch(i2c, display)

display.draw_text8x8(display.width // 2 - 32,
  display.height - 100,
  "TOUCH ME",
  WHITE,
  background=PURPLE
)

try:
  while True:
    for point in touch.position:
      display.fill_circle(*point, 4, CYAN)
    sleep(0.1)
except KeyboardInterrupt:
    print("\nCtrl-C pressed.  Cleaning up and exiting...")
finally:
    display.cleanup()
esp:VIN
esp:GND.2
esp:D13
esp:D12
esp:D14
esp:D27
esp:D26
esp:D25
esp:D33
esp:D32
esp:D35
esp:D34
esp:VN
esp:VP
esp:EN
esp:3V3
esp:GND.1
esp:D15
esp:D2
esp:D4
esp:RX2
esp:TX2
esp:D5
esp:D18
esp:D19
esp:D21
esp:RX0
esp:TX0
esp:D22
esp:D23
lcd1:VCC
lcd1:GND
lcd1:CS
lcd1:RST
lcd1:D/C
lcd1:MOSI
lcd1:SCK
lcd1:LED
lcd1:MISO
lcd1:SCL
lcd1:SDA