IR遥控器配置.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
IR遥控器配置

第一步: init.rc:通过service remotecfg /system/bin/remotecfg /system/etc/remote.conf在开机init阶段,将remote.conf中的配置通过ioctl赋值到ir驱动的变量中(用户空间—内核空间),这样遥控定制化配置才会生效。 remotecfg程序代码位于external/remoteconf/irremote.c,可以在设备的/system/bin/下找到它并手动运行 #./system/bin/remotecfg /system/etc/remote.conf 第二步: 红外驱动(Linux内核层): Linux irremote driver将依照红外驱动配置文件,将红外键值ircode映射为Linux标准键盘扫描码scancode。这个过程即将红外遥控器的按键事件转换为Linux的标准input event。 a) 红外驱动配置文件/system/etc/remote.conf b)标准键盘扫描码kernel/include/linux/input.h(在几次遥控器定制化中,尚未修改过该文件) 第三步: Andriod层: windows manager从irremote driver中读出key event,再通过/system/usr/keylayout/aml_keypad.kl文件,将标准input设备的scan code映射为Andriod API按键KEYCODE字符串。最终scancode和keycode被window manager发送到应用程序,被其focus view消化处理。 例如:key 113 SEARCH 官方称.kl为key layout map file。 映射/配置文件说明 ircode映射为scan code: device/amlogic/xxx/remote.conf #amlogic NEC remote factory_code = 0xfb040001 //每个设备都有独特的factory code. 格式custom_code(16bit)+index_code(16bit) //例子: 0xfb040001= 0xfb04(客户码) + 0001 (低16位可填写任意值) key_begin //按键映射表 0x47 11 //0x47是红外键值,11是对应的标准按键scancode,可以多个键值对应一个scancode 0x5C 97 …… key_end //按键映射表结束 mouse_begin //鼠标方向映射表,每行 0 0x10 //0是方向数字表示符(Left),对应红外按键键值0x10 1 0x11 //方向键右 2 0x0b //方向键上 3 0x0e //方向键下 mouse_end //鼠标方向映射表结束 scancode与KEYCODE字符串映射: 在M1 2.3系统中,位于源码目录的device/amlogic/xxx/ aml_keypad.kl 在M3 4.0系统中,位于源码目录的device/amlogic/xxx/Vendor_0001_Product_0001.kl ..................... key 9 8 key 10 9 key 11 0 key 228 POUND key 227 STAR key 231 CALL key 61 CALL key 97 DPAD_CENTER key 108 DPAD_DOWN key 103 DPAD_UP key 102 HOME key 114 VOLUME_DOWN KEYCODE字符串转换为Andriod UI键值:frameworks/base/include/ui/KeycodeLabels.h static const KeycodeLabel KEYCODES[] = { { SOFT_LEFT, 1 }, { HOME, 3 }, { BACK, 4 }, { CALL, 5 }, { ENDCALL, 6 }, { 0, 7 }, { 1, 8 }, { 2, 9 }, { 3, 10 }, { 4, 11 }, { 5, 12 }, { STAR, 17 }, { POUND, 18 }, { DPAD_UP, 19 }, { VOLUME_UP, 24 }, ...

文档评论(0)

haihang2017 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档