一、接线
GND-----------GND
3V3/5V--------+5V
P18-----------D0
P33-----------VRX
P32-----------VRY
P15-----------SW
(图是别人的)
二、代码
手柄方向啥的,有参数,自己改改哪里为东南西北------------经供参考
from machine import Pin, ADC
import time
ps2_y = ADC(Pin(33))
ps2_y.atten(ADC.ATTN_11DB) # 这里配置测量量程为3.3V,默认为1V
ps2_x = ADC(Pin(32))
ps2_x.atten(ADC.ATTN_11DB) # 这里配置测量量程为3.3V,默认为1V
btn = Pin(15, Pin.IN) # 按键按下输出0,
while True:
val_y = ps2_y.read() # 输出范围0-4095,默认处于中间位置
if(val_y >= 2000):
print("向上")
elif(val_y < 1800):
print("向下")
val_x = ps2_x.read() # 输出范围0-4095,默认处于中间位置
if(val_x > 1900):
print("向右")
elif(val_x < 1800):
print("向左")
if(btn.value() == 0):
print("按键按下")
print("x:{} y:{} btn:{}".format(val_x, val_y, btn.value())) # 打印出x轴,y轴的值
time.sleep(0.2)