基于单片机的红外遥控接收电路_第1页
基于单片机的红外遥控接收电路_第2页
基于单片机的红外遥控接收电路_第3页
基于单片机的红外遥控接收电路_第4页
基于单片机的红外遥控接收电路_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1 引言近年来随着计算机在社会各领域的渗透,单片机的应用正在不断地走向深入,同时也带动传统的控制、检测等工作日益更新。传统的遥控器大多采用无线电遥控技术,随着科技的进步,红外线遥控技术的进一步成熟,红外遥控也逐步成为了一种被广泛应用的通信和遥控手段。为了方便实用,传统的家庭电器逐渐采用红外线遥控。工业设备中,在高压、辐射、有毒气体、粉尘等有害环境下,采用红外线遥控不仅完全可靠而且能有效地隔离电气干扰。红外遥控的特点是不影响周边环境、不干扰其它电器设备。由于其无法穿透墙壁,故不同房间的家用电器可使用通用的遥控器而不会产生相互干扰;电路调试简单,只要按给定电路连接无误,一般不需任何调试即可投入工作

2、;编解码容易,可进行多路遥控。红外遥控虽然被广泛应用,但各产商的遥控器不能相互兼容。当今市场上的红外线遥控装置一般采用专用的遥控编码及解码集成电路,但编程灵活性较低,且产品多相互绑定,不能复用,故应用范围有限。而本文采用单片机进行遥控系统的应用设计,遥控装置将同时具有编程灵活、控制范围广、体积小、功耗低、功能强、成本低、可靠性高等特点,因此采用单片机的红外遥控技术具有广阔的发展前景。2 概述2.1 基于单片机的红外遥控系统概述当今社会科学技术的发展与日俱增,人们生活水平也是日益提高,为了减少人们的工作量,所以对各种家用电器、电子器件的非人工控制的要求越来越高,针对这种情况,设计出一种集成度比较

3、高的控制体系是必然的。现代科技的飞速发展在许多危险、不可近场合也对远程控制提出了越来越高的要求。单片机是指一个集成在一块芯片上的完整计算机系统。尽管他的大部分功能集成在一块小芯片上,但是它具有一个完整计算机所需要的大部分部件:CPU、内存、内部和外部总线系统,目前大部分还会具有外存。同时集成诸如通讯接口、定时器,实时时钟等外围设备。而现在最强大的单片机系统甚至可以将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。单片机的集成度很高,它体积小、功耗低、控制功能强、扩展灵活、微型化、使用方便等突出特点,尤其耗电少,又可使供电电源体积小、质量轻。所以特别适用于“电脑型产品”,它的应用已深入到工

4、业、农业、国防、科研、教育以及日常生活用品(家电、玩具)等各种领域,几乎很难找到哪个领域没有单片机的踪迹。单片机特别适合把它做到产品的内部,取代部分老式机械、电子零件或元器件。可使产品缩小体积,增强功能,实现不同程度的智能化。红外线是一种光线,具有普通光的性质,可以以光速直线传播,强度可调,可以通过光学透镜聚焦,可以被不透明物体遮挡等等。特别制造的半导体发光二极管,可以发出特定波长(通常是近红外)的红外线,通过控制二极管的电流可以很方便的改变红外线的强度,以达到调制的目的,因此,在现代电子工程应用中,红外线常常被用做近距离视线范围内的通讯载波。使用红外线做信号载波的优点很多:成本低、传播范围和

5、方向可以控制、不产生电磁辐射干扰,也不受干扰等等。因此被广泛地应用在各种技术领域中。由于红外线为不可见光,因此对环境影响很小,再由红外光波动波长远小于无线电波的波长,所以红外线遥控不会影响其他家用电器,也不会影响临近的无线电设备。最典型的应用就是家电遥控器。红外线遥控不具有像无线电遥控那样穿过障碍物去控制被控对象的能力,所以,在设计家用电器的红外线遥控器时,不必要像无线电遥控器那样,每套(发射器和接收器)要有不同的遥控频率或编码(否则,就会隔墙控制或干扰邻居的家用电器)。同类产品的红外线遥控器,也可以有相同的遥控频率或编码,而不会出现遥控信号“串门”的情况。这对于大批量生产以及在家用电器上普及

