首页 » 互联网 » 红外遥控功能的实现_暗记_按键

红外遥控功能的实现_暗记_按键

雨夜梧桐 2024-11-15 06:41:43 0

扫一扫用手机浏览

文章目录 [+]

运用处景视听器材(音箱、电视、录影机、碟机)家庭电器(凉气机、电风扇、电灯)其他红外线遥控产品编码标准

红外吸收头的型号有很多HS0038、VS1838B等,功能大致相同,只是引脚封装不同。

红外吸收有几种统一的编码办法,采样哪种编码办法取决于遥控器利用的芯片,吸收头收到的都是一样的。

红外遥控功能的实现_暗记_按键 红外遥控功能的实现_暗记_按键 互联网

电视遥控器利用的是专用集成发射芯片来实现遥控码的发射,常日彩电遥控旗子暗记的发射,便是将某个按键所对应的掌握指令和系统码(由0和1组成的序列),调制在38KHz的载波上,然后经放大、驱动红外发射管将旗子暗记发射出去。

红外遥控功能的实现_暗记_按键 红外遥控功能的实现_暗记_按键 互联网
(图片来自网络侵删)

不同公司的遥控芯片,采样的遥控码格式也不一样,较普遍的有两种,一种NEC标准,一种是PHILIPS标准。

NEC标准: 当某个键按下时,系统首先发射一个完全的全码,如果按键超过108ms仍未松开,接下来发射的代码(连发代码)将由起始码(9ms)和结束码(2.5ms)组成。

一个完全的全码 = 勾引码 +用户码 +用户码 + 数据码 + 数据反码。

个中,勾引码高电平9ms,低电平4.5ms;

用户码和数据码共32位;个中前16位为用户识别码,能差异不同的红外遥控设备,以防止不同的机种遥控码相互关扰。
后16位数据码为8位的操作码和8位的操作反码,用于核对数据是否吸收准确。

吸收端根据数据码的不同做出相应的动作。

连发代码是在持续按键时发送的码。
它奉告吸收端。
某键是在被连续的按着。

PHILIPS标准: 逻辑“0”和逻辑“1”的定义。

我们利用的遥控器模块利用的是NEC标准,当我们点击红外遥控器上第一个按键Ch- 时,用示波器丈量VS1838B的OUT引脚,示波器中抓取的旗子暗记如下:

我们可以看出跟下图标准的NEC协议的范例脉冲链的定义是同等的:

上图为NEC协议的范例脉冲链。
协议规定低位首先发送。

首先发送9ms+4.5ms的勾引码,接下来是两字节用户码,第三字节是数据码(按键码),用来判断按键值,第四字节是数据反码,可以用来校验,提高按键的准确性。

把稳: 我们会创造上面两个图中波形的高低电平 实际上是相反的,由于红外吸收头将38K载波旗子暗记过滤,吸收到的波形刚好与发射波形相反。

难点:数据0和1的判断: 所谓的解码便是一个区分脉冲宽度的过程。
红外旗子暗记的“0”和“1”是通过脉冲持续韶光的是非来区分的,NEC标准的“0”和“1”的定义如下:

勾引码:9ms 的载波+4.5ms 的空闲。
比特值“0”:560us 的低电平+560us 的高电平。
比特值“1”:560us 的低电平+1.68ms 的高电平。

VS1838B 这个红外一体化吸收头,当收到有载波的旗子暗记的时候,会输出一个低电平,空闲的时候会输出高电平。

数据处理流程

结果展示接线

与VS1838B连接:

红外吸收头的OUT引脚连接PA7VCC连接3.3VGND接地

与USB转TTL串口相连: 用于打印调试信息

USB转TTL串口的TXD与核心板的PA10相连USB转TTL串口的RXD与核心板的PA9相连USB转TTL串口的VCC与3V3跳线短接

键码值输出

按红外遥控的各个按键,串口打印输出各个按键值如下:

对红外遥控器键码值整理如下:

下面视频中抓取的是第一个按键的脉冲旗子暗记:

我们通过不雅观察视频创造它的四个字节的数据如下: 00000000 11111111 10100010 01011101

个中: 头两个字节00000000 11111111,即用户码,值为:0x00FF; 第三个字节便是Command命令字,10100010,这个数字对应十进制便是162,对应16进制便是0xA2。

一样平常我们就利用第三个字节的值,进行不同的功能定义。
第四字节01011101,可以看出与第三字节10100010互为反码。

但是我们通过上面NEC编码部分的先容可知,NEC协议规定低位首先发送。
以是上面打印输出的162(10100010),须要高低位反过来,即第一个按键的二进制真实编码为:01000101,即十六进制的0x45。

我们将所有的按键重新打算,所有编码就能够得到网上的按键编码图了。

实在我们只要每个按键能准确得到一个不同键码值,然后程序中根据不同值,实行不同流程即可,对付“CH-”键码值是162还是0x45,实在对功能的实现没有影响。

喜好请关注微信"大众年夜众号:程序员小哈

有问题可以加我微旗子暗记:chengxuyuanxiaoha(程序员小哈)

标签:

相关文章