Android 红外遥控器适配

红外遥控器协议简介

目前有如下几类标准

  1. RC5
  2. NEC
  3. SAMSWNG
  4. ......
  5. SIRC (Sony Infrared Remote Control)
    目前RK平台只支持 NEC 协议.

NEC 协议如下所示

NEC 完整协议

    NEC 默认协议采用32bit 帧格式来发送按键指令, 格式如下表
Address | Complement of Address | Command | Complement of Command
---|---|---|---
LSB-MSB(0-7) | LSB-MSB(8-15) |     LSB-MSB(16-23) |     LSB-MSB(24-31)
    NEC 逻辑1和0波形如下图
![0,1波形](https://note.youdao.com/yws/res/206427/D321AFEA29E54610B19B2B8450FE1622)
    逻辑0: 562us 的高电平, 跟随 526us的低电平, 周期为1.125ms(小数约掉)
    逻辑1: 562us 的高电平, 跟随 1.675us的低电平, 周期为2.25ms(小数约掉)

NEC 协议接收按键时运行过程如下

  1. 持续9ms 的高电平, 然后4.5ms 的低电平(帧头)
  2. 发送设备8bits 地址, 如: 10110001
  3. 发送设备8bits 地址的逻辑反向值, 如: 01001110 (在RK平台, 把address和invert address两个字节作为usercode, 部分遥控器并未把invert address按照协议规范发送反码, 而是作为独立的一个byte)
  4. 发送指令command 8bits, 如: 10001101
  5. 发送指令command 8bits的逻辑反向值, 如: 01110010
  6. 发送截至位, 562us的高电平

红外接收头的原理

红外接接收头由 红外接收二极管/三极管/硅光电池组成, 它们将接收到的红外发射器的信号转换为电信号输出, 在通过PWM接收模块转换为数字信号.

    
# RK3288 红外遥控器配置方法
## 使能驱动
    RK3288 针对红外遥控器的驱动在 kernel/drivers/input/remotectl/rockchip_pwm_remotec
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值