在树莓派 Pico 上使用红外线接收模块(HX1838 型),我们采用开源的pico_ir库。
这需要下载整个库文件,解压之后将其中的 pico_ir 目录整体上传到 Pico 的根目录。可以使用 Thonny 的 File 功能框上传。
硬件连接
红外线接收模块的 + 脚接树莓派 Pico 的 VSYS。
红外线接收模块的 – 脚接树莓派 Pico 的 GND。
红外线接收模块的 S 脚接树莓派 Pico 的 GP28。
要导入刚才上传在根目录 pico_ir 库,需要使用两行代码:
import sys sys.path.append('pico_ir')
否则会提示找不到 pico_ir 的模块。下面是完整代码,将其保存在 Pico 的根目录,命名为 main.py。
import utime import sys sys.path.append('pico_ir') from machine import Pin from pico_ir import read_code, send_code, validate_code, InvalidCodeException pin_in = Pin(28, Pin.IN, Pin.PULL_UP) pin_out = Pin(21, mode=Pin.OUT) while True: out = read_code(pin_in) # ignore random signals if out: try: validate_code(out) print(out) utime.sleep_ms(100) send_code(pin_out, out) except InvalidCodeException: print("InvalidCodeException:" + out)
效果
运行之后,将红外遥控器对着接收头按下不同的按键,Thonny 的 Shell 窗口会显示相应按键的编码。如果希望在接收到某个按键编码后处理一些事情,可以在上面的代码中加入 if 判断并添加处理逻辑。
审核编辑:刘清
-
Shell
+关注
关注
1文章
363浏览量
23270 -
GND
+关注
关注
2文章
529浏览量
38641 -
树莓派
+关注
关注
116文章
1697浏览量
105476 -
红外接收模块
+关注
关注
1文章
4浏览量
6906
原文标题:在树莓派 Pico 上使用红外线接收模块
文章出处:【微信号:趣无尽,微信公众号:趣无尽】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论