15230浏览
查看: 15230|回复: 8

[讨论] 用红外遥控器遥控树莓派

[复制链接]
用红外遥控器遥控树莓派图1


转自oschina
概述
本篇教程将会讲解如何用一部红外遥控器来遥控操作树莓派上安装的影音中心.
在开始之前, 你需要把树莓派搭建为影音中心.
硬件连接
红外传感器只有三个引角, 都需要连上树莓派的GPIO管脚. 我们需要用到母对母杜邦线把它们连上. 好的杜邦线连上红外传感器会使得连接更可靠些.
按下图所示进行连接. 跳线的颜色无关紧要, 只是不同颜色更容易区分.
要注意在树莓派上用红外传感器需要3.3V电压, 千万别用5V.
LIRC
树莓派和遥控器的通讯通过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会话, 执行命令:
  1. nano lircd.conf
复制代码

把下面的内容粘贴到文件中, 按CTRL-x退出, 按Y确定.
  1. # Please make this file available to others
  2. # by sending it to <lirc@bartelmus.de>
  3. #
  4. # this config file was automatically generated
  5. # using lirc-0.9.0-pre1(default) on Thu Mar 14 14:21:25 2013
  6. #
  7. # contributed by
  8. #
  9. # brand:                       /home/pi/lircd.conf
  10. # model no. of remote control:
  11. # devices being controlled by this remote:
  12. #
  13. begin remote
  14.   name  /home/pi/lircd.conf
  15.   bits           16
  16.   flags SPACE_ENC|CONST_LENGTH
  17.   eps            30
  18.   aeps          100
  19.   header       8945  4421
  20.   one           594  1634
  21.   zero          594   519
  22.   ptrail        598
  23.   repeat       8949  2187
  24.   pre_data_bits   16
  25.   pre_data       0xFD
  26.   gap          106959
  27.   toggle_bit_mask 0x0
  28.       begin codes
  29.           KEY_VOLUMEDOWN           0x00FF
  30.           KEY_PLAYPAUSE            0x807F
  31.           KEY_VOLUMEUP             0x40BF
  32.           KEY_SETUP                0x20DF
  33.           KEY_UP                   0xA05F
  34.           KEY_STOP                 0x609F
  35.           KEY_LEFT                 0x10EF
  36.           KEY_ENTER                0x906F
  37.           KEY_RIGHT                0x50AF
  38.           KEY_KP0                  0x30CF
  39.           KEY_DOWN                 0xB04F
  40.           KEY_BACK                 0x708F
  41.           KEY_KP1                  0x08F7
  42.           KEY_KP2                  0x8877
  43.           KEY_KP3                  0x48B7
  44.           KEY_KP4                  0x28D7
  45.           KEY_KP5                  0xA857
  46.           KEY_KP6                  0x6897
  47.           KEY_KP7                  0x18E7
  48.           KEY_KP8                  0x9867
  49.           KEY_KP9                  0x58A7
  50.       end codes
  51. 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'
  • 按照指示操作即可. 这个程序会自动算出遥控器的时长和编码.


凌风清羽  中级技匠

发表于 2016-1-28 22:59:13

一直想试一下红外,这下学习啦
回复

使用道具 举报

吹口琴的钢铁侠  初级技匠
 楼主|

发表于 2016-1-29 10:08:00

凌风清羽 发表于 2016-1-28 22:59
一直想试一下红外,这下学习啦

首先要折腾XMBC系统......
回复

使用道具 举报

大连林海  初级技神

发表于 2016-1-29 10:14:10

膜拜
回复

使用道具 举报

孙毅  初级技匠

发表于 2016-1-29 10:42:17

强悍,但是XMBC 如何看网络电视 是不是也应该介绍下啊。。。嘻嘻嘻嘻
回复

使用道具 举报

吹口琴的钢铁侠  初级技匠
 楼主|

发表于 2016-1-29 10:42:44

孙毅 发表于 2016-1-29 10:42
强悍,但是XMBC 如何看网络电视 是不是也应该介绍下啊。。。嘻嘻嘻嘻

改天   哈哈哈
回复

使用道具 举报

dsweiliang  初级技神

发表于 2016-2-1 08:53:04

膜拜
回复

使用道具 举报

ffxcc  学徒

发表于 2016-2-15 17:51:01

还没用过树莓派:'(
回复

使用道具 举报

吹口琴的钢铁侠  初级技匠
 楼主|

发表于 2016-2-15 18:16:31

ffxcc 发表于 2016-2-15 17:51
还没用过树莓派

还没买的话,是时候买一个了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail