本篇教程将会讲解如何用一部红外遥控器来遥控操做树莓派上安装的影音中心.shell
在开始以前, 你须要按此教程把树莓派搭建为影音中心.less
在搭建好了影音中心以后, 你须要去买些零件.ssh
名称 | 数量 | |
|
红外传感器工具 |
1 |
|
红外遥控器ui |
1 |
|
母对母杜邦线编码 |
1 |
红外传感器只有三个引角, 都须要连上树莓派的GPIO管脚. 咱们须要用到母对母杜邦线把它们连上. 好的杜邦线连上红外传感器会使得链接更可靠些.code
按下图所示进行链接. 跳线的颜色可有可无, 只是不一样颜色更容易区分.
要注意在树莓派上用红外传感器须要3.3V电压, 千万别用5V.
树莓派和遥控器的通信经过LIRC (Linux Infrared Remote Control)完成. 大多数树莓派发行版都已经预装了, 因此在Rasbmc上咱们就不须要再安装了, 只需作些设置便可.
为了确保红外硬件正常工做, 咱们能够用SSH链接安装好XBMC的树莓派来测试下.
在XBMC的系统信息界面咱们能够得到树莓派的IP地址.
咱们须要关掉红外功能, 要否则咱们没法经过SSH使用LIRC. 进入XMBC的设置界面, 而后将"Enable GPIO TSOP IR Receiver"选项设为disabled.
更改以后记得要重启一下.
再用SSH连上树莓派, 执行如下命令:
如今在红外传感器前面操做遥控器, 每按一次按键都应该会显示一组'pulse' / 'space'信息.
恭喜! 红外传感器工做正常.
配置并测试
咱们已经知道红外硬件是OK的了, 咱们须要给LIRC一个配置文件来定义在遥控器上的按键.
经过SSH会话, 执行命令:
nano lircd.conf
把下面的内容粘贴到文件中, 按CTRL-x退出, 按Y肯定.
# Please make this file available to others # by sending it to <lirc@bartelmus.de> # # this config file was automatically generated # using lirc-0.9.0-pre1(default) on Thu Mar 14 14:21:25 2013 # # contributed by # # brand: /home/pi/lircd.conf # model no. of remote control: # devices being controlled by this remote: # begin remote name /home/pi/lircd.conf bits 16 flags SPACE_ENC|CONST_LENGTH eps 30 aeps 100 header 8945 4421 one 594 1634 zero 594 519 ptrail 598 repeat 8949 2187 pre_data_bits 16 pre_data 0xFD gap 106959 toggle_bit_mask 0x0 begin codes KEY_VOLUMEDOWN 0x00FF KEY_PLAYPAUSE 0x807F KEY_VOLUMEUP 0x40BF KEY_SETUP 0x20DF KEY_UP 0xA05F KEY_STOP 0x609F KEY_LEFT 0x10EF KEY_ENTER 0x906F KEY_RIGHT 0x50AF KEY_KP0 0x30CF KEY_DOWN 0xB04F KEY_BACK 0x708F KEY_KP1 0x08F7 KEY_KP2 0x8877 KEY_KP3 0x48B7 KEY_KP4 0x28D7 KEY_KP5 0xA857 KEY_KP6 0x6897 KEY_KP7 0x18E7 KEY_KP8 0x9867 KEY_KP9 0x58A7 end codes end remote
这个配置文件应该放在用户pi的home目录下.
如今, 返回XMBC的设置界面开启"Enable GPIO TSOP IR Receiver"选项. 而后把"GPIO IR Remote Profile"设为以下图所示:
重启一下XMBC, 在开机时应该会在右下角显示一个和下图同样的提示框.
遥控器应该能够正常使用了, 不再用鼠标和键盘来操控XMBC了, 哦也!
我是用LIRC中的一个工具'irrecord'来生成遥控器配置文件的.
若是你要用其余的遥控器, 你能够用这个工具来生成配置文件.
步骤以下:
在XMBC中关掉"Enable GPIO TSOP IR Receiver"选项.
把如今的lircd.conf文件改个别的名字.
输入命令'irrecord –list-namespace'. 参数表示将会提示可用的按键名.
输入命令'irrecord -d /dev/lirc0 ~/lircd.conf'
按照指示操做便可. 这个程序会自动算出遥控器的时长和编码.