6、红外线遥控提供了极大的方面。本设计主要研究并设计一个基于单片机的红外发射及接收系统,实现对四路开关的隔离控制并对工作状态设备计数。控制系统主要是由 MCS-51 系列单片机、电源电路、红外发射电路、红外接收电路、LED 显示电路等部分组成,单片机编码发射遥控信号经红外接收处理传送给单片机,单片机根据不同的信息码控制四路 LED 发光二极管各个状态,并完成相应的状态指示(如图 1)。按键编码和调制红外发射红外接收解码并响应红外遥控红外接收图 1 红外线遥控系统框图2.2 本设计方案思路本设计主控芯片采用目前比较通用的MCS-51系列单片机。此类单片机的运算能力强,软件编程灵活,自由度大,市场上比

7、较多见,价格便宜且技术比较成熟容易实现。红外传输利用载波对信号进行调制从而减少信号传输过程中的光波干扰,提高数据传输效率。由单片机AT89S51定时器 T0 产生周期性的 26.3 的矩形脉冲,即每隔13us,定时器 T0 产生中断输出一个相反的信号使输出端产生周期的 38KHz 脉冲信号。再由单片机将键盘信息及系统识别码等数据调制在红外载波上经红外发射头发射出去。接收方由红外一体化接收头实现对接收信号的放大解调并还原为数据流,经由单片机解码后对相关IO口进行操作(如图 1)。2.3 主要技术指标 (1)遥控距离4到6m(2)遥控路数为4路,即可对4个受控设备同时进行开关控制;(3)工作频率为

8、 38KHz,即红外发射和接收的载频为 38KHz;(4)接收端可显示受控状态。3 总体设计红外遥控系统是集中集光、电于一体的系统。其工作原理是用户按键信号经单片机编码处理后转化为脉冲信号,经由红外发射头发送出去;接收端由红外一体化接收头实现对接收信号的放大解调并还原为数据流,经由单片机解码后对相关IO口进行操作,从而完成整个遥控操作。整个系统主要是由电源电路、红外发射电路、红外接收电路、LED 显示电路等部分组成。系统硬件由以下几部分组成:红外数据发射电路,键盘采用普通按键键盘,按键统一接在单片机P0口。整体设计思路为:根据扫描到不同的按键值对发射脉冲编码赋值后 AT89S51 将按照数据处

9、理要求从 P3.5 输出控制脉冲与 T0 产生的 8KHz 的载波(周期是 26us)进行调制,经 NPN 三极管对信号放大驱动红外发光管将控制信号发送出去。红外数据接收则是采用 HS38B 一体化红外接收头,内部集成红外接收、数据采集、解码的功能,只要在接收端 INT0 检测头信号低电平的到来,就可完成对整个串行的信号进行分析得出当前控制指令的功能。然后根据所得的指令去操作相应的用电器件工作,如图 2所示。红外发射管编码单片机遥控按键红外传输执行部分红外一体化接收头解码单片机图2 系统总体结构框图3.1 红外遥控发射部分红外遥控发射部分系统框图见图 3。发送端采用单片机的定时中断功能,由定时

10、器 T0 产生周期为 26us 的矩形脉冲,即每隔13us定时器 T0 产生中断输出一个相反的信号使单片机输出端产生周期为38KHz的脉冲信号。脉冲图如图 4所示。系统通过直连单片机的按键获取用户遥控信息,经按键扫描确认,然后交由单片机对将要发射数据进行整理,将待发送的二进制信号编码调制在38kHz脉冲基波上,生成脉冲发射信号,最后通过红外发射管发射红外信号。按键部分单片机89S51编码红外发射电源5V驱动图 3 红外遥控发射电路框图图4 38KHz 载波信号3.2 红外遥控接收部分5V红外接收单片机89S51解码设备数显示受控设备电源9V红外遥控接收电路框图见图 5。红外接收端普遍采用价格便

11、宜,性能可靠的一体化红外接收头(HS38B , 它接收红外信号频率为38KHz ,周期约26s)。它能同时对信号进行放大、检波、整形,得到TTL 电平的编码信号。红外接收头收到信号后单片机立即产生中断,开始接收红外信号。接收到的信号经单片机解码得到用户遥控信息并转至IO口执行,同时单片机还完成对处于工作状态的设备进行计数并显示。光电隔离图 5 红外遥控接收电路框图3.3 红外编码标准本设计中采用不同的脉宽宽度来实现二进制信号的编码,编码由发送单片机来完成。以间隔0.56ms、脉宽为0.565ms、周期为1.125ms的组合表示二进制的“1”;以间隔1.685ms、脉宽为0.565ms、周期为2

