单片机之间的短程双向光通信链路的软硬件设计 通信技术专业_第1页
单片机之间的短程双向光通信链路的软硬件设计 通信技术专业_第2页
单片机之间的短程双向光通信链路的软硬件设计 通信技术专业_第3页
单片机之间的短程双向光通信链路的软硬件设计 通信技术专业_第4页
单片机之间的短程双向光通信链路的软硬件设计 通信技术专业_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

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

文档简介

1、单片机之间的短程双向光通信链路的软硬件设计 摘 要随着遥控设备的普及,传统的开/关已经不能满足市场的需求。人们希望电器在体积小、作方便等的基础上能够拥有更多的功能,而红外遥控的广泛应用及单片机技术的成熟,则使得智能红外遥控系统成为了远程遥控控制设备的发展趋势。本设计采用51单片机作为遥控发射接收芯片,HS0038作为红外一体化接收发射管,在此基础上设计了一个简易的智能红外遥控模拟系统。系统包括接收和发射两大部分。另外本系统有多个按键,可用于扩展控制其他电器。本设计方案基于市场的需求,结合红外遥控设计简单、作方便、成本低廉等特点。关键字: 红外遥控; 信号调制; 编码; 解码; Abstract

2、With the popularity of remote control devices, traditional on/off has not been able to meet the needs of the market. People hope that electric appliances can have more functions on the basis of small size and convenience. The wide application of infrared remote control and the maturity of single-chi

3、p technology make the intelligent infrared remote control system become the development trend of remote control devices.This design adopts 51 single-chip microcomputer as the remote control transmitting and receiving chip, and HS0038 as the infrared integrated receiving and transmitting tube. Based

4、on this, a simple intelligent infrared remote control simulation system is designed. The system consists of two parts, reception and transmission. In addition, the system has multiple buttons that can be used to expand and control other appliances. The design scheme is based on the needs of the mark

5、et, combined with the infrared remote control design is simple, convenient, and low cost. Keywords: Infrared Remote Control; Signal Modulation; Encoding; Decoding。目 录摘 要2Abstract31 绪论11.1 课题设计目的及意义11.2 红外遥控的设计思路12 课题的方案设计与论证22.1 红外编码方案22.2 硬件系统设计架构32.3 系统功能需求63 系统的硬件结构设计63.1 AT89C51系列单片机功能特点63.2 红外发

6、射电路103.3 红外检测接收电路113.4 光电耦合控制电路123.5 电源电路设计133.6 LCD1602显示部分的设计143.7 键盘设计164 系统软件的设计184.1 定时/计数器应用184.2 遥控码的发射214.3 红外接收234.4 按键抖动问题264.5 系统的软硬件的调试27结 论29参考文献30附 录31附录1:发射程序31附录2:接收程序37附录3:红外发射电路图46附录4:红外接收电路图46致 谢471 绪论1.1 课题设计目的及意义随着科学技术的发展,人们的生活节奏越来越快,对方便和速度的要求也越来越高。遥控器的外观在一定程度上满足了这一要求。遥控是由多产的发明家

7、Luobote在20世纪50年代发明的,红外遥控是20世纪70年代发展起来的一种遥控技术。它的原理是利用红外线发送控制信号来实现对被控对象的远程控制,尤其是发送红外信号的发射机,接收和处理信号的接收机。最终实现各种功能的遥控器。 红外遥控具有独立性、物理特性和可见光相似性,无穿透障碍物能力,隐蔽性强等特点。随着红外遥控技术的发展和迅速发展,许多电器被用于红外遥控。红外遥控技术的成熟,也使得遥控风扇设计简单、成本低廉。 本设计通过红外遥控仿真,实现了红外遥控按键的模拟。1.2国外研究现状红外遥控技术的发展起源于20世纪,最初主要是由一些发达国家进行研究的技术,由于各项技术发展不成熟,所以也导致其

