红外接收器 * 1
红外发送器 * 1
红外遥控器 * 1
buster 内核4.19.x 不包含lirc_dev,因此需要用gpio-ir
如果只使用 "irsend" 去发送IR信号,不需要打补丁
如果要使用 "irrecord" "mode2" "irw" "irexec"去接收IR信号,则需要按照此链接打补丁: https://www.raspberrypi.org/forums/viewtopic.php?f=28&t=235256
但想要同时做到 接收和发送 IR信号,好像很吃力。还是建议转到方法二来解决
哈希传递rpi-update 回滚:
重新启动后,用一下命令,查看内核是否回滚
回滚之后可能会有无线网络连接不上的问题,rfkill list 查看射频是否被block,是的话使用
解锁设备。然后 ifconfig wlan0 up 就可以工作了。
编辑 /boot/config.txt
找到 #dtoverlay=lirc-rpi 内容修改为:
编辑 /etc/lirc/lirc_options.conf
修改driver 为default device为 /dev/lirc0,如下所示为默认设置与修改后的设置的异同
重启服务
测试红外输入
此时,按下遥控器屏幕应该就会有数值了
红外接收器已经能够接收红外信号了,不能分辨按键,因此需要录制你的遥控命令
记住你要录制的按键名称
按照指示,按 enter两次,再随机按遥控器任意键,直到 ........跑完。
跑完后,一直重复按刚刚的那个键, 直到 ........跑完。
接下来就是设定了,
输入你想要设定的键,并命名为提供的按键名称如:
KEY_UP
然后按住你设定为上的按键,enter
重复上面动作,直到你的设定完成最后enter离开
完成后,你将在 ~/xx.lirc.conf文件中看到刚才录制的红外信号
文件如下所示:
如果录制没有出现.....尝试 -f 来录制raw code
复制录制的文件
重启lirc服务并测试
输出类似:
编写触发事件:
新建文件 ~/.lircrc并写入以下内容:
> irsend SEND_ONCE <device-name> KEY_1
> irsend SEND_ONCE <device-name> KEY_2
需要用到两个包,python-lirc 用来接收红外 py-irsend 用来发送红外模块
ir_send.py:
ir_receiver.py:
codes就会识别到~/.lircrc中编写的触发事件:mode_1,mode_2
以上就是我踩很多坑,出来的结果,希望有帮助
红外接收头的主要功能为IC化的一种受光元件,其内部是将光电二极管(俗称接收管)和集成IC共同组合封装而成,其IC设计主要以类比式控制,一般主要接收38KHZ的频率的红外线,而对其他频率段的红外信号不敏感。这样,遥控器发出载波在38KHZ的频率,接收管接受遥控器发送过来的信息,从而构成通讯。
★Raspberry Pi主板*1
★树莓派电源*1
★40P软排线*1
★红外接收模块*1
★红外遥控器模块*1
★RGB LED模块*1
★面包板*1
★跳线若干
在本实验中,我们将使用PWM脉宽调制技术来控制RGB的亮度。详情可以查看前面的实验: 树莓派基础实验2:RGB-LED实验 。
我们使用lirc库读取遥控器按钮返回的红外信号,并将它们转换为按钮值,然后使用pylirc来简化从远程控制中读取值的过程。在本实验中,使用遥控器顶部的9个按钮来控制RGB LED模块的颜色。每行代表一种颜色,每列代表亮度。
第1步: 连接电路。
第2步: 安装lirc库,配置详情这里不作介绍。
检查该模块是否已加载,你应该看到“/dev/lirc0”。
然后使用“irw”命令测试,按遥控器上的按钮,看屏幕上是否打印按钮名称,如下图所示:
python lirc模块,有关LIRC的更多信息,请参见 http://www.lirc.org
lirc模块的函数及功能介绍如下:
第3步: 编写控制程序。遥控器上的前三行按钮中的每一行代表一种颜色,即从上到下一次控制红色、绿色和蓝色。每列代表关灯、亮和暗。例如,按第一行的第二个按钮,是控制红色灯亮。
你可以使用遥控器共生产27种颜色,包括关闭所有led灯。
人体时刻发出9.6微米的红外波段的辐射,人体红外感应模块HC-SR501就是为此而设计的。
本文来自于牛人技术网某大神。
1. 传感器特点
传感器采用PCB板封装,有三个针脚引出,其中两端的是用来供电的正极和负极而中间的则是电平信号输出。感应的灵敏度可以通过PCB板上的电位器来进行条件一般在7米左右的感应距离,最大是10米。
2. 接线
3. 程序部分
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)