12、.25ms的组合表示二进制的“0”,其波形如图6所示。Bit“0”Bit“1”1.685ms0.56ms1.125ms2.25ms图 6 二进制信号“1”和“0”的编码遥控编码脉冲信号由引导码、识别码、识别反码、控制码、控制反码信号组成。引导码也叫起始码,由宽度为5ms的高电平和宽度为3ms的低电平组成,用来标志遥控编码脉冲信号的开始。如图7所示。3ms 低电平5ms 高电平图 7 信号引导码图识别码也叫系统码,它用来指示遥控系统的种类,以区别其它遥控系统,防止各遥控系统的误动作。控制码也叫功能码,它代表了相应的控制功能,接收机可根据功能码的数值完成各种功能操作。识别反码与控制反码分别是识别码

13、与控制码的反码,反码的加入是为了能在接收端校对传输过程中数据是否产生差错。脉冲位置表示的“0”和“1”组成的 32 位二进制码前 16 位控制指令,控制不同的红外遥控设备。而不同的红外家用电器又有不同的脉冲调控方式,后 16位分别是 8 位的控制码和 8 位的控制反码。串行数据码时序图如8所示。图 8 串行数据码时序图3.3.1 二进制信号的调制二进制信号的调制仍由发送单片机来完成,如图9所示,A是二进制信号的编码波形,B 是频率为38KHz (周期为26s) 的连续脉冲,C 是经调制后的间断脉冲串(相当于C = A B) ,用于红外发射二极管发送的波形。图9中,待发送的二进制数据为101。图

14、中脉冲个数仅为示意非真实情况。图9二进制信号的调制二进制信号的解调由一体化红外接收头HS38B来完成,它把接收到的红外信号(图10中波形D ,也是图9中波形C) 经内部处理并解调复原,在输出脚输出图10中波形E (正好是对图9中波形A 的取反) ,HS38B的解调可理解为:在输入有脉冲串时,输出端输出低电平,否则输出高电平。可直接与单片机串行输入口及外中断相联,以实现随时接收遥控信号并产生中断,然后由单片机对编码还原。图10 红外接收头接收及输出波形3.3.2二进制信号的解调二进制信号的解码由接收单片机来完成,它把红外接收头送来的二进制编码波形通过解码,还原出发送端发送的数据。如图10 ,把波

15、形E解码还原成原始二进制数据信息101。4软件设计4.1 总体方案基于单片机的红外遥控电路系统设计中编码解码部分全部由单片机实现。即本设计为软件编解码。因此软件设计也是设计的一大重点。编码标准章节 3.3 红外编码标准已详细介绍。这里将具体讲述编解码的软件实现过程。MCS-51单片机通常使用汇编语言和C语言来进行软件开发。汇编语言是一种简单易掌握、效率较高的开发语言。其程序结构简单,执行速度快,实时性好,程序易优化,编译后占用存储空间校少,是简单的单片机应用系统开发中最常用的程序设计语言。本设计采用汇编语言进行编程,编译器采用Keil VisionV4.00a,该编译器是51系列单片机程序设计

16、的常用工具,既可用汇编,也支持C语言编译。同时具有完善的调试功能。4.2 编码发射程序设计红外发射程序任务要采集用户的按键信息,生成控制码及控制反码连同预设的系统识别码和识别码反码共同组成四个八位的二进制数据流,然后通过单片机的中断系统将以引导码开头的数据流以脉冲形式发送出去。具体编码方法本文章节3.3已有介绍。图 26为红外发射主程序流程图四个八位二进制数据调用四次数据发送子程序,最后以结束码1结尾。表示本次数据发送完毕。图 26 红外遥控发射主程序流程图图 27为红外发送子程序的流程图。它每被调用一次便将累加器中的八位二进制数据发送出去。程序从高位开始依次发送累加器中的二进制数据。为0则先

17、发送1.68ms的低电平,为1则先发送0.56ms的低电平。然后打开中断,利用八位自动重装初值定时器使T0口为产生周期26ms的脉冲,脉冲持续时间为0.56ms。脉冲发送完毕,关中断。直至八位数据发送完,本次发射子程序退出。图 27 红外发射子程序流程图中断服务程序:INTT1: CPL P3.5 ;38kHZ红外线遥控信号产生RETI ;中断返回发送子程序:OUT04: ;循环发射累加器中各数据位MOVR1,#08HOUT:RLCAACALLSENDDJNZR1,OUT ;八位数据发送完毕退出RETSEND: CLR TR1 ;关定时器T1 CLR ET1 ;关T1中断 CLR P3.5 ;

