小e的拨码开关是通过ADC读取分压电阻来识别的。因此我们只要通过电压的范围就可以知道按下哪个开关。
import machine, time from machine import ADC def DSW(): d = ADC(0).read() if(d < 200): return 0 elif(d < 450): return 4 elif(d < 650): return 3 elif(d < 900): return 2 else: return 1
改变拨码开关,然后输入DSW()就可以知道开关状态了。
DSW()
注:因为分压精度问题,所以只能识别一个开关,不能识别同时按下多个开关。