from machine import Pin, ADC
import utime
from lcd_api import LcdApi
from i2c_lcd import I2cLcd
from machine import Pin,I2C
import time
I2C_ADDR= 0x27
I2C_NUM_ROWS = 2
I2C_NUM_COLS = 16
i2c = I2C(0, sda=Pin(0), scl=Pin(1), freq=10) # freq means speed 100000
lcd = I2cLcd(i2c, I2C_ADDR, I2C_NUM_ROWS, I2C_NUM_COLS)
#time.sleep(1)
xAxis = ADC(Pin(27))
yAxis = ADC(Pin(26))
button = Pin(16,Pin.IN, Pin.PULL_UP)
while True:
xValue = xAxis.read_u16()
yValue = yAxis.read_u16()
buttonValue = button.value()
xStatus = "middle"
yStatus = "middle"
buttonStatus = "not pressed"
if xValue <= 600:
xStatus = "left"
elif xValue >= 60000:
xStatus = "right"
if yValue <= 600:
yStatus = "up"
elif yValue >= 60000:
yStatus = "down"
if buttonValue == 0:
buttonStatus = "pressed"
print("X: " + xStatus + ", Y: " + yStatus + " -- button " + buttonStatus)
utime.sleep(0.1)
lcd.clear()
lcd.move_to(0,0)
#lcd.putstr(str(xValue) +", " + str(yValue) + "-" + str(buttonValue))
lcd.putstr(xStatus+yStatus+buttonStatus)
#time.sleep(0.)