用红外遥控器遥控树莓派(XBMC)

概述
本篇教程将会讲解如何用一部红外遥控器来遥控操作树莓派上安装的影音中心.
20160117213332151-0
在开始之前, 你需要按此教程把树莓派搭建为影音中心.
需要的零件
在搭建好了影音中心之后, 你需要去买些零件:
红外线传感器(接收器,无责任推荐)
红外线遥控器(发射器,无责任推荐)
母对母杜邦线
硬件连接
红外传感器只有三个引角, 都需要连上树莓派的GPIO管脚. 我们需要用到母对母杜邦线把它们连上. 好的杜邦线连上红外传感器会使得连接更可靠些.
20160117213332151-0
按下图所示进行连接. 跳线的颜色无关紧要, 只是不同颜色更容易区分.
20160117213332828-0
要注意在树莓派上用红外传感器需要3.3V电压, 千万别用5V.
LIRC
树莓派和遥控器的通讯通过LIRC (Linux Infrared Remote Control)完成. 大多数树莓派发行版都已经预装了, 所以在Rasbmc上我们就不需要再安装了, 只需做些设置即可.
为了确保红外硬件正常工作, 我们可以用SSH连接安装好XBMC的树莓派来测试下.
如果你从没用过SSH,请看此教程.
在XBMC的系统信息界面我们可以获得树莓派的IP地址.
20160117213332660-0
我们需要关掉红外功能, 要不然我们无法通过SSH使用LIRC. 进入XMBC的设置界面, 然后将”Enable GPIO TSOP IR Receiver”选项设为disabled.
20160117213332699-0
更改之后记得要重启一下.
再用SSH连上树莓派, 执行以下命令:
20160117213332700-0
现在在红外传感器前面操作遥控器, 每按一次按键都应该会显示一组’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”设为如下图所示:
20160117213332552-0
重启一下XMBC, 在开机时应该会在右下角显示一个和下图一样的提示框.
20160117213332533-0
遥控器应该可以正常使用了, 再也不用鼠标和键盘来操控XMBC了, 哦也!
使用其他型号的遥控器
我是用LIRC中的一个工具’irrecord’来生成遥控器配置文件的.
如果你要用其他的遥控器, 你可以用这个工具来生成配置文件.
步骤如下:

在XMBC中关掉”Enable GPIO TSOP IR Receiver”选项.
把现在的lircd.conf文件改个别的名字.
输入命令’irrecord –list-namespace’. 参数表示将会提示可用的按键名.
输入命令’irrecord -d /dev/lirc0 ~/lircd.conf’
按照指示操作即可. 这个程序会自动算出遥控器的时长和编码.

20160117213332847-0
via

标签: 树莓派教程