红外线是一种波长比红光还要长的一种电磁波,由于超出了人眼所能观察的范围,所以人眼是看不到的,但是传感器却不一样,它能看的见,波长一般在760nm到400nm之间,我们可以好好利用这一点来做一个红外控制器。
红外遥控器在我们生活中已经算是较为常见了,像电视机、空调、影碟机、甚至连手机都加上了这一功能,据说国民品牌华为p10也具有红外模块,由于制作成本较低,所以应用会如此广泛。
但是对于学单片机的朋友来说红外功能是必须所要掌握的技能,我们本是电子领域的,所以今天就讲解下红外控制原理,由于代码较长,头条中不允许具有链接分享,所以如果大家喜欢的话,改一天把红外设计资料再单独在视频中分享给大家,要给就都给大家,发送接收都有哦。
先来看下原理图,知道红外控制是怎么一回事。
左图为红外接收管,由原理图可知红外接收管其中两个引脚接电源,最后一个串联一个电阻和单片机p3.2相连,这并不难理解。
红外发射管稍微复杂一点,红外发送管一端直接连在vcc上,另一端接了一个pnp型三极管,三极管b极串连一个电阻接到单片机p1.5口,这没什么疑惑,至于为什么这样连接,只能说这样连接好控制,当然还有其它连接方式,可以说硬件部分是较简单的。
再来理解一下单片机控制协议,如果搞diy的话,接触到最多的协议就是nec协议,至于这种协议有很多种,有部分人会问为什么是这种协议,我只能告诉你,这是规定,如果你有这个能力的话完全可以自己规定一个协议,好了我们还是先来了解下nec协议规定。
协议规定
1、低位首先发送,一串信息首先发送9ms的agc(自动增益控制)的高脉冲,接着发送4.5ms的起始低电平,接下来是发送四个字节的地址码和命令码,这四个字节分别为:地址码;地址码反码;命令码;命令码反码,如果你一直按那个按键,一串信息也只能发送一次,一直按着,发送的则是以110ms为周期的重复码,这个协议有一个很突出的特点就是接收到的信号跟发送到的信号正好是反向的。
2、重复码的格式是由9ms的agc高电平和4.5ms的低电平及一个560us的高电平组成。
3、逻辑1的是由560us的高电平和1.69ms的低电平组成的脉冲表示
4、逻辑0的是由560us的高电平和565us的低电平组成的脉冲表示
了解协议之后我们就是写程序了,程序按照该协议规定一步步去写,首先单片机先判断是否产生下降沿,然后进入外部中断0的中断函数,延时一下之后检测io口是否还是低电平,是就等待9ms的低电平过去,之后在等待4.5ms高电平过去,接下来接收传送过来的四组数据(先等待560us的低电平过去,再去高电平时间,如果超过1.12ms那么是高电平),然后检测接收到数据和数据反码进行比较,是否等到的数据是一样的。
上述就是程序所要控制的内容,再次说明下,头条文章中不能加入链接分享,所以如果大家喜欢的话,我再单独发布一个视频,把大家想要的资料都会公布,其中有红外接收器,也有红外发送器,其实你认为高大上的遥控器也不是梦,学会了红外控制部分,你就会知道控制家电就是那么简单。
基于ARM架构的国产芯片亮相,一个可能是全世界最小的云计算平台落地
2275-4706-03
100个网络基础知识大全
【节能学院】电力监控系统在仪征国芯半导体的设计与应用
YB4365/YB4345数字光标直读示波器的设计与实现
自做一个红外控制装置,控制家电很简单
红色版iPhone7/7Plus发布后,亮黑色iPhone7就被大家抛弃了?
python花式导包的八种方法
不可不看的PROM电路测试器测试技术
台积电的3nm工艺产能已被高通、英特尔和AMD等厂商预定
LED大屏质量是如何得到保证的
锂离子电池的结构以及分类介绍
百度徐伟宣布入职地平线 担任通用AI首席科学家
基于GP21+EFM32的超低功耗超声波热量表
多种HPC应用中进行对比的基准
浅谈DD马达的功能特点
特斯拉的国产化脚步加快,国内PCB板块收益
睿思芯科正式加入openEuler社区
认识静电?静电是什么?
台积电报价或全面调整:降价10%、大客户有优惠