1
完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
1个回答
|
|
红外遥控我们并不陌生,身边随处可见,最常见的就是家电中的红外遥控,那你知道其中的收发原理吗?
今天就来分享一篇关于红外解码的文章。 1、硬件连接 红外解码只需连3 根线(2 根电源 + 1 根数据)即可,如下图中TSOP382。 2、NEC 协议解码 本文所述的红外编解码采用 NEC 协议。通信的数据帧里使用 高电平时间 来区分 0 和 1。 对于按一下然后按住不动的情况,NEC 协议下是这么处理的: 上图中写的“固定重复指令”也叫作“重复引导码”。对于红外通信协议,搜关键词“IR 引导码”会比较容易搜出结果。 NEC 的编码规则非常简单,如下图: 实际用逻辑分析仪抓取的波形如下,可以与上面的规则相互印证: 3、Arduino 红外解码 把上图中的代码复制到下面: #include const int irReceiverPin = 2; IRrecv irrecv(irReceiverPin);decode_results results;decode_results res_last; void setup() { Serial.begin(9600); irrecv.enableIRIn();} void loop() { if(irrecv.decode(&results)){ if(res_last.value != results.value){ res_last.value = results.value; Serial.print("irCode: "); Serial.print(results.value, HEX); Serial.print(", bits: "); Serial.println(results.bits); } irrecv.resume(); }} 4、STM32 红外解码 1.外部中断方式 参考《江涛带你玩STM32-CubeMX红外NEC解码实战(上)—外部中断方式》外部中断方式的优点在于:用哪个引脚都可以。因为没有使用片上定时器外设,所以需要使用 CPU 计数方式来算时间。 2.定时器捕获方式 参考《江涛带你玩STM32-CubeMX红外NEC解码实战(下)—定时器tiM捕获方式》定时器捕获方式需要使用与定时器相关的引脚,优点是 CPU 不参与计时,被解放出来的 CPU 可以做其他的事。 PS 除了 NEC 协议,红外通信还有很多其他的协议,这在 Mixly 图形化编程软件中看得很明显,如下图: 本文选择最简单的 NEC 协议谈红外解码意在简单地体现 IR 通信的应用,所以没有引入 38kHz 载波的概念,如果想深入了解可以参考《STM32之红外遥控信号自学习实现》。 5、收、发解码差异 如上图,红外通信比较奇特的一点就是收发数据反相。这就导致虽然从发送方或接收方都能解出正确数据,但必解码时必须注意极性,极性要是反了就解不出或解不对数据。 通信实验: 如上图,作者觉得发与收之间的相位差加强了实验的真实感。作者用了两个单片机,分别是 ATMega 2560 和 ATMega 644,选 Arduino 系单片机的原因是想偷个懒不写软件。 下面放大一个数据,仔细看一看 38KHz 的载波长什么样: 上图的结论是占在“接收方”的角度写的“发送方”的行为。也就是说: 1.想让接收方接到 0,发送方就发 38KHz 的载波; 2.想让接收方接到 1,发送方就停止发送载波。 这里不免有人会问:停止发送载波实际上让接收方收到了 1,那该怎么区分“停止通信”和“通信中的 1”呢? 这答案就能看出 NEC 协议的作用了:数据帧有头有尾,在头尾之间的停止发送就是数据 1,不在头尾之间的就是没有通信。 |
|
|
|
只有小组成员才能发言,加入小组>>
3310 浏览 9 评论
2991 浏览 16 评论
3492 浏览 1 评论
9055 浏览 16 评论
4086 浏览 18 评论
1174浏览 3评论
603浏览 2评论
const uint16_t Tab[10]={0}; const uint16_t *p; p = Tab;//报错是怎么回事?
596浏览 2评论
用NUC131单片机UART3作为打印口,但printf没有输出东西是什么原因?
2333浏览 2评论
NUC980DK61YC启动随机性出现Err-DDR是为什么?
1894浏览 2评论
小黑屋| 手机版| Archiver| 德赢Vwin官网 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-21 15:51 , Processed in 1.173508 second(s), Total 78, Slave 59 queries .
Powered by 德赢Vwin官网 网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
德赢Vwin官网 观察
版权所有 © 湖南华秋数字科技有限公司
德赢Vwin官网 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号