18、关脉冲输出JCSEND1 MOV R3,#08H ;发射0码SEND0: MOVR4,#69H ;0码低电平DJNZR4,$DJNZR3,SEND0 AJMP SIG ;转脉冲发送信号SEND1: MOVR3,#02H ;1码低电平SEND10:MOVR4,#8CHDJNZR4,$DJNZR3,SEND10SIG: SETB ET1 ;开T1中断 SETB TR1 ;开启定时器T1 MOV R3,#08CH ;发脉冲DJNZR3,$ CLR TR1 ;关定时器T1 CLR ET1 ;关T1中断 CLR P3.5 ;关脉冲输出RET具体发送程序见附录 3。4.4 红外遥控接收程序设计红外遥控接收

19、程序主要任务是将红外接收头发出的信号还原为二进制编码。因红外接收头输出的信号是对输入信号的求反。因此其接收到的引导码为5ms低电平和3ms的高电平,低电平引发接收端单片机中断。单片机在收到中断信号后对低电平时间进行计数,超过4ms才认定引导码有效。利用延时跳过3ms的高电平,单片机才开始接收数据。图 28 单片机对接收头输出信号的判定红外接收头输出的信号为一列方波如图28。如何将其还原为二进制中的1和0是软件设计的关键。从编码标准得知信号的1和0信号占空比不同。即接收头对信号反相后码1和0的高电平时间长度不同。由0码和1码的高低电平宽度可设定程序延时0.8ms后对信号的电平取样。若为低电平即为

20、原码的1,高电平为原码0。由上所述可知,红外遥控系统接收部分的主程序流程图如图29所示。程序首先初始化端口并开中断,随后单片机即对处于工作状态的设备计数,等待中断。引导码识别正确后单片机调用四次读码子程序,分别接收四个八位数据,并对码值进行校验,不符则跳出中断。当接收到结束码1后,单片机开始对控制码进行响应,对相关IO口置位,之后返回LED数码管显示程序。图29 红外遥控接收主程序 红外遥控接收部分读码子程序利用码1和0的电平特性对接收头输出的信号进行解码。以八位二进制码为一个循环。在高电平到达后0.8ms对P3.1口电平采样,取反后即为二进制原码,将其逐位保存到累加器中。电平采样后软件延时等

21、待下一个高电平的出现。等八位数据全部读取完毕退出子程序。图 30 红外遥控接收部分读码子程序中断接收并判断引导码:INTEX0: MOV 35H,A;采用中断接收保护现场 MOV 20H,C CLR EX0 ;关外中断 JNB P3.1,READ ;P3.1口为低电平转READ 为高电平退出OUT: SETB EX0 ;开中断(系干扰) MOV A,38H ;恢复现场 MOV C,20H RETI ;退出中断READ: CLR A ;清A 读取引导码 MOV DPH,A ;清DPTR MOV DPL,A HEAD: JB P3.1,HEAD01 ;P3.5变高电平转HARD01 INC DPT

22、R ;用DPTR对低电平计数 MOV R1,#04HDJNZ R1,$ AJMP HEAD ;转HARD循环(循环周期为16微秒)HEAD01: MOV A,DPH ;DPTR高8位放入A JZ OUT ;为0(脉宽小于16*255=4毫秒)退出 MOVR1,#0AH;3ms空隙读码子程序:READ01: MOVCODENUM,#08H;读取数据码8位CLRA ;清ALJMP READ02READ02:CLRCMOVR1,#02H ;延时0.8msREAD03:MOVR2,#0C8HDJNZ R2,$DJNZ R1,READ03MOVC,P3.1 ;取码CPLC ;还原码值RLCA ;移位赋值

23、JB P3.1,$JNBP3.1,$DJNZ CODENUM,READ02 RET具体接收程序见附录 4。5总结由于目前的遥控装置大多对某一设备进行单独控制,而在本设计中的红外遥控电路设计了多个控制按键,可以对不同的设备,也可以对同一设备的多个功能进行控制。系统可通过设定发射及接收程序中的识别码及识别反码达到不同遥控器间相互区分,对识别码、识别反码、控制码和控制码反码的判定一方面消除了非遥控信号的红外干扰,另一方面降低了误操作发生的几率。经过测试,设计结果完全达到课题任务要求。但是本电路也有不完善的地方, 由于作者时间、水平和经验有限,在信号的发射、编码、抗干扰及功耗控制等方面仍有不足之处,有

