红外线控制方面的内容

红外线控制方面的内容

ID:14413795

大小:40.50 KB

页数:9页

时间:2018-07-28

红外线控制方面的内容_第1页
红外线控制方面的内容_第2页
红外线控制方面的内容_第3页
红外线控制方面的内容_第4页
红外线控制方面的内容_第5页
资源描述:

《红外线控制方面的内容》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、红外线控制方面的内容红外线控制方面的内容如何用PIC做红外线遥控接收?============================先用20106之类的片子解调后,你用示波器挂在20106的输出端就可以查看遥控波形。=============================NEC遥控接收第一次正常,以后就不行了(附遥控子程序)请指正。不才是PIC领域的新手,最近写了一个关于NEC遥控接收解码的测试程序,下面是此程序的遥控解码部分但是它只能第一次正确判断出接收码,以后就不行了请高手指点》我知道遥控码的连发情况,但我已经设置了32位接收码的计数器,应该不会有问题的我判断0(1.125ms

2、)和1(2.25ms)由于我用的是C57,只能通过查询方式来确定.通过高电平的时间(以下程序中延时0.9MS)不同来决定0或1的。;NEC格式遥控码的接收与解码子程序;本程序中采用PORTA0口接收红外遥控,地址码为00H,高位FFH,数据码为00H,反码为FFH,接收到的依次存放到25HADD8L,26HADD8H,DAT827H,28HDAT8F寄存器中。;第一次接收到此信号即关机.;====================================REMOTE_RECEIVERCLRF20H;设定遥控接收正确与否标志位。若20H的第0位为1,BTFSCPORTA,0

3、;遥控接收无效。GOTOBACK;判断9MS低电平和4.5MS高电平。;----5msdelay----------------MOVLW06H;防止抖动,延时5msMOVWF30HLOOP4MOVLW0FFHMOVWF31HLOOP5DECFSZ31H,1GOTOLOOP5DECFSZ30H,1GOTOLOOP4;-----------------------------BTFSCPORTA,0GOTOBACK;遥控接收无效。LOOP0BTFSSPORTA,0;遥控接收,等待高电平出现,约9-5msGOTOLOOP0;-----------------------------

4、-以下是接收代码的步子STEPMOVLWD'32';设置32位接收码的计数器.MOVWFBIT32STEP1BTFSCPORTA,0;等待4.5msGOTOSTEP1STEP2BTFSSPORTA,0GOTOSTEP2;测一个脉冲,MOVLWD'180';延时0.9ms,测试高电平的脉宽。MOVWF29HBCFSTATUS,CWAITNOPNOPDECFSZ29H,1GOTOWAITBTFSSPORTA,0;PA0TOCGOTOC0GOTOC1C0BCFSTATUS,CGOTOSTEP3C1BSFSTATUS,CSTEP3MOVLWD'4'MOVWF2AHMOVLW28H;28

5、H是DAT8F的地址MOVWFFSR;利用FSR进行间接寻址。STEP4RLFINDF,1DECFFSR,1DECFSZ2AH,1GOTOSTEP4DECFSZBIT32,1GOTOSTEP1MOVFADD8L,0XORLW00HBTFSSSTATUS,ZGOTOBACK;低8位地址码不对,返回MOVFADD8H,0XORLW0FFHBTFSSSTATUS,ZGOTOBACKMOVFDAT8,0;8位数据码不对,返回XORLW00HBTFSSSTATUS,ZGOTOBACKMOVFDAT8F,0;8位数据反码不对,返回XORLW0FFHBTFSSSTATUS,ZGOTOBACK

6、GOTOREM_OK;代码接收正确BACKBSF20H,0REM_OKRETURN回复先清32位数据再接收.然后每接收完8位后,RAM要清0如;**************RAM移位***************************j1incfjsp1;8位计数寄存器incfjsp2;32位数,计存器.btfssjsp1,3;是否有8位gotojsclrfjsp1movfsj,0;移8位数到Wmovwf**;W到DATAincff;RAM地址加1clrfsj;注意这里!!!!!!!!!!!!!!!;*****************************btfssjsp2

7、,5;检测是否接收完32位.gotojs;否,再检测.这是6122和6121IC的接收程序.发表于:2003-03-0417:34:51小宝:很高兴看到你的提示,不过我的程序不是按照每8位接收后经过RAM放入寄存器中,而是每位都经过4次循环移位后直接放入存放数据的寄存器中(参见接收程序中的STEP4),所以不可能按昭你所说的那样清0。可能是接收程序与你所说的流程不同。请问你能把你完整的接收程序发给我吗?万分感激!我的EMAIL是tanga08@sina.com你的程序单独看是没有问题的。我想

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。