8、红外遥控技术发展也不顺利,二十世纪七十年后,随着各项计算机技术以及各种集成电路技术的不断发展,红外遥控技术也得到快速的发展。并且通过多年技术积累,红外遥控技术都开始不断的完善与进步。遥控技术的发展由最初的有线遥控发展到可以颈无线遥控。这都是遥控技术的巨大飞跃。最初的无线遥控技术主要是由电磁波来进行信号的控制,但是由于电磁波信号在传输工程中很容易受到干扰,因此关于信号的遥控开始使用红外线信号进行信号的传递。红外遥控技术的发展得到了许多pc企业的支持,例如微软、苹果等公司的支持,并且都在计算中选择采用高速红外通信在pc机上。1.3国外研究现状红外遥控技术主要应用在家电的使用上,红外遥控因为在进行信

9、号接收时,不会受到外界因素的影响,在使用其他电器时也不会影响红外信号的传输,并且它的价格便宜、设置编码简单。所以得到了很大的发展。目前我国关于红外遥控类型的电子元件竞争不叫激烈。这也是导致其元件价格比较低廉。从短期来看,这样的竞争对消费者很有利,但是从长远角度来看,随着竞争的恶性循环,随着价格的走低,导致其质量也会出现下降。因此对我国红外相关技术很不利的。所以红外遥控技术道路还需要走很远。1.4 红外遥控的设计思路1.4.1 红外线简介红外线,又称红外线光波,可见光和不可见光可以根据不同的波长来划分。波长为0.38微米0.76微米的光波可以是可见光,其次是红、橙、黄、绿、绿、蓝、紫。0.01微

10、米0.38微米的光波是紫外线(谱线),0.76微米1000微米的光波是红外线。红外光按波长范围分为近红外、中红外、远红外和极端红外。红外线遥控是利用近红外线来传送遥控指令,波长0.76微米1.5微米。近红外光被用作远程光源,因为目前红外线发射器(红外线发射管)和红外线接收装置(光电二极管、晶体管和光伏电池)的光和光的峰值波长一般为0.8微米至0.94微米,在近红外波段,光谱重叠可以很好地匹配,以达到更高的传输效率和高可靠性。1.4.2 红外遥控系统简介红外遥控系统主要由遥控发射机、集成接收头、单片机、接口电路组成,如图1所示。远程控制用于产生远程控制编码脉冲,驱动红外发射管输出红外远程控制信号

11、,远程控制接收头完成对远程控制编码脉冲的放大、检测、定型和解锁。远程控制编码脉冲是一组串行二进制码。对于一般的红外遥控系统,该串行码被输入到微控制器中,其内部cpu完成遥控指令的解码,并执行相应的遥控功能。利用遥控作为控制系统的输入,需要解决的关键问题有:如何接收红外遥控信号;如何识别红外遥控信号和解码软件的设计、控制程序的设计。2 课题的方案设计与论证2.1 红外编码方案有许多方法可以编码红外代码。 以下是两个实现选项:解决方案1:脉宽调制串行码。 遥控代码具有以下特征:脉冲宽度为0.565毫秒,间隔为0.56毫秒,周期为1.125毫秒,表示二进制“0”; 脉冲宽度为0.565毫秒,间隔为1

12、.685毫秒,周期为2.25毫秒,表示二进制“1”。 相关波形图如图2-1所示:图2-1 串行码编码选项二:代码共享。用脉冲数编码,不同的脉冲数代表不同的控制对象,至少有2个脉冲。为便于可靠的接收,第一码宽度为3ms,其余为1ms,距离控制码数帧间隔大于10ms,如图2-2所示。电器0的遥控输出码电器1的遥控输出码图2-2 码分制编码波形图该设计采用第二种方案,码分编码易于编程,并且在按钮较少的情况下优点很明显。2.2 硬件系统设计架构2.2.1 手持段遥控器电路框图:单片微机系统由显示电路,红外传输电路,按钮电路,稳压电路等组成。该手持式遥控电路设计示意图如图2-3所示。图2-3手持段遥控器

13、方框图2.2.2 红外接收端电路框图:单片机系统和显示电路,红外发光电路和按钮电路,电源电路,控制单元等。 红外接收器设计示意图如图2-4所示。 图2-4 红外接收端方框图2.2.3 红外遥控的现状目前,家用电器最常用的遥控方法是红外遥控。红外遥控器不会对周围环境产生影响,也不会干扰其他电气设备。价格低,编码简单,使用红外遥控器进行遥控非常有利。由于红外集成接收头的外观,红外遥控器的成本和技术难度大大降低。目前,它不仅用于家用电器领域,还广泛应用于玩具,安防等领域。红外遥控系统主要由红外遥控发射器,红外接收装置和遥控微处理器组成。因此,遥控系统是涉及单片微计算机的数字系统。目前,我国红外遥控电

