NEC红外编码示波器验证

(51 microcontroler infrared NEC code cerificate by oscilloscope )

跟着江科大51单片机学到红外模块部分,想要验证一下NEC编码

本文主要验证编码周期&date位

分别测试起始位,data 中 '0' '1',结束码,重复码,data位中地址码和命令码正确否

1.NEC编码原理

NEC协议载波频率为38kHz

NEC编码协议说明

遥控器键码 地址码0x00,命令码0x_ _

2.测试验证

(1)测试环境

将示波器设置为检测38kHz的信号,然后示波器探头连接红外接收头out端,地线接地,

未接收红外信号时out端默认输出高电平

开始测试

获取NEC编码信号,包含Start,DATA,End,Repeat信号

(2)测量各信号周期

a.起始位

NEC协议的起始位是一个9ms的低电平后跟一个4.5ms的高电平

测量结果:低电平9.16ms,高电平4.4ms

b.DATA位中的 “0”“1”信号

  • 逻辑“0”:560微秒的载波脉冲后跟560微秒的无脉冲间隔,总持续时间为1.12ms
  • 逻辑“1”:560微秒的载波脉冲后跟1680微秒的无脉冲间隔,总持续时间为2.25ms

“0”信号测量结果:低电平620us,高电平510us

“1”信号测量结果:低电平610us,高电平1620us

c.重复码

如果遥控器按钮被长按,会发送重复码,通常在第一次信号结束后的110ms开始,低电平9ms,高电平2.25ms

测量结果:低电平9.12ms,高电平2.16ms

d.结束位

数据包的最后是一个560微秒的载波脉冲,表示传输结束,

测量结果:低电平560us

(3)Data位数据

数据位分别为地址码,地址反码,命令码,命令反码组成;

地址和命令码都是8位长,以最低有效位先发送的顺序进行传输(LSB-first)。每个位的持续时间表示逻辑“0”或逻辑“1”:

地址码均为0x00

以今天日期9.30为例,分别截下“9” “3” “0”波形

“9”

命令码0x4A,且从LSB开始发,所以应该呈现

地址码 | 地址反码 | 命令码 | 命令反码

0000 0000 | 1111 1111 | 0101 0010 | 1010 1101 

测试结果如下,data位相同

“3”

命令码0x5E,地址码 | 地址反码 | 命令码 | 命令反码

0000 0000 | 1111 1111 | 0111 1010 | 1000 0101

测试结果如下,data位相同

“0”

命令码0x16,地址码 | 地址反码 | 命令码 | 命令反码

0000 0000 | 1111 1111 | 0110 1000 | 1001 0111

测试结果如下,data位相同

(4)其他红外遥控

还测试了空调和手机万能遥控的红外编码,但不清楚是哪种编码,仅做参考

空调(松下)

手机万能遥控(格力)

以上。

参考视频/文章:

[17-1] 红外遥控(外部中断)_哔哩哔哩_bilibili

红外协议之NEC协议 - 灰色的鱼 - 博客园 (cnblogs.com)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值