触摸开关 TTP223 模块,用手轻轻触摸其类似指纹的图标内部区域即可触发。工作电压为 2V ~ 5.5V,共 3 个引脚(GND、VCC、SIG),GND 为地,VCC 为电源引脚,SIG 为数字信号输出脚。
接线
触摸开关 TTP223 模块的 VCC 接树莓派 Pico 的 3V3 引脚
触摸开关 TTP223 模块的 GND 接树莓派 Pico 的 GND 引脚
触摸开关 TTP223 模块的 SIG 引脚接树莓派 Pico 的 GP2 引脚
编程
接通之后,树莓派 Pico 板载的 LED 点亮。代码如下:
import machine import utime touch_switch = machine.Pin(2, machine.Pin.IN) led_board = machine.Pin(25, machine.Pin.OUT) while True: led_board.value(touch_switch.value()) utime.sleep(0.01)
运行之后测试,用手触摸该模块,树莓派 Pico 板载的 LED 点亮;手离开模块,LED 熄灭。
如果想实现,触摸一下点亮 LED,保持点亮状态,再触摸一下熄灭 LED 的效果,则需要使用下面的代码:
import machine import utime touch_switch = machine.Pin(2, machine.Pin.IN) touch = False def toggle_handler(pin): global touch touch = not touch touch_switch.irq(trigger=machine.Pin.IRQ_RISING, handler=toggle_handler) led_board = machine.Pin(25, machine.Pin.OUT) while True: led_board.value(touch) utime.sleep(0.01)
上面的代码用中断触发一个回调函数,当 GP2 电位由低变高后,让布尔变量(LED 的状态)逻辑反转一下。
注意:对于树莓派 Pico W 来说,板载的 LED 引脚编号不是 GP25,需改为:
led_board = machine.Pin("LED", machine.Pin.OUT)
发表评论