24、改进的余地。例如设计中可通过增加红外线发射功率进而增加遥控距离,改进信号编码方式以提高数据的传输速度,使用小型单片机以降低功耗等。另外在系统的调试方面,由于时间和设备的原因,只进行了短距离的调试,更多参数有待进一步的调试。在设计过程中,通过大量的查阅资料,认真研究教材,对单片机有了更为深刻的理解,在编写软件时,须仔细的分析硬件电路及所要达到的功能,然后设计程序流程,编写代码。整个过程培养了我的耐性和刻苦钻研的精神。这次毕业设计对于我来说,既是一次机遇,又是一次挑战。通过这次的毕业设计,我学到了很多东西。通过自己的实践,增强了动手能力,掌握了系统的分析解决问题的方法。通过实际工程设计也使我了解到

25、书本知识和实际应用的差别。在实际应用中遇到很多的问题,这都需要我对问题进行具体的分析,并一步一步地去解决它。参考文献1赵巍,冯娜.单片机基础及应用M.北京:清华大学出版社.2009:94-103.2高慧芳.单片机原理及系统设计M.杭州:杭州电子科技大学.2008:124-174.3聂诗良, 李磊民.采用单片机发送并接收红外遥控信号的方法J. 信息技术,2004,28(2):21-96.4施新华.利用单片机实现的红外遥控技术J.上海电机学院学报.2006,9(3):69-71.5周润景,张丽娜,丁莉.基于PROTEUS的电路及单片机设计与仿真M.北京:北京航空航天大学出版社,2010.6吴金戌,

26、沈庆阳,郭庭吉.8051单片机实践与应用M.第1版,清华大学出版社,2002.7胡伟.单片机C程序设计及应用实例M.人民邮电出版社,2003.7.8实用电子元器件手册.上海科学技术出版社M.1998.2.9赵亮,侯国锐.单片机C语言编程与实例M,第一版.人民邮电出版社,2003.9.10K. Mandai, K. Miyauchi, M. Sugimoto,Y. Natsume and K. Ookubo. AN ADVANCED INFRARED REMOTE CONTROL SENSORJ. IEEE,1990.6,36(3). 11 Michael A. Miller. Data and

27、 Network CommunicationsM.第一版,科学出版社,2002.12徐向民.Altium Designer 快速入门M.北京:北京航空航天大学出版社,2008.13杨恢先,王子菡,杨穗,陶霞.一种基于单片机的红外遥控软件解码方法J.自动化与仪器仪表.2004,(2):16-32.附录 1基于单片机的红外遥控系统发射及电源部分电路:附录 2基于单片机的红外遥控系统接收部分电路:附录 3红外遥控系统发射部分源程序: ORG 0000H ;程序执行开始地址AJMP START ;跳至START执行 ORG 001BH ;定时器T1中断入口地址LJMP INTT1 ;跳至INTT1中断

28、服务程序ORG 0030HPCODE EQU 30H ;识别码OPPCODE EQU 31H ;识别码反码BUT EQU 32H ;按键码OPPBUT EQU 33H ;按键反码START: MOV SP,#70H ;设堆栈基址为70H CLR P3.5 ;关遥控输出 MOV IE,#00H ;关所有中断 MOV IP,#01H ;设优先级 MOV TMOD,#22H;8位自动重装初值模式 MOV TH1,#0F3H;定时为13微秒初值 MOV TL1,#0F3H SETB EA ;开总中断允许 MOV PCODE,#0ABH;识别码赋值 MOV OPPCODE,#54H;识别码反码赋值 MO

29、V P2,#0FFHJIAN: MOVR1,#0EAH ;延时130MSWAIT:MOVR2,#0C8H DJNZR2,$DJNZR1,WAIT MOV A,P2 CJNE A,#0FFH,JIAN1 ;键盘寻址 LJMP JIAN JIAN1: CJNE A,#07FH,JIAN2 LJMP MN0 JIAN2: CJNE A,#0BFH,JIAN3 LJMP MN1JIAN3: CJNE A,#0DFH,JIAN4 LJMP MN2JIAN4: CJNE A,#0EFH,JIAN5 LJMP MN3JIAN5: CJNE A,#0F7H,JIAN6 LJMP MN4JIAN6: CJNE

