完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
1个回答
|
|
红外通信原理
一、红外通信的目的 实现两点间的近距离 保密通信和信息转发 二、红外通信组成 1、红外发射部分 交互(按键、键盘)+编码调制部分+威廉希尔官方网站 2、光电放大器(威廉希尔官方网站 转换放大器)+解调+威廉希尔官方网站 三、红外通信过程 单片机(输出调制)----红外发射威廉希尔官方网站 (发送)----红外接收管(接收解调)------单片机(解码) 四、调制与发射 1、二进制调制 :1、单片机将编码后的二进制信号调制为38KHz的间断脉冲串(相当于二进制信号与38KHz的信号相乘) 2、红外接收解调:HS0038直接输出解调后的高低电平信号 3、编码: 红外发射采用PPM编码方式,编码脉冲由前导码、16位地址码(8位地址码、8位地址反码)和16位操作码(8位操作码、8位操作码的反码)组成。 前导码(起始部分) 一个9ms高电平(起始码) 4.5ms低电平(结果码) 数据码 0.56ms脉宽+1.12ms周期= 0 1.68ms脉宽+2.24ms周期=1 五、概念详解 1、红外接收头(分为电平头还有脉冲头) 电平型的:接收连续的38K信号,可以输出连续的低电平,时间可以无限长。其内部放大及脉冲整形是直接耦合的,所以能够接收及输出连续的信号。 脉冲型的:只能接收间歇的38K信号,如果接收连续的38K信号,则几百ms后会一直保持高电平,除非距离非常近(二三十厘米以内)。其内部放大及脉冲整形是电容耦合的,所以不能能够接收及输出连续的信号。 2、红外遥控中的载波 (1)38K的来源 38K脉冲信号,占空比(高电平比周期)自己定,脉冲周期1/38000 S 例如利用一个中断产生38K脉冲,占空比是1/2,中断时间就要设置为1/38000/2 S中断一次,然后通过相隔一次中断电平翻转一次就形成了一个频率为38K占空比1/2的脉冲。 (2)误差问题 使用单片机的中断模式会比查询模式精准。 利用中断的时候,在时钟比较快的条件下可以产生比较准确的时间基准,来产生相对正确的脉冲。 而利用查询方式,如果用51单片机,12M的晶振,利用查询溢位来产生的38K脉冲,误差会很大, 因为利用查询的方式查询这个动作,它浪费了大把的单片机时间,误差大得离谱。 (3)单片机查询方式和中断方式的区别详解 查询方式就是不断的查询某个标志位,需要耗费大量的cpu 的时间,一般情况下除专门用于延时外不用这种方式(自己认为),中断方式比较适合处理具有随即特性的事件,事件发生后向cpu提出申请,然后cpu会保存当前的任务转去处理事件 编程时查询方式要不断查询标志位,而中断要编写中断服务子程序来处理中断事件 例如:定时100ms,分别用查询法和中断法实现 查询法 #include void main() { TMOD=0X01;//定时器0方式1 TH0=(65536-10000)%256;//定时器器初值 TL0=(65536-10000)/256; ET0=0;//关定时器0中断 TR0=1; while(TF0==0);//若定时完成则中断标志位TF0为1,在此不断查询TF0 TR0=1;//完成定时关闭定时器 while(1); //等待 } 中断法 #include void main() { TMOD=0X01;//定时器0方式1 TH0=(65536-10000)%256;//定时器器初值 TL0=(65536-10000)/256; EA=1;//开总中断 ET0=1;//关定时器0中断 TR0=1;//打开定时器 while(1); //等待 } void timer0 interrupt 1 { TR0=0;//关闭定时器 } 4、红外发射信号的本质 驱动红外发光的"IO"口的状态便是38K脉冲信号从IO口发出来的触发信号,脉冲中的低电平就是导通,高电平就是截止。 可以简单理解为:红外接收头只接受38K信号,我们把接收头看出一个转换器。遇到38K就输出低电平,没有遇到38K就被上拉成高电平。 然后我们通过有无38K来控制红外灯闪烁频率,进而对二进制信号进行编码 在接收方读取高低电平的时间长度与高低电平的各种组合来读取发射方所提供的信息。这种就是所谓的协议。 |
|
|
|
只有小组成员才能发言,加入小组>>
3329 浏览 9 评论
3007 浏览 16 评论
3503 浏览 1 评论
9085 浏览 16 评论
4099 浏览 18 评论
1209浏览 3评论
620浏览 2评论
const uint16_t Tab[10]={0}; const uint16_t *p; p = Tab;//报错是怎么回事?
607浏览 2评论
用NUC131单片机UART3作为打印口,但printf没有输出东西是什么原因?
2349浏览 2评论
NUC980DK61YC启动随机性出现Err-DDR是为什么?
1913浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-1-4 08:52 , Processed in 1.410955 second(s), Total 99, Slave 80 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (威廉希尔官方网站 图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号