14、子元器件的竞争非常激烈,导致价格低廉,对消费者有利。然而,长期的恶性竞争和价格的相互压力将不可避免地导致产品质量下降。最终的损害只能由消费者造成。红外遥控技术的发展前景仍然十分广阔,但红外遥控技术的发展现状并不乐观。红外遥控器是一种单红外通信方法。在整个通信中,需要发送器和接收器。发送端使用单片机调制发送的二进制信号,使其成为一系列突发信号,并通过红外发射管发送红外信号。红外接收端一般采用集成红外接收头,接收红外信号成本低,性能可靠。同时,对信号进行放大,检查和整形,得到ttl级编码信号,然后发送到单片机进行解码和控制相关对象。 图2-5 遥控器原理框图2.3 系统功能需求 远程控制系统需要单

15、片机作为控制芯片来执行远程控制4,并且可以远程控制其他单片机控制系统。 主芯片控制采用AT89C51单片机,接收头采用红外HS0038,采用LCD1602模拟显示遥控器按键的按键值,从而实现控制红外遥控功能。3 系统的硬件结构设计3.1 AT89C51系列单片机功能特点对于主控芯片的选择需要满足很好兼容性,同时也可以实现对各种数据的检测如对键盘参数的的检测,此外,也可以实现对显示器的驱动,保证其正常的工作,基于以上要求,我们在主控芯片的选择上所采用的是AT89C52单片机。该单片机的引脚数一共为40个,其中有一个引脚为两个串行口,16位的计时器以及定时器有2个,中断源的数量为5个,并行的8位I

16、/O口数量为4个以及优先级端口2个。它的存储系统是由ROM以及182B的RAM所组成。具体的结构框图见3.1图。图3-1 微处理器的组成结构3.1.1 STC89C52微型处理器的参数情况1具有八位的中央处理单元。2.对信号进行存储的模块就是来对数据信息以及系统信息进行储存的器件。当前而言微处理的发展是朝着集成化的方向发展,也就是把RAM以及ROM集成在微处理器当中,这样做的目的是为了提高其抗。4.对于这2个定时器与计时器来说它们主要是用来对数据进行计数或者是准确的将计算的结果进行表示出来,同时它还可以实现对外部的数据进行计数以及定时。在目前的51系列单片机中为了能够方便的对串行通信进行设计,

17、一般都设置了3个16位的计数器以及定时器。 5.4个并行的I/O口即P0P3口,主要的作用是实现数据的输入和输出功能。可以用作输入。7.其中SST89E58RD这个类型的微处理器,它的中断源9个。而他只有五个中断源的中断控制系统。8. 51类型的单片机内部具有时钟电路并且可以外部连接一个时钟电路,其中能够振动的频率为十二赫兹,但是SST89E58RD执行相应速度是51的好几倍,其中最大为四十赫兹。9.UART这个端口的主要作用就是实在微处理器和电脑或者是微处理器之间的连接功能。AT89C52微处理器的引脚图见3-2。图3-2 AT系列的51端口图重要的端口进行介绍:1两个进行时钟电路连接的 端

18、口XTAL1 与XTAL2:XTAL1(19引脚):该引脚的主要功能是实现对外部晶体以及外部的微调电容的链接,同时它可以实现信号的放大作用。在连接时钟时候,应该对19引脚进行接地。XTAL2(18引脚):连接外部晶体和微调电容的一端; 这一引脚也可以实现外部的时钟脉冲电路。2对信号进行控制的9号端口:当RST的信号在1位的时候,可以开始工作,进行系统的初始化工作 。当其电源出现故障的时候,由原来的高电平降低到为低低电平,同时它的工作周期为,每一个循环为一个机械周期,所以会产生复位情况,单片机的端口功能是vpd。30端口:当其引脚的锁存信号为低信号时才可以对外部CPU进行访问。当其输出的是1/6