30、A,#0FBH,NN LJMP MN5NN: LJMP JIANmn0: MOV BUT,#10H MOV OPPBUT,#0EFH LCALL REMOTE ;转发送程序 ajmp nnmn1: MOV BUT,#20H MOV OPPBUT,#0DFH LCALL REMOTE ;转发送程序 ajmp nnmn2: MOV BUT,#30H MOV OPPBUT,#0CFH LCALL REMOTE ;转发送程序 ajmp nnmn3: MOV BUT,#40H MOV OPPBUT,#0BFH LCALL REMOTE ;转发送程序 ajmp nnmn4: MOV BUT,#50H MO

31、V OPPBUT,#0AFH LCALL REMOTE ;转发送程序 ajmp nnmn5: MOV BUT,#60H MOV OPPBUT,#9FH LCALL REMOTE ;转发送程序 ajmp nn;*;* 编 码 发 射 程 序 *;*REMOTE:SETB ET1 ;开T1中断 SETB TR1 ;开启定时器T1 MOV R1,#06H ;原数值#09HOUT01: MOV R2,#0C8H ;发5ms引导码DJNZR2,$DJNZR1,OUT01 CLR TR1 ;关定时器T1 CLR ET1 ;关T1中断 CLR P3.5 ;关脉冲输出 MOVR1,#0AH ;3ms空隙OUT

32、02:MOVR2,#96HDJNZR2,$DJNZR1,OUT02OUT03: ;发射数据流MOVA,PCODEACALLOUT04 ;调用发送子程序MOVA,OPPCODEACALLOUT04 ;调用发送子程序MOVA,BUTACALLOUT04 ;调用发送子程序MOVA,OPPBUTACALLOUT04 ;调用发送子程序SETB C ;发送结束码1ACALLSEND ;调用发送子程序MOVR1,#0EAH ;延时130MSOUTWAIT:MOVR2,#0C8H DJNZR2,$DJNZR1,OUTWAITRET;*;* 发 射 子 程 序 *;*OUT04: ;循环发射各数据位MOVR1,

33、#08HOUT:RLCAACALLSEND DJNZR1,OUTRETSEND: CLR TR1 ;关定时器T1 CLR ET1 ;关T1中断 CLR P3.5 ;关脉冲输出JCSEND1 MOVR3,#08H ;发射0码SEND0: MOVR4,#69H ;0码低电平DJNZR4,$DJNZR3,SEND0 AJMP SIG ;转脉冲发送信号SEND1: MOVR3,#02H ;1码低电平SEND10:MOVR4,#8CHDJNZR4,$DJNZR3,SEND10SIG: SETB ET1 ;开T1中断 SETB TR1 ;开启定时器T1 MOVR3,#08CH ;发射脉冲DJNZR3,$

34、CLR TR1 ;关定时器T1 CLR ET1 ;关T1中断 CLR P3.5 ;关脉冲输出RET;*;* T1中断服务程序 *;*INTT1: CPL P3.5 ;40kHZ红外线遥控信号产生 RETI ;中断返回 END ;程序结束 附录 4红外遥控系统接收部分源程序 ORG 0000H LJMP STARTORG 0003H LJMP INTEX0 ORG 0030HPCODE EQU 30H ;识别码OPPCODE EQU 31H ;识别码反码BUT EQU 32H ;按键码OPPBUT EQU 33H ;按键反码CODENUM EQU 34H ;接收码数START: MOV SP,#

35、70H MOV IE,#00H ;关所有中断 SETB EX0 ;开外中断 SETB EA ;总中断允许 MOV PCODE,#0ABH;识别码初值 MOV OPPCODE,#54H;识别码反码初值MAIN: MOVR3,#0FFH DJNZ R3,$ ;持续510微秒 MOV R5,#08H MOV R6,P2 MOV R7,#08HXUN: CLR C ;对工作状态设备计数 MOV A,R6 RLC A MOV R6,A MOV A,R5 SUBB A,#00H MOV R5,A DJNZ R7,XUN MOV A,R5 MOV P1,A ;送LED显示 LJMP MAIN ;转MAIN循环NOP ;PC值出错处理LJMPSTART ;出错时重新初始化;*; 遥控接收程序;*INTEX0: MOV 35H,A ;采用中断接收保护现场 MOV 20H,C CLR EX0 ;关外中断 JNB P3.1,READ ;P3.1口为低电平转READ 为高电平退出OUT: SETB EX0 ;开中断(系干扰) MOV A,38H ;恢复现场 MOV C,20H RETI ;退出中断READ: CLR A ;清A 读取引导码 MOV DPH,A ;清DPTR MOV DPL,A HEAD: JB P3.1,HE

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论