[翻译完成] 用红外遥控器遥控树莓派

概述

本篇教程将会讲解如何用一部红外遥控器来遥控操做树莓派上安装的影音中心.shell

概述

在开始以前, 你须要按此教程把树莓派搭建为影音中心.less

须要的零件

在搭建好了影音中心以后, 你须要去买些零件.ssh


名称 数量

sensor.jpg

红外传感器工具

http://adafruit.com/products/157 测试

1

miniIRremotecontrol_MED.jpg

红外遥控器ui

http://adafruit.com/products/389 this

1

leads_MED.jpg

母对母杜邦线编码

http://adafruit.com/products/794 spa

1

硬件链接

红外传感器只有三个引角, 都须要连上树莓派的GPIO管脚. 咱们须要用到母对母杜邦线把它们连上. 好的杜邦线连上红外传感器会使得链接更可靠些.code

overview.jpg

按下图所示进行链接. 跳线的颜色可有可无, 只是不一样颜色更容易区分.

wiring.png

要注意在树莓派上用红外传感器须要3.3V电压, 千万别用5V.

LIRC

树莓派和遥控器的通信经过LIRC (Linux Infrared Remote Control)完成. 大多数树莓派发行版都已经预装了, 因此在Rasbmc上咱们就不须要再安装了, 只需作些设置便可.

为了确保红外硬件正常工做, 咱们能够用SSH链接安装好XBMC的树莓派来测试下.

若是你从没用过SSH,请看此教程.

在XBMC的系统信息界面咱们能够得到树莓派的IP地址.

xmbc_ip_address.jpg

咱们须要关掉红外功能, 要否则咱们没法经过SSH使用LIRC. 进入XMBC的设置界面, 而后将"Enable GPIO TSOP IR Receiver"选项设为disabled.

TSOP_IR_disabled.jpg

更改以后记得要重启一下.

再用SSH连上树莓派, 执行如下命令:

mode2_on_xmbc.png

如今在红外传感器前面操做遥控器, 每按一次按键都应该会显示一组'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_ir_on.jpg

重启一下XMBC, 在开机时应该会在右下角显示一个和下图同样的提示框.

xmbc_detects_lirc.jpg

遥控器应该能够正常使用了, 不再用鼠标和键盘来操控XMBC了, 哦也!

使用其余型号的遥控器

 

我是用LIRC中的一个工具'irrecord'来生成遥控器配置文件的.

若是你要用其余的遥控器, 你能够用这个工具来生成配置文件.

步骤以下:

  • 在XMBC中关掉"Enable GPIO TSOP IR Receiver"选项.

  • 把如今的lircd.conf文件改个别的名字.

  • 输入命令'irrecord –list-namespace'. 参数表示将会提示可用的按键名.

  • 输入命令'irrecord -d /dev/lirc0 ~/lircd.conf'

  • 按照指示操做便可. 这个程序会自动算出遥控器的时长和编码.

recording_keys.png

相关文章
相关标签/搜索