19、的正脉冲信号时,这就使得无法对片外的存储器进行访问,所以外部输出时钟或定时信号不能是ALE信号。 如果需要检测其芯片的质量是否有问题时,只需要测量其是否有脉冲信号的输出即可。 如果8051/8031基本上是好的,通过执行就会产生信号,之后对其进行输出读写工作。 EA / Vpp(31引脚):这一引脚主要是用来实现对外部程序的输入操作的。当ROM或者是EPROM被外部的CPU进行访问时,且EA引脚为低电平时,不管片上程序存储器若何。 关于没有片上ROM的8031或8032,在EA引脚必要接地的情况下,必要扩展EPROM。 该引脚的第二个功能是当Vpp被编程为更高的施加电压(每每为12V至21V)

20、时,Vpp是8751片内EPROM的输入8。 PSEN(29引脚):信号端子可以被程序存储器许可输出。 该肢体连接到EPROM的OE端(参见以下章节中的一切小型系统硬件图)。 PSEN端子有可以读取EPROM / ROM中的指令代码的作用。8个LS型TTL负载还可以被PSEN端子驱使。假如需要在该最小系统通电后,检查其能否正常工作时,可以通过CPU是否可以读取ROM或者EPROM中的指令。3P0P3这四个端口主要是作为输入或者输出端口。在需要CPU进行外部访问时,其中p0位置是信号的总线内部存在上拉R。 P1模块:其中它的模块中也有一个内部上拉R,同时它也是作为一个准双向的8位I / O口使用

21、。它也是一个八位的端口。 P1的每个端口能够驱动并且带有四个负载,对外部进行数据的访问,以及信号的 传输时都有八个进行输入和输出口P2模块:该模块中内部具有一个上拉阻值的R其中。P2的每个端口能够驱动并且带有四个负载,对外部进行数据的访问,以及信号的 传输时都有八个进行输入和输出口P3模块: 4个LS型TTL负载可以被P3的每个端口驱动。 P3的每个端口能够驱动并且带有四个负载,对外部进行数据的访问,以及信号的 传输时都有八个进行输入和输出口其中任意一个连接处都有具体的功能,如下所示:P3.1:对收集的信号进行传输。P3.2:当为0值的时候,外部中断进行工作。P3.3:当为1值的时候,外部中断

