关于单片机红外模块的基础知识

今日头条

1093人已加入

描述

单片机红外模块知识分享,理论是日后实战的基础

单片机基础理论知识包括模拟电路、数字电路和C语言知识。模拟电路和数字电路属于抽象学科,要把它学好还得费点精神。

在你学习单片机之前,觉得模拟电路和数字电路基础不好的话,不要急着学习单片机,应该先回顾所学过的模拟电路和数字电路知识,为学习单片机加强基础。否则,你的单片机学习之路不仅会很艰难和漫长,还可能半途而废。

阅读之前麻烦个位点个关注,日后才不会迷路,打开头像想了解单片机知识的可以找我,输入口令“林老师”,每天分享一些干货给大家,谢谢个位!下面是关于单片机基础理论知识的分享。

红外模块引导码指的是通用的APP的协议,这个引导码就是九毫秒的红外脉冲,这个红外脉冲就是产生是38K的红外脉冲,38K的载波就是让那个红外管子产生38K频率的闪烁,就是亮灭,亮灭频率是38K,要亮灭闪烁九毫秒,九毫秒之后就不让它闪烁了,这个是可以控制的,让那个管子闪烁九毫秒,这个很容易实现,然后再把它关掉4.5毫秒,这个就代表引导码。

单片机

接收端的时候,之后会讲这个接收解码,接收的时候它也是这样的,平常的时候是没有信号的,当有信号的时候它首先就是产生38K的载波,先判断是不是九毫秒,如果说是九毫秒的话,在判断是不是有4.5毫秒这个没有38K载波,如果说是的话就代表是引导码,后面就要接数据了。

接下来就是要发送的就是用户码,用户码的反码,命令码和命令码的反码,最后是结束码,关键就是说发的这个地址码也好,或者叫用户码也好,包括命令码,实际上都是由1010这种比特构成的,就代表如何来发送0和1,实际上归根到底的话地址码也好,数据码也好,或者是命令码也好,它最终都是由01代码来构成的。

单片机

如何来发送0,如何来发送1,NEC的协议是靠着PWM脉冲调制的来发送0和1的,如果要发送的是逻辑0,比如发送的是地址码或者是命令码,这个都无所谓,可以一位一位地取出它当中的比特位,取出这个比特位就可以判断出来,它当前这一位是0还是1,如果说是0,如何让这个管子能够产生0,让它产生0.56毫秒,也就是560个微秒的红外脉冲,全黑的这一块就是产生38K载波,也就是让管子闪烁,不停的闪烁,以38K的频率闪烁,闪烁560个微秒,就是0.56毫秒,然后把它关掉,关掉之后不让它闪烁,也就是不让它产生红外光0.56毫秒,也就是560个微秒,这个就代表是传输的是比特0。

单片机

比如说取了这个比特位是0,怎么样来发这个0?让这个管子通560个微秒,但是这560微秒并不是只仅仅是把它点亮,而是让它闪烁,产生38K的闪烁,让它不停的闪,闪560微秒,之后把它关掉这个管子就不亮了,不亮还是560个微秒,这个时候就代表传输的是比特0,比如要是写代码的话,那就是说我把这里面的最低位取出来,取出来之后来判断它是0还是1,如果是0就控制I/O口让这个灯闪烁,产生38K载波的闪烁,然后让它闪烁560个微秒。

笔者始终认为,扎实的电子技术基础是学好单片机的关键,直接影响单片机学习入门的快慢。单片机属于数字电路,其概念、术语、硬件结构和原理都源自数字电路,如果数字电路基础扎实,对复杂的单片机硬件结构和原理就能容易理解,就能轻松地迈开学习的第一步,自信心也会树立起来。一般是先学习模拟电路再去学习数字电路。扎实的模拟电路基础不仅让你容易看懂别人设计的电路,而且让你的设计的电路更可靠,提高产品质量。

 

C语言知识并不难,没有任何编程基础的人都可以学,在我看来,初中生、高中生、中专生、大学生都能学会。当然,数学基础好、逻辑思维好的人学起来相对轻松一些。当基础打好以后,你会感觉到单片机不再难学了,而且越学越起劲。

当单片机乖乖的依照你的逻辑思维和算法去执行指令,实现预期控制效果的时候,成就感会让你信心十足、夜以继日、废寝忘食的投入到单片机的世界里。可以这么说,扎实的电子技术基础和C语言基础能增强学习单片机信心,较快掌握单片机技术。

审核编辑:汤梓红

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分