查看: 3020|回复: 0

pcDuino通过Linker infrared Receive获取红外源码

[复制链接]

该用户从未签到

发表于 2014-4-18 10:13:03 | 显示全部楼层 |阅读模式
分享到:
00.jpg
红外技术虽然在通讯方面和蓝牙相比劣势很大,无论是通讯距离还是速度已经数据的加密性。但是红外技术仍在很多领域有广泛的应用。Linker Infrared Receive是一个红外接收管模块。他可以接受到外接的红外信号。我们可以用它来接收红外遥控器发出来的红外信号。并推断出信号来自于哪个按键
一、实验准备
红外遥控器 一个
Linker Infrared Receive 一个
杜邦线若干

二、实验连线:
Linker Infrared Receive 的VCC 连接 pcduino的+3v
Linker Infrared Receive 的GND 连接 pcduino的GND
Linker Infrared Receive 的OUT 连接 pcduino的D11

01.jpg
注:Linker Infrared Receive可以通过Liner cab连接线连接到可直插pcDuinobase shield上。这样方便且不用杜邦线接线。
三、安装相关的文件:
$ sudo apt-get update && sudo apt-get install pcduino-linux-header-3.4.29+
如果没有安装git的朋友得先安装git
$ sudo apt-get install git-core
去下载下来的module文件下进行编译
$ cd /home/ubuntu/modules
$ make M=`pwd` -C /usr/src/linux-headers-3.4.29+/ (`是左上角1边上的那个键)
载入红外模块
$ sudo insmod ir-keypad.ko pin=11
pin=11表示Linker Infrared Receive 连接到了gpio11可以选择GPIO为GPIO(0-4)或者GPIO(7-17)不加上pin=xx默认是8

四、测试运行:
$ sudo cat /proc/kmsg
遥控器对着Linker Infrared Receive 按下对应的按键

02.jpg
源码共有32位,例如:0xe619ff00 其中前8位(e6)为数据码,接着的后8位(19)为数据反码,最后的16位(ff00)为用户码,注意:同一个红外遥控器的用户码是不变的。因为遥控器型号各不相同。比如例子中F30CFF00对应按键1 (括号中为对应的按键)但是可能在其他的遥控器中对应的的是1甚至没有对应关系。我们需要在/home/ubuntu/modules/pcduino-ir-keypad 目录下修改remote.h文件,remote.h文件如下
04.jpg
回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /5 下一条

手机版|小黑屋|与非网

GMT+8, 2024-12-21 22:49 , Processed in 0.129110 second(s), 16 queries , MemCache On.

ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

苏公网安备 32059002001037号

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.