22、进行工作。P3.4:当t0为低电平的时候,开始进行计数工作。P3.5:当t1为低电平的时候,开始进行计数工作。P3.6:(WR#)对外部信息进行写的选通。P3.7:(RD#)对外部信息进行读的选通。P3.0:(RXD)串行数据接收。3.1.2 AT89C52单片机的中断系统该系列的微处理器中的MCU终止系统可以实现对二次服务的功能,它具有中断源的数量为5个,它的优先级的数量为2个。IE寄存器通过对CPU的控制来实现中断功能。同时中断的顺序也是有一个先后的,这主要是取决于这些数据是否存储在优先级的寄存器中。微处理器的最小系统(MCU)是由时钟电路以及复位电路所构成的。 有一功能是为MCU提供时间

23、参考。该功能是时钟电路运用12MHZ晶体振荡器提供时钟。 在一个机器周期内进行一个指令信息的操作。在复位键单片机将恢复到原来工作状态。 在图中,10K电阻是P0端口的上拉电阻。之所以所以它是一个开漏结构,是由于P0端口与其他IO结构各异。 因此,必要添加一个正常使用的上拉电阻。图3-3 微控制器的最小系统图在微控制器的最小系统中,需要按照严格的时间要求来进行输出、扫描以及检测等相关的操作。该单片机具有2个可以进行编程的计数器以及定时器。3.2 红外发射电路遥控发射器采用码分遥控模式,码分红外遥控器是指命令信号发生电路用不同的脉冲码(不同的脉冲数和组合数)表示不同的控制指令。在确定选择AT89C

24、51作为设计发射器电路的核心芯片并选择触摸开关作为控制键之后,可以通过添加简单的红外发射器电路和12M晶体振荡器来实现红外辐射。传输部分的主要部件是红外发光二极管。实际上,它是一种特殊的发光二极管,其内部材料与普通发光二极管不同,因此当施加一定电压时,它会发出红外光而不是可见光。目前,许多红外发光二极管发出的红外波长约为940nm,形状与普通5发光二极管相同,但颜色不同6。遥控器通过键盘发送,并且每次按键产生具有不同代码号的脉冲,代码命令信号用40kHz载波调制,并且红外光电二极管被激励以产生不同的脉冲。遥控接收器P1端口用作按钮单元,P0.7端口用作发送器。电路图如图3-5所示。图 3-4

25、红外发射电路3.3 红外检测接收电路在接收过程中,脉冲通过光学滤波器和红外二极管转换成40KHz电信号,放大,检测,整形,解调并传输到解码接口电路,完成相应的遥控功能。 3-9。通常,红外遥控器使用40 kHz载波进行调制,缓冲并放大遥控信号(二进制脉冲编码)并将其发送到红外光电二极管以产生红外信号。遥控编码脉冲在载波信号上以40kHz的频率(周期为26s)执行脉冲幅度调制(PAM),缓冲放大,并将其发送到红外管进行传输。根据远程信号编码和传输过程,遥控信号的识别或解码过程在去除40KHz载波信号后识别二进制脉冲码中的0和1。它由MCS 51系列单片微型AT89C51,内置红外接收器,减少调制

26、和红外管驱动电路组成。接收器的主要部件是红外光接收管,它是一个光电二极管(事实上,三极管和低音非常敏感)。在实际应用中,红外接收二极管必须反向偏置,红外接收二极管在电路中反转,从而产生高灵敏度。图3-5 红外接收电路3.4 光电耦合控制电路 在控制部分的分离的驱动器电路被使用,并且一个光电装置被用作绝缘部件和光学耦合器,用于隔离所述强电功率,以避免强电功率会影响单片机的操作。光隔离的目的是将两个电路的电气连接彼此独立地分开,从而中断从一个电路到另一个电路的噪声路径8。光电隔离通过光耦合器实现。光耦合器,也称为光隔离器或光耦合器,是一种通过光传输电信号的设备。照明器和感光器通常封装在一个封装中。

27、当输入端子被供电时,照明器发射光,并且它已经接收的光后,将产生的光电流,并从输出端,由此实现了“光电光源”的转化流出。光耦合器是一种装置,其中发光二极管和光电晶体管容纳在单个壳体中。外壳有金属或塑料两种。发光二极管和光电晶体管填充有透明绝缘体,电弧管与光敏管对准以提高其灵敏度。光电耦合器的电路图标如图3-10所示。在数字大小中,光电晶体管关闭,输入具有低电平“0”,输出具有高电平“1”;当输入为高电平“1”时,光电晶体管饱和,输出为低电平。 “0”。图3-6光电耦合器原理图输入信号使用发光二极管发光,并且光使光电晶体管产生电信号输出,完成信号传输并实现电隔离。光耦合器的响应时间通常不超过几微秒

28、。光电耦合器的输入和输出是电隔离的,输出没有反馈到输入。这在隔离和干扰防御方面实现了独特的性能。光耦合器通常用于实现以下两个主要功能:电平转换:电平转换可以通过在TTL电路和电源电路之间发送没有匹配电路的信号来实现。隔离:由于此时信号电路和接收电路是隔离的,即使两个电路的接地电位不同,也不会产生干扰。在光电耦合器中,光电晶体管的基极有两种提取和非提取。基线通常通过电阻接地。耦合的反应速率和灵敏度可以通过接地电阻来控制。通常,电阻越小,响应速度越高。其控制电路如图3-7所示。图3-7 光电耦合控制电路3.5 电源电路设计直流稳压电源主要由变压器,整流电路,滤波电路和稳压电路组成。 框图如图3-9

29、所示。图3-8 直流稳压电源3.6 LCD1602显示部分的设计LCD1602特点:每行输出16个字符、有两行、不带中文字库(只能显示数字、字母和普通字符)。此设计不检测液晶的忙与闲,采用软件延时来等待 液晶的忙操作时间。图3-9 显示模块LCD1602连接方法:D0D7口接P0.0P0.7、接10K上拉电阻提高驱动能力。程序流程解释:读状态:RS为低电平、R/W为高电平、E为高电平 、D0D7=状态字1读数据:RS为高电平、R/W为高电平、E为高电平、D0D7=数据。写指令:RS为低电平、R/W为低电平、D0D7=指令码、E=高电平。写数据:RS为高电平、R/W为低电平,E为高电平,D0D7

30、=电平。液晶LCD1602模块在进行显示前要对模块进行初始化设置,包括光标、清屏等设置,当需要显示时,对液晶写地址控制,接着把要显示的数据写入,液晶显示程序中,按照时序进行编程,对液晶显示操作会非常容易,LCD1602的显示流程 连接方式如下:电源连接:1脚接地、2脚接正,为1602供电。背光连接:15、16脚接正和负提供背光电源。亮度调节连接:5脚接电阻调背光。对比度调节:3脚接电阻调对比度。控制脚:RS、R/W、E接P2.0、P2.1、P2.2控制液晶。数据口连接:连10电阻接P0口。3.7 键盘设计键盘和键盘使用的SCM系统,编码两种类型的非编码键盘。键盘本身包含用于除了键之外还生成键码

31、的硬件电路。只要一键按下键盘编码,就可以产生这个键的代码,并且调用键码,同时还会产生一个脉冲信号,提醒CPU接收键码,编码的好处是使用键盘更方便,也没必要为复杂的程序写。缺点是使用的硬件更复杂。2非编码键盘的键以行和列的形式排列。只是使接触开启或关闭的关键作用,因此与相应的程序协调,生成相应的键码,键盘几乎任何非编码电路都不需要额外的硬件。所以对于一个简单的电路我使用非编码键盘。然而,识别出非编码键盘的使用需要由软件解决,以及如何用键码来解决问题。与微控制器的公式I无关的少数主要原因是连接到键盘接口,因为它使I / O端口变小。图中的每个按钮都有一个端口,彼此独立,并且不会相互影响。当上拉电阻

32、确保未按下按键时,I / O端口输入为高电平。独立键盘可以在查询模式下运行,并通过I / O端口读取密钥模式。按下某个键时,I / O端口变为低电平,未按下的键对应高电平。因此,通过读取水平条件,您可以判断是否有按键和按下哪个键。图3-10 按键原理图发射端采用矩阵按键,其中0,1,2按键用于风扇的定时,模式,调速切换。其他按键用于扩展控制其他家用电器,如电脑等,也可以用于设置密码锁等功能,其具体事情由用户自己设定。而接收端采用独立按键,根据不同的电器,其具体功能各不相同。本设计中,P1.0用于定时切换,P1.1用于模式切换,P1.2用于调速切换。4 系统软件的设计系统的控制软件可分为两个主要

33、部分:温度测量和红外。 其中包括MCU初始化程序,定时服务程序,红外发射编码和红外接收解码程序等模块。4.1 定时/计数器应用4.1.1 定时/计数器功能简介AT89C51微控制器有两个16位可编程定时器/计数器,称为定时器0和定时器1,分别由T0和T1表示。 该功能与通用定时计数器相同。 主要功能是:首先,作为一定时间的时间,第二,可以计算T1或T0引脚引入的脉冲数,前者可以在应用中产生正确的时间延迟和时序。 执行中断程序,后者是计数器或计数器的设计。 这两种角色都用于此设计12。两个定时器本身有四种工作模式,如表4.1所示。表4-1 四种工作模式M1 MO工作方式功能说明0 0模式013位

34、计数器 0 1模式116位计数器1 0模式28位自动重装计数器1 1模式3定时器0:分成两个8位计数器定时器1:停止计数4.1.2 定时器相关的控制寄存器门:港口位置。当GATE = 0时,定时器仅由软件控制位TR0或TR1控制。当该位为1时,定时器开始工作,当它为0时,定时器停止工作。当GATE = 1时,定时器的启动由外部中断引脚和位控制。定时器只能在外部开关为高电平或高电平时启动。C /:功能选择位。当C / = O设置为定时器模式进行操作时,内部提供计数脉冲,计数周期等于机器的周期。当C / = 1时,它被设置为计数器操作模式,而计数器脉冲是由外部引脚T0或T1引入的外部脉冲信号。M1

35、,M0:工作模式控制位,2位可形成4个代码,对应4种工作模式。TMOD模式控制寄存器位寻址不能执行,定时器只能通过工作状态和字节传输指令模式设置,低4位用于定义时间0,定时高4位用于定义1。系统复位时,TMOD的所有位均为0。设置模式控制字的示例:如果定时器设置为由软件启动的定时器模式,则选择操作模式2,定时器0计数,软件激活,操作模式选择。然后将TMOD设置为:0 0 l 0 0 1 0 l 25H使用MOV TMOD,25H指令写入TMOD。2个控制寄存器 - TCONTCON的作用是控制定时器的启动和停止以及定时器的溢出标志和外部中断释放模式。所有定义如下:表4-2 TMOD寄存器D7D

36、6D5D4D3D2D1D0GATEC/M1M0GATEC/M1M0门:港口位置。当GATE = 0时,定时器仅由软件控制位TR0或TR1控制。当该位为1时,定时器开始工作,当它为0时,定时器停止工作。当GATE = 1时,定时器的启动由外部中断引脚和位控制。定时器只能在外部开关为高电平或高电平时启动。C / = O:功能选择位。当C / = O设置为定时器模式进行操作时,内部提供计数脉冲,计数周期等于机器的周期。当C / = 1时,它被设置为计数器操作模式,而计数器脉冲是由外部引脚T0或T1引入的外部脉冲信号。M1,M0:工作模式控制位,2位可形成4个代码,对应4种工作模式。TMOD模式控制寄

37、存器位寻址不能执行,定时器只能通过工作状态和字节传输指令模式设置,低4位用于定义时间0,定时高4位用于定义1。系统复位时,TMOD的所有位均为0。设置模式控制字的示例:如果定时器设置为由软件启动的定时器模式,则选择操作模式2,定时器0计数,软件激活,操作模式选择。然后将TMOD设置为:0 0 l 0 0 1 0 l 25H使用MOV TMOD,25H指令写入TMOD。2个控制寄存器 - TCONTCON的作用是控制定时器的启动和停止以及定时器的溢出标志和外部中断释放模式。所有定义如下:表4-3 TCON寄存器8FH8EH8DH8CH8BH8AH89H88HTF1TR1TF0TR0IE1IT1I

38、E0IT0TF1和TF0分别为;小时1小时0过渡标志。当计时器到期时,硬件自动设置为“1”并可能请求中断。输入中断路线计划后,硬件会自动删除。这两个也作为标志程序问题,应该删除软件中正在进行的查询。TR1和TR0:定时器1和定时器0的启动控制位。当软件删除TRi时,定时器停止。定时器启动时,该位应设置为“1”。定时器的启动与门控位和外部中断键有关。当门设置为0时,定时器由控制器tri = 1触发;当门设置为1时,定时器另外启动tri = 1,但只有在定时器开始操作时才需要外部分接中断= 1。IE1和IE0:外部中断和外部中断请求标志为0.当外部中断源有相应的中断请求标志“1”时。通过快门模式设

39、置重置。IT1和IT0:外部中断和外部中断触发模式选择位0. ITI当设置为“0”电平触发模式时,边沿触发模式时设置为“1”。TCON与低4位和外部中断相关联,高4位时间位。有一个可以稍微解决的寄存器。系统复位时,所有位均为0。要启动计时器,您可以使用该位操作命令SETB TRi已启动。4.2 遥控码的发射4.2.1 遥控码的发射当按下一个键时,微控制器首先读出键并根据键设置远程代码中的脉冲数,然后产生红外发射管发出的40 kHz方波。通常,红外遥控器是一个遥控信号(二进制脉冲码)调制在40kHz的载波上,经过缓冲放大器到红外发光二极管,转换正在传输的红外信号。为了提高抗干扰性能和降低功耗,上

40、述遥控编码是40kHz脉冲率(周期26us)载波信号脉冲幅度调制(PAM)然后通过缓冲放大器传输红外LED,遥控信号发射。红外信号传输程序:首先,充电点火脉冲的数量(当辐射为3毫秒时脉冲,以1毫秒的脉冲暂停),如果发射的脉冲数1回到常规,如果毛发是1毫秒脉冲然后暂停1 ms脉冲,从而结束了爆炸。在实践中,通过使用红外遥控器,由于受影响的远程距离,角度等不是很好用,例如通过发送和接收FM或PM代码,可以增加远程距离,并且不影响角度4.2.2 发射端程序流程图排放控制程序包括主程序和键扫描程序以及代码传输程序。 在主程序中,键扫描子程序用于完成每个按钮的功能。 遥控器主程序的流程图如图4-1所示:

41、图 4-1遥控发射主程序流程图图4-2 遥控发射器遥控码发射程序流程图4.3 红外接收 遥控接收部分的主程序和初始化和延迟过程如下:首先,初始化,然后考虑是否有击键,如果是,数码管显示数据并发送相应的信号,如果没有按下键,则返回。4.3.1 数码帧的接收处理当红外接收器发出脉冲帧数据时,第一位代码的低电平启动中断程序并实时接收数据帧。 当接收到数据帧时,代码被确认为第一位(起始位)代码的宽度。 如果第一个低电平代码的脉冲宽度小于2 ms,则将其视为错误代码。 当间隔位的高度脉冲宽度大于3ms时,终止接收,然后根据累加器A中的脉冲数执行相应输出端口的操作。图4-3是从红外接收器(14)输出的遥控

42、代码的波形。1ms第一位1ms10ms3ms10ms图4-3 红外线接收器输出的一帧遥控码波形图4.3.2 接收端程序流程图图4-4 遥控接收器主程序流程图中断过程:首先,确定低电平脉冲宽度是否大于2 ms,如果脉冲宽度小于2 ms,则中断返回,如果低电平大于2 ms,则接收到如此低的脉冲数,然后看到高电平脉冲宽度是否大于3 ms,如果脉冲宽度小于3 ms,则返回上一个接收编号处理,如果高电平脉冲宽度大于3 ms,则使用相应功能程序的脉冲编号。图4-5 遥控接收器中断程序流程图4.4 按键抖动问题键盘通常由一组根据特定规则的机械按钮组成,并且开关电压信号通过按钮打开和关闭输入。当按钮断开与关闭

43、并关闭以脱离时,由于机械触点的弹性效应,按钮的动作不会立即完成。在立即关闭和打开的情况下,发生机械抖动并且振动时间通常为5-10ms。输入电压信号的不稳定电平是输入信号是抖动,信号波形如图4-6所示。按钮关闭的固定时间由我的按钮时间决定,通常在几秒到几秒之间。为了消除键抖动的影响,保证在键关闭时读取键值并且键必须首次亮相。管理。常用的去抖措施是硬件去抖和软件去抖。硬件去抖使用硬件电路方法去抖键盘的按键抖动并释放抖动。去抖电路后,按钮上的电平信号只有两个稳定状态。常用的去抖电路包括触发去抖电路和滤波器去抖电路。硬件去抖电路如图4-7所示。图 4-6 按键抖动波形 图 4-7 硬件消抖路 硬件去抖

44、电路解决了关键的抖动问题,但是当需要几个按钮时,硬件去抖电路就会出现问题它变得复杂并且成本很高。此时,您可以使用软件录制方法。软件播放的基本原理是,当第一次按下按键时,根据按键抖动时间的统计规则,软件延迟方法用于延迟一段时间(通常为10ms-20ms),然后确认按键是否仍然关闭。如果它仍然关闭,则实际按下该键。此时,可以读取键值。否则,它可以被视为干扰,它将被忽略。程序去抖方法可以存储硬件去抖电路,并且可以降低键盘的工作速度。在该设计中,使用软件记录并且软件延迟方法用于延迟时间段以确认密钥是否保持关闭。4.5 系统的软硬件的调试完成系统硬件检查后,软件主要是故障排除。 遥控器的故障排除主要是用示波器观察图4-3所示的波形是否可以传输到遥控接收器。 调整发射引擎的大小可以改变红外发射。作用距离。 其业绩指标:故障排除后的系统性能指标测试如下:最大遥控距离:10米转接器角度:水平最大90度硬件电路完成并调试完成后,程序可以编译并下载到MCU进行试运行。软件错误程序显示在附录I和II中。结 论这次毕业设计历时至少持续了三个月才找到一个主题,从开始到后来的数据,理论研究,然后它是最新的完成和测试过程,做了所有这些我的理论知识和实践能力进一步提高。通过这

温馨提示

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

评论

0/150

提交评论