红外线空调智能控制器的设计_第1页
红外线空调智能控制器的设计_第2页
红外线空调智能控制器的设计_第3页
红外线空调智能控制器的设计_第4页
红外线空调智能控制器的设计_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

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

文档简介

1、引 言单片机是一种特殊的计算机,它是在一块半导体芯片上集成了CPU,存储器RAM,ROM以及输入输出借口电路,由于单片机的集成度高,功能强,通用性好,特别是它的体积小,重量轻,能耗低价格便宜,可靠性高,抗干扰能力强和使用方便等独特优点,使单片机迅速得到了推广运用,目前已成为测量控制应用系统中的优选机种和新电子产品的关键部件。红外遥控技术在这十年中也得到了迅猛的发展,尤其是在家电领域如彩电、VCD、空调等地方,在其它电子领域也得到了广泛应用。随着人们生活水平的提高,对新产品的追求是方便且智能化,红外遥控技术正是这一重点的开发向。随着空调器普及率的提高,空调遥控器的品种和产量不断上升,如何为空调搭

2、配方便好用操作稳定的空调遥控器,使它能够满足短的设计和生产周期,能够在大批量生产时有较强的价格竞争力的空调遥控器是众多遥控器设计和生产厂商面临到的一个问题,本课题通过单片机红外线遥控发射技术,实现对空调实现控制空调制冷、温度、制热等功能的实现,从而达到遥控器的体积小、功耗低、功能强、成本低的目的。1 系统设计的总概括1.1系统设计思路本设计利用AT89S52进行总体控制,接收和处理系统设计的几个模块的遥控器信息并与PC机进行通信;利用C语言编程完成整个系统的对市内温度控制模式。使遥控完成空调器空调模式运用、在自动情况下,如果室内温度小于所设的下限值,空调关。如果室内温度大于所设上限值,强制开空

3、调。手动设置温度上下限,并用LMC1602显示当前运行模式、工作状态和当前室温等。1.2系统软硬件方案的提出1.2.1 硬件方案的提出本系统以实现模拟空调机的红外遥控器的操作。该控制器在预先设置空调启动时间,空调启动的温度最低和最高温度阈值等参数后, 一旦满足操作条件,控制器将自动启动空调机。本设计最初的设计是基于红外发射电路,存储电路模块电路,RS232通信模块电路,时钟模块电路,数字温度传感模块电路,液晶显示模块电路,复位电路,按键部分,系统电源电路9个模块组成(系统总硬件电路图如附录1)。(1)红外发射电路根据设计电路要实现的功能对红外进行编码,当按压功能指令键盘时,产生经过调制的串行编

4、码,通过激励电路,驱动红外发光二极管发光,发射给接收端。(2)存储电路模块本模块主要由AT24C02与单片机连接。用于模拟I2C接口,用于存储本设计中的红外编码的数据信息,以防止系统掉电后数据丢失,保证数据的可靠性。且足够的存储空间可用于以后的扩展功能指令存储。(3)RS232通信模块电路本模块主要由RS232与PC、单片机连接,完成PC机和单片机的数据通信功能。作为日后系统功能扩展,以满足家居,办公等PC通信控制温度的系统完善运用参考。(4)数字温度传感模块电路由数字温度传感器DS18B20与单片机连接组成 ,用于测试采集温度数据。(5)时钟模块电路本模块由DS1302与单片机连接,使系统具

5、有实时性,由时钟芯片DS1302给系统提供时钟信号(年,月,日,时,分,秒),并通过I/O口连接方式,对DS1302写入数据和读取数据。(6)液晶显示模块电路本模块使用了LMC1602液晶显示与单片机连接,用于读取显示设计中要求显示的各项数据(年,月,日,时,分,秒,上下限温度,现时温度,定时时间),并与按键一起用于系统运行参数的设定(包括分辨力、上限和下限超限报警等)及运行状态与测温结果(包括读出64位ROM 码和各点测温值)的显示。(7)复位电路本系统的复位电路上电后或按下开关系统复位,使处于随机状态的内部各寄存器数据复位为原值。(8)按键部分用于存储后功能操作,作为人机交互接口的信息输入

6、,输出。(9)系统电源电路由三端稳压7805稳压和在输入和输出两端各接100UF电容组成,用于系统电源稳定。1.2.2 软件方案的提出本系统软件编程采用的是C语言编程,运用Keil uVision3平台进行编程,进行编程查错,再通过编程器下载程序(系统总设计程序如附录2)。针对硬件设计模块,软件部分也采取分模块编程,再通过主程序调用实现系统功能。使用模块化结构形式是为了使程序的组装、调试及控制系统方案变的方便,也为了便于推广到其他过程控制对象。控制程序共有5部分子程序,分别为遥控发射程序、测温控制程序、液晶显示程序和扩展功能RS-232通信控制部分。主程序在初始化完成后,依次循环执行上述子程序

7、,分别实现其相应功能。此外,还有三个中断服务程序,分别是时钟中断程序,24C02驱动中断程序和红外发射中断程序。2 系统硬件部分理论分析及设计2.1 单片机应用及ATMEL89S52芯片结构2.1.1单片机应用在一个应用系统中,只使用一个单片机,这是目前应用最多的方式。单片机应用的主要领域有:(1)智能产品单片机与传统机械产品相结合,使传统机械产品结构简化,控制智能化,结构成新一代机电一体化产品。目前,利用单片机构成的智能产品已广泛应用于家用电器,办公设备,数控机床,纺织机械,工业设备等行业。(2)智能仪表目前各种传感器,变送器,控制仪表已经普遍采用单片机应用系统。它集测量,处理,控制功能于一

8、体,具有各种智能化功能,如存储,数据处理,查找,判断,联网和语音功能。单片机构成的职能仪表,能使仪表具有数字化,智能化,多功能化,综合化,柔性化等特点,赋予测量仪表以崭新的面貌,使传统的仪器,仪表发生根本性的变革,它代表了仪器仪表的发展趋势。(3)测控系统用单片机构成的各种工业控制系统中的数据采集系统具有工作稳定可靠,抗干扰能力强等特点,如炉温控制系统,电镀生产自动控制系统等。(4)智能接口由于单片机可对接口信息进行加工处理,可以大量降低接口界面的通信密度,极大地提高接口控制管理水平。在一些通用计算机外部设备上,已实现了单片机的键盘管理等。2.1.2单片机系统的扩展和本系统配置单片机加上适当的

9、外围器件和应用程序,构成了应用系统称为最小系统。这种采用“单片”形式构成的应用系统主要用于家电类产品和简单的仪器仪表中。随着单片机应用的深入和发展,特别是近年来比较复杂的测控系统和高科技的应用,单片机本体上集成的功能元件已经满足不了需求。为了使测控系统覆盖更宽的应用范围,一般不得不在单片机的基础上扩展存储器和I/O接口。因此,利用单片机构成一个完整的智能空调控制系统,必须考虑单片机的系统扩展和系统配置。(1)系统扩展指单片机内部的基本单元不能满足系统要求时,在片外扩展相应的电路或器件。不同类型的单片机,其扩展方法各异。某些类型的单片机,则采用片内串行总线进行扩展,如I2C,SPI等总线扩展,主

10、要扩展存储器和I/O接口。还有一些单片机,如Intel8-51和8096系列,为了满足单片机的系统扩展要求,设置有可供外部扩展电路使用的三态总线(DB,AB,CB)结构。例如,MCS-51系列单片机由P0口构成8位数据总线,P2+P0构成的16位地址总线,以供外部分别扩展程序存储器与数据存储器。(2)系统配置系统配置是指为了满足系统功能要求而配置的各种接口电路。例如在本设计中,为构成温度采集系统,必须配置传感器接口等;为构成伺服系统必须配置伺服控制接口以及满足对话人-机接口和用于构成多机或网络系统的相互通信接口(如系统的RS232)等。系统配置与控制对象和操作要求密切相关。用单片机构成一个能够

11、满足对象测控功能要求的应用系统,在硬件系统设计上包括两层次的任务:一是由单片机最小系统通过系统扩展构成能满足测控任务处理要求的计算机基本系统(或平台系统);二是根据用户及对象的技术要求,通过系统配置,为单片机系统配置各种接口电路,以构成与对象相匹配的系统,则称为单片机应用系统。由此,本设计由单片机构成的应用系统如下图2-1:图2-1总应用系统图2.1.3 ATMEL89S52芯片结构介绍(1)89S52芯片结构介绍ATMEL89系列单片机与8051系列单片机兼容,这个系统对于以8051系列为基础的系统来说,十分容易进行取代。同时,对那些熟悉8051的用户来说。用ATMEL公司的89系列单片机来

12、取代8051进行系统的设计也是轻而易举的事。本系统采用的ATMEL89系列单片机中的AT89S8252型号AT89S8252采用ATMEL的高密度非易失性存储器技术制造,与工业上标准的80C51的指令系统及引脚兼容内可向下装Flash允许程序存储器在系统内通过SPI串行口改写或用通用的非易失性存储器编程器改写。通过把通用的8位CPU与可向下装载的Flash集成在一个芯片上,AT89S8252便成为一个高效的微型计算机。AT89S8252型单片机除了具备一般的单片机性能之外还具备如下的特点:· 兼容MCS一51TM 系列。· 8 kB可下载编程的FI ASH存储器可循环写人擦

13、除l 000砍。· 2 kB的EEPROM 存储器,可循环写人擦除100 000次。· 40h60 V的工作电压。· 全静态设计:024 MHz。· 256×8位的内部RAM。· 三级程序加密,· 32个可编程1O 口。· 3个16位定时器。· 9个中断源。· 可编程“看门狗 定时器。· 通用UART串行通道。· SPI串行接口。· 低功耗空闲和省电模式。引脚及其功能:AT89S8252提供有PDIP、PLCC、PQFPTQFP3种封装形式,引脚与89C51的引脚完

14、全相同(如图2-2)。AT89S52的IO口。P0、P1、P2、P3口除具有与89C51相同的一些性能和用途外,P1还提供有新的附加功能,P10和P11可配置为定时器计数器2的外部输入(P1oT2)和触发输入(P1IT2EX)。此外,P1.4、P15、P16、P17可配置串行编程端口选择,数据输入输出,时钟输入输出端,详见表2-1。图2-2 AT89S52引脚图(2)芯片选择优点在本系统设计中,对单片机作为主控核心是因为单片机具有以下突出特点 体积小,价格低,应用广。由于计算机的主要器件集成在一块芯片上,而且适合大规模生产,因此在体积、重量、价格上具有优势,便于在中小设备、廉价设备上使用,从而

15、使计算机深入到过去无法进入的领域,拓展了微型计算机的应用范围。 通用性、灵活性强。在改变单片机的控制对象时,可以基本上不动硬件,而只需改变程序。另外,可以很方便的对其进行扩展。 可靠性高、抗干扰能力强。单片机的高集成度,避免了功能器件之间的连线焊接、插接,缩短了系统内部的信息传送距离,从而提高了可靠性和减少了外部干扰的影响,能够适用于工作环境较恶劣的场合。 实时控制能力强。实时控制又称过程控制,是指及时的检测设备、采集数据信息,并按最佳方案对设备进行自动调节和控制。单片机具有很强的逻辑操作、位处理和判断转移功能,运行速度快,特别适合于工业系统实时控制。 应用开发周期短。单片机结构简单,硬件组合

16、、软件编程都很方便,又容易进行模拟试验,因此付诸实际应用快。2.2 红外发射模块电路设计分析2.2.1红外无线通信原理(1)红外无线通信组成结构红外无线通信以红外线作为通信载体,利用红外技术实现两点间的近距离通信和信息转发。红外无线通信系统采用光传输及无线工作机制,其组成结构包括:发射器部分,信道部分,终端部分。其工作原理如图2-3所示.图2-3 红外无线通信示意图(2)红外无线通信的特点无线通信的方式有很多种,利用红外光进行通信具有以下特点: 频率高,波长短,所发射的能量集中; 红外线是人的肉眼看不见的光线,保密性强,选用它作为信息载体,装置工作时不存在视觉污染 ,对人体没有伤害; 传播范围

17、不受局限,不存在频率干扰问题,与无线电波方式相比,不必就频谱资源问题向有关部门进行请和登记,易于实施: 具有良好的指向性,当传送设备和红外接收端口排成直线,左右偏差不超过15度的时候,红外装置运行效果最好; 红外线不能穿过或绕过人和物体,在数据传输时,不能阻断光路; 目前产生和接收红外信号的技术已经比较成熟,元件体积小,成本低; 空间传播时的衰减系数小,可保证信号的有效传送; 制作简单、易于产生和调制等优势2.2.2 红外遥控信号编码及发射原理通常,红外遥控器是将遥控信号(二进制脉冲码)调制在38KHz的载波上,经缓冲放大后送至红外发光二极管,转化为红外信号发射出去的。二进制脉冲码的形式有多种

18、,其中最为常用的是PWM码(脉冲宽度调制码)和PPM码(脉冲位置调制码)。前者以宽脉冲表示1,窄脉冲表示0,如图2-4所示。后者脉冲宽度一样,但是码位的宽度不一样,码位宽的代表1,码位窄的代表0。如图2-5所示。图2-4PWM码图2-5 PPM码遥控编码脉冲信号(以PPM码为例)通常由引导码、系统码、系统反码、功能码、功能反码等信号组成,如图3-4所示。引导码也叫起始码,由宽度为9ms的高电平和宽度为4.5ms的低电平组成(不同的遥控系统在高低电平的宽度上有一定区别),用来标志遥控编码脉冲信号的开始。系统码也叫识别码,它用来指示遥控系统的种类,以区别其它遥控系统,防止各遥控系统的误动作。功能码

19、也叫指令码,它代表了相应的控制功能,接收机中的微控制器可根据功能码的数值去完成各种功能操作。系统反码与功能反码分别是系统码与功能码的反码,反码的加入是为了能在接收端校对传输过程中是否产生差错。为了提高抗干扰性能和降低电源消耗,将上述的遥控编码脉冲对频率为38KHz(周期为26.3us)的载波信号进行脉幅调制(PAM),再经缓冲放大后送到红外发光管,将遥控信号发射出去。图2-6 遥控编码脉冲信号2.2.3 红外发射硬件接口电路(1)红外发射电路设计原理:本系统在红外设计方面主要用一个红外发射头接一个驱动电路再与单片机连接既可。实际设计电路如图2-7:图2-7 红外发射部分电路图(2)电路功能:红

20、外发射电路主要是当单片机扫描按键,按压功能指令键盘时或温度达到上下限设置时,产生经过调制的串行编码,通过激励电路,驱动红外发光二极管发光,发射给接收端,对空调实行开机,关机,制冷和制热的遥控。2.3 存储模块电路分析2.3.1 I2C总线的结构及运用原理I2C总线是一种用于IC器件之间连接的二线制总线。它通过SDA(串行数据线)及SCL(串行时钟线)两根线在连到总线上的器件之间传送信息,并根据地址识别每个器件:不管是单片机、存储器、LCD驱动器还是键盘接口。在系统设计中,选用的AT24C02将利用I2C总线传输数据,所以对I2C总线的原理知识有必要掌握。(1) I2C总线的基本结构采用I2C总

21、线标准的单片机或IC器件,其内部不仅有I2C接口电路,而且将内部各单元电路按功能划分为若干相对独立的模块,通过软件寻址实现片选,减少了器件片选线的连接。CPU不仅能通过指令将某个功能单元电路挂靠或摘离总线,还可对该单元的工作状况进行检测,从而实现对硬件系统的既简单又灵活的扩展与控制。I2C总线接口电路结构如图2-8所示。图2-8 I2C总线接口电路结构图(2)双向传输的接口特性传统的单片机串行接口的发送和接收一般都各用一条线,如MCS51系列的TXD和RXD,而I2C总线则根据器件的功能通过软件程序使其可工作于发送或接收方式。,它就是发送器(也叫主器件),而当其从总线上接收信息时,又成为接收器

22、(也叫从器件)。主器件用于启动总线上传送数据并产生时钟以开放传送的器件,此时任何被寻址的器件均被认为是从器件。I2C总线的控制完全由挂接在总线上的主器件送出的地址和数据决定。在总线上,既没有中心机,也没有优先机。总线上主和从(即发送和接收)的关系不是一成不变的,而是取决于此时数据传送的方向。SDA和SCL均为双向I/O线,通过上拉电阻接正电源。当总线空闲时,两根线都是高电平。连接总线的器件的输出级必须是集电极或漏极开路,以具有线“与”功能。I2C总线的数据传送速率在标准工作方式下为100kbit/s,在快速方式下,最高传送速率可达400kbit/s。(3)I2C总线上的时钟信号在I2C总线上传

23、送信息时的时钟同步信号是由挂接在SCL时钟线上的所有器件的逻辑“与”完成的。SCL线上由高电平到低电平的跳变将影响到这些器件,一旦某个器件的时钟信号下跳为低电平,将使SCL线一直保持低电平,使SCL线上的所有器件开始低电平期。此时,低电平周期短的器件的时钟由低至高的跳变并不能影响SCL线的状态,于是这些器件将进入高电平等待的状态。当所有器件的时钟信号都上跳为高电平时,低电平期结束,SCL线被释放返回高电平,即所有的器件都同时开始它们的高电平期。其后,第一个结束高电平期的器件又将SCL线拉成低电平。这样就在SCL线上产生一个同步时钟。可见,时钟低电平时间由时钟低电平期最长的器件确定,而时钟高电平

24、时间由时钟高电平期最短的器件确定。(4)数据的传送在数据传送过程中,必须确认数据传送的开始和结束。在I2C总线技术规范中,开始和结束信号(也称启动和停止信号)的定义如图如图2-9所示。当时钟线SCL为高电平时,数据线SDA由高电平跳变为低电平定义为“开始”信号;当SCL线为高电平时,SDA线发生低电平到高电平的跳变为“结束”信号。开始和结束信号都是由主器件产生。在开始信号以后,总线即被认为处于忙状态;在结束信号以后的一段时间内,总线被认为是空闲的。图2-9 数据传送时序图I2C总线的数据传送格式是:在I2C总线开始信号后,送出的第一个字节数据是用来选择从器件地址的,其中前7位为地址码,第8位为

25、方向位(R/W)。方向位为“0”表示发送,即主器件把信息写到所选择的从器件;方向位为“1”表示主器件将从从器件读信息。开始信号后,系统中的各个器件将自己的地址和主器件送到总线上的地址进行比较,如果与主器件发送到总线上的地址一致,则该器件即为被主器件寻址的器件,其接收信息还是发送信息则由第8位(R/W)确定。在I2C总线上每次传送的数据字节数不限,但每一个字节必须为8位,而且每个传送的字节后面必须跟一个认可位(第9位),也叫应答位(ACK)。数据的传送过程如图2-10所示。每次都是先传最高位,通常从器件在接收到每个字节后都会作出响应,即释放SCL线返回高电平,准备接收下一个数据字节,主器件可继续

26、传送。如果从器件正在处理一个实时事件而不能接收数据时,(例如正在处理一个内部中断,在这个中断处理完之前就不能接收I2C总线上的数据字节)可以使时钟SCL线保持低电平,从器件必须使SDA保持高电平,此时主器件产生1个结束信号,使传送异常结束,迫使主器件处于等待状态。当从器件处理完毕时将释放SCL线,主器件继续传送。图2-10 数据传送过程当主器件发送完一个字节的数据后,接着发出对应于SCL线上的一个时钟(ACK)认可位,在此时钟内主器件释放SDA线,一个字节传送结束,而从器件的响应信号将SDA线拉成低电平,使SDA在该时钟的高电平期间为稳定的低电平。从器件的响应信号结束后,SDA线返回高电平,进

27、入下一个传送周期。I2C总线还具有广播呼叫地址用于寻址总线上所有器件的功能。若一个器件不需要广播呼叫寻址中所提供的任何数据,则可以忽略该地址不作响应。如果该器件需要广播呼叫寻址中提供的数据,则应对地址作出响应,其表现为一个接收器。(5) 总线竞争的仲裁总线上可能挂接有多个器件,有时会发生两个或多个主器件同时想占用总线的情况。例如,多单片机系统中,可能在某一时刻有两个单片机要同时向总线发送数据,这种情况叫做总线竞争。I2C总线具有多主控能力,可以对发生在SDA线上的总线竞争进行仲裁,其仲裁原则是这样的:当多个主器件同时想占用总线时,如果某个主器件发送高电平,而另一个主器件发送低电平,则发送电平与

28、此时SDA总线电平不符的那个器件将自动关闭其输出级。总线竞争的仲裁是在两个层次上进行的。首先是地址位的比较,如果主器件寻址同一个从器件,则进入数据位的比较,从而确保了竞争仲裁的可靠性。由于是利用I2C总线上的信息进行仲裁,因此不会造成信息的丢失。(6)I2C总线接口器件目前在视频处理、移动通信等领域采用I2C总线接口器件已经比较普遍。另外,通用的I2C总线接口器件,如带I2C总线的单片机、RAM、ROM、A/D、D/A、LCD驱动器等器件,也越来越多地应用于计算机及自动控制系统中。2.3.2 AT24C02芯片结构及接口电路(1) AT24C02芯片结构及工作原理AT24C02芯片结构如图引脚

29、图工作原理AT24C02具有256×8(2K)bit的存储容量,页写入字节数为8。通常EEPROM器件写入时总需要一定的时间(5ms10ms),因此在写入程序中无法连续写入多个数据字节。一次写入EEPROM的字节数不大于器件的页写入字节数时,可按通常RAM的写入速度将数据装入EEPROM的数据寄存器中,随后启动自动写入定时控制逻辑,经过5ms10mS的时间,自动将数据寄存器中的数据同步写入EEPROM的指定单元。这样只要一次写入的字节数不多于页写入容量,总线对EEPROM的操作可视为对静态RAM的操作,但要求下次数据写入操作在5ms10ms之后进行。AT24C02器件地址格式如图2-

30、12所示。其中DA3到DA0位为器件固有地址编码,由工厂给定,为1010,不能更改。A2到A0 3位引脚地址用于相同地址器件的识别。本电路为000。R/W为数据传送方向。R/W=1时,主机接(读);R/W=0时,主机发送(写)。图2-12 AT24C02器件地址格式(2)AT24C02芯片在设计中的实际硬件电路 设计实际接口电路AT24C02的1、2、3脚是三条地址线,用于确定芯片的硬件地址。在设计电路中它们都接地,第8脚和第4脚分别为正、负电源。第5脚SDA为串行数据输入/输出,数据通过这条双向I2C总线串行传送,在所设计的电路中与单片机的P1.4连接。第6脚SCL为串行时钟输入线,在本设计

31、中与单片机的P1.5连接。SDA和SCL都需要和正电源间各接一个5.1K的电阻上拉。第7脚需要接地。实际电路连接如图2-13: 电路功能系统中外部AT24C02扩展了串行的电路,用来保存识别出来的遥控信号的高电平与低电平脉宽数据。图2-13 AT24C02与单片机接口图电路及其芯片选择优点该芯片不占用任何数据总线,连接简单且节约大量系统资源。并且防止系统掉电后数据丢失,保证数据的可靠性。2.4 RS-232C通信模块电路设计分析2.4.1 RS-232C芯片结构及工作原理(1)RS-232C芯片的内部结构RS -232C 通信接口是一种标准化的串行接口,是为远程通信连接数据终端设备与数据通信设

32、备定义的物理接口。现在普遍应用于计算机之间和计算机与外设之间的近端连接标准。符合EIA(电子工业协会)规格要求,在国际上得到广泛应用。其特点是信号少,有多种数据传输速率可以选择,使用简单,方便。电气特性: RS-232C的每个脚线的信号和电平规定采用负逻辑电平,DC (-15-5V)规定为逻辑"1", DC (+5_+ISV)规定为逻辑"0", DC (-5一+5V)规定为过渡区。计算机接口或终端的TTLIMOS电平与RS-232C通信接口的逻辑电平不兼容,需要外加电路实现电平转换。 机械特性:RS-232C规定使用25针的标准连接口,使用DB-25型连

33、接器。但实际使用时只需2个数据线、6个控制线、1个地线,共九个信号。一些厂家对RS-232C标准的机械特性进行了简化,使用9针标准接口,即DB-9型连接器。由于RS-232C发送端与接受端之间的信号传递采用多芯信号线,而多芯信号线的总负载电容不能超过2500pF,所以RS-232C的信号传输距离为十几米。 功能特性:RS-232C接口的主要信号线及功能如下表2-3:表2-3 引脚功能表图2-14 MAX232引脚图(2)工作原理串行接口的有异步和同步两种基本通信方式。异步通信采用异步传送格式,如图2-15 所示。数据发送和接收均将起始位和停止位作为开始和结束的标志。在异步通信中,起始位占用一位

34、(低电平),用来表示字符开始。其后为 7 或 8 位的数据编码,第 8 位通常做为奇偶校验位。最后为停止位(高电平)用来表示字符传送结束。上述字符格式通常作为一个串行帧,如无奇偶校验位,即为常见的N.8.1帧格式。串行通信中,每秒传送的数据位称为波特率。如数据传送的波特率为1200 波特,采用 N.8.1 帧格式(10 位),则每秒传送字节为 120 个,而字节中每一位传送时间即为波特率的倒数:T=I/1200=0.833ms。同样,如数据传送的波特率为 9600 波特,则字节中每一位传送时间为 T=1/9600=0.104 ms。根据数据传送的波特率即字节中每一位的传送时间,我们便可用普通

35、I/O 口来模拟实现串行通信的时序。图2-15 异步通信格式2.4.2 RS-232C硬件接口电路(1)设计实际接口电路89S52单片机通过普通 I/O 口与 PC 机 RS232 串口实现通信,本设计实际硬件接口电路如图 2 所示。MAX232芯片内部有一个电源电压变换器,可以把5V电压变换成RS-232C输出电平所需的正负10V电压。所以,采用此芯片接口的串行通信系统只需单一的+5V电源就可以了。图2-16中的 P3.0 模拟发送端,P3.1模拟接收端。图2-16 RS-232C通信模块电路图(2)电路功能在本设计中,RS-232C主要用于对系统的扩展,以实现PC机89S52 单片机通过普

36、通I/O 口与PC 机RS-232C串口实现通信的硬件。由于PC 系列微机串行口RS-232C 标准接口,与输入、输出均采用TTL 电平的89S52单片机在接口规范上不一致,因此TTL电平RS-232C 接口电平的转换采用MAXIM 公司的MAX232 标准RS-232C接口芯片,该芯片可以用单电压(+5V)实现RS-232C接口逻辑“1”(-3V15V)和逻辑“0”(+3V15V)的电平转换。(3)电路及芯片选择优点一种用单片机普通I/O 口实现串行通信的方法,可在单片机的最小应用系统中实现与两个以上串行接口设备的多机通信。2.5 数字温度模块电路设计分析2.5.1 DSl820 内部结构及

37、工作原理DSl820 数字温度计提供9 位(二进制)温度读数指示器件的温度信息经过单线接收送入DSl820或从DSl820 送出,因此从主机CPU 到DSl820 仅需一条线(和地线)。(1) DSl820 的引脚及功能表2-5 DS1820引脚功能图2-17 DS1820引脚图独特的单线接口方式:DS18B20与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。 在使用中不需要任何外围元件。 可用数据线供电,电压范围:+3.0到+5.5 V。 测温范围:-55 +125 。固有测温分辨率为0.5 。 通过编程可实现912位的数字读数方式。 用户可自设定非易失性的报警上下

38、限值。 支持多点组网功能,多个DS18B20可以并联在惟一的三线上,实现多点测温。 负压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。 DS18B20采用3脚PR35封装或8脚SOIC封装,其内部结构框图如图2-18所示。图2-18 DS18B20内部结构图(2)DS18B20内部存储功能图2-19 64 b闪速ROM的结构图开始8位是产品类型的编号,接着是每个器件的惟一的序号,共有48位,最后8位是前56位的CRC校验码,这也是多个DS18B20可以采用一线进行通信的原因。 非易市失性温度报警触发器TH和TL,可通过软件写入用户报警上下限。 高速暂存存储器,DS18B20温度

39、传感器的内部存储器包括一个高速暂存RAM和一个非易失性的可电擦除的EEPRAM。后者用于存储TH,TL值。数据先写入RAM,经校验后再传给EPPRAM。而配置寄存器为高速暂存器中的第5个字节,它的内容用于确定温度值的数字转换分辨率,DS18B20工作时按此寄存器中的分辨率将温度转换为相应精度的数值。该字节各位的定义如下图2-20:图2-20 存储器字节定义图低5位一直都是1,TM是测试模式位,用于设置DS18B20在工作模式还是在测试模式。在DS18B20出厂时该位被设置为0,用户不要去改动,R1和R0决定温度转换的精度位数,即是来设置分辨率,如表2-6所示(DS18B20出厂时被设置为12位

40、)。表2-6 配置寄存器与分辨率关系表由表2-6可见,设定的分辨率越高,所需要的温度数据转换时间就越长。因此,在实际应用中要在分辨率和转换时间权衡考虑。高速暂存存储器除了配置寄存器外,还有其他8个字节组成,其分配如下所示。其中温度信息(第1,2字节)、TH和TL值第3,4字节、第68字节未用,表现为全逻辑1;第9字节读出的是前面所有8个字节的CRC码,可用来保证通信正确。LSB MSB图2-21 DS18B20 存储器映像图当DS18B20接收到温度转换命令后,开始启动转换。转换完成后的温度值就以16位带符号扩展的二进制补码形式存储在高速暂存存储器的第1,2字节。单片机可通过单线接口读到该数据

41、,读取时低位在前,高位在后。温度值格式如下:图2-22 DS18B20温度值格式对应的温度计算:当符号位S=0时,直接将二进制位转换为十进制;当S=1时,先将补码变换为原码,再计算十进制值。表2-7是对应的一部分温度值。DS18B20HLH或T<TL,则将该器件内的告警标志置位,并对主机发出的告警搜索命令作出响应。因此,可用多只DS18B20同时测量温度并进行告警搜索。 CRC的产生在64 b ROM的最高有效字节中存储有循环冗余校验码(CRC)。主机根据ROM的前56位来计算CRC值,并和存入DS18B20中的CRC值做比较,以判断主机收到的ROM数据是否正确。另外,由于DS18B20

42、单线通信功能是分时完成的,他有严格的时隙概念,因此读写时序很重要。系统对DS18B20的各种操作必须按协议进行。操作协议为:初始化DS18B20(发复位脉冲)发ROM功能命令发存储器操作命令处理数据。主芯片对DS18B20的操作通过发命令字进行。命令字分为二种:ROM命令字和RAM命令字。不同的命令字代表不同的操作,如33h表示读DS18B20的64位序列号。特别注意的是在发送每一个ROM命令字和RAM命令字之前,都要先发送初始化时序,命令字的代号与其对应的功能如表2-8所示。命令字的发送由单片机主芯一位一位地发送。同样,主芯片接收数据也是从低位到高位一位一位地接收。DS18B20D的复位时序

43、如图2-23所示,读时序如图2-24所示,写时序如图2-25所示:DS18B20的复位时序图2-23 DS18B20的复位时序图DS18B20的读时序对于DS18B20的读时序分为读0时序和读1时序两个过程。对于DS18B20的读时隙是从主机把单总线拉低之后,在15 微秒之内就得释放单总线,以让DS18B20把数据传输到单总线上。DS18B20在完成一个读时序过程,至少需要60us才能完成。图2-24 DS18B20的读时隙时序图DS18B20的写时序对于DS18B20的写时序仍然分为写0时序和写1时序两个过程。对于DS18B20写0时序和写1时序的要求不同,当要写0时序时,单总线要被拉低至少

44、60us,保证DS18B20能够在15us到45us之间能够正确地采样IO总线上的“0”电平,当要写1时序时,单总线被拉低之后,在15us之内就得释放单总线。图2-25 DS18B20的写时隙时序图2.5.2 DS1820硬件接口电路(1)实际电路连接图在本设计中DS1820中的DQ口与单片机的P3.5口相连接,用于数据输入/输出(连接如下图2-26),电路中R15为上拉电阻。图2-26 DS18B20与单片机接口电路图(2)模块功能由DS1820与单片机构成的测温系统,随时监测室内温度变化,及时采集温度数据,使其他模块能够根据温度变化而工作,实行本设计的智能控温功能。(3)电路及芯片选择优点

45、与模拟传感器相比,由于采取的高集成度设计,使数字式传感器在可靠性、抗干扰能力以及器件微小化方面都有明显的优点,但是受半导体器件本身限制,数字式传感器还存在一些不够理想的地方,比如实际应用时需加修正值,测温范围不宽,一般为-50摄氏度到+150摄氏度。虽然存在一些不足,但是充分利用微处理技术发展数字化、集成化和自动化的温度传感器仍是温度传感器的发展方向之一。数字化温度传感器DS18B20S是集成数字化温度传感器的典型代表。2.6 时钟模块电路设计分析2.6.1 DS1302内部结构DS1302是一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、周日、时、分、秒进行计时,具有闰年补偿

46、功能,工作电压为2.5V5.5V。采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据DS1302是DS1202的升级产品,与DS1202兼容,但增加了主电源/后背电源双电源引脚,同时提供了对后背电源进行涓细电流充电的能力。图2-27 DS1302内部结构(1) 引脚功能及结构图2-28 DS1302引脚图图2-28示出DS1302的引脚排列,其中Vcc1为后备电源,VCC2为主电源。在主电源关闭的情况下,也能保持时钟的连续运行。DS1302由Vcc1或Vcc2两者中的较大者供电。当Vcc2大于Vcc10.2V时,Vcc2给DS1302供电。当Vcc2小于V

47、cc1时,DS1302由Vcc1供电。X1和X2是振荡源,外接32.768kHz晶振。RST是复位/片选线,通过把RST输入驱动置高电平来启动所有的数据传送。RST输入有两种功能:首先,RST接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,RST提供终止单字节或多字节数据的传送手段。当RST为高电平时,所有的数据传送被初始化,允许对DS1302进行操作。如果在传送过程中RST置为低电平,则会终止此次数据传送,I/O引脚变为高阻态。上电运行时,在Vcc2.5V之前,RST必须保持低电平。只有在SCLK为低电平时,才能将RST置为高电平。I/O为串行数据输入输出端(双向)。SCLK始终是输入

48、端。DS1302在本设计软件部分,主要针对芯片功能为系统设计进行采集实时时间,对年、月、日、周日、时、分、秒进行计时,对数字时钟模块在本设计的工作电路编写实现功能的相应程序主要分为实时时钟的数据读写,初始时间的设置。(2)数据输入输出(I/O)串行时钟芯片主要由移位寄存器,控制逻辑,振荡器,实时时钟及31个字节RAM存组成。为了开始任何的数据传送,必须把RST置为高电平且把提供地址和命令信息的8位字节装入到移位寄存器。在进行单字节传送或多字节传送时,开始的8位命令字节用于指定40个字节(31个字节RAM和9个字节时钟寄存器)中哪个将被访问。在开始8个时钟周期把命令装入移位寄存器之后,另外的时钟

49、在读操作时输出数据,在写操作时输入数据。 DS1032的控制字DS1302 的控制字如图2-29所示。控制字节的最高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入DS1302中,位6如果为0,则表示存取日历时钟数据,为1表示存取RAM数据;位5至位1指示操作单元的地址;最低有效位(位0)如为0表示要进行写操作,为1表示进行读操作,控制字节总是从最低位开始输出。图2-29 DS1302控制字 DS1302的寄存器DS1302有12个寄存器,其中有7个寄存器与日历、时钟相关,存放的数据位为BCD码形式,其日历、时间寄存器及其控制字。此外,DS1302 还有年份寄存器、控制寄存器、充电寄存

50、器、时钟突发寄存器及与RAM相关的寄存器等。时钟突发寄存器可一次性顺序读写除充电寄存器外的所有寄存器内容。 DS1302与RAM相关的寄存器分为两类:一类是单个RAM单元,共31个,每个单元组态为一个8位的字节,其命令控制字为C0HFDH,其中奇数为读操作,偶数为写操作;另一类为突发方式下的RAM寄存器,此方式下可一次性读写所有的RAM的31个字节,命令控制字为FEH(写)、FFH(读)。 数据传输时序DS1302有单字节传送方式和多字节传送方式。通过把RST复位线驱动至高电平来启动所有的数据传送。RST输入线有两种功能,首先RST接通控制逻辑,允许地址命令序列送入移位寄存器;其次,RST提供

51、了中止单字节或多字节数据传送的手段。数据输入时,时钟的上升沿数据必须有效,数据的输出在时钟的下降沿。如果RST为低电平,那么所有的数据传送将被中止且I0引脚变为高阻状态。上电时,在VC>2.5伏之前,RST必须为逻辑0。当把RST驱动至逻辑1状态时,SCLK必须为逻辑0。数据传送时序如图2-30所示。单字节数据输入跟随在写命令字节的8个SCLK周期之后,在随后的8个SCLK周期的上升沿输入数据字节,数据从位0开始输入。图2-30 DS1302传输时序图2.6.2 DS1302硬件接口电路(1)实际模块连接图本设计实际电路图如下,DS1302与CPU的连接需要三条线,即SCLK(7)、I/

52、O(6)、RST(5)。SCLK与单片机的P3.2连接,I/O口与P3.3连接传送数据,复位脚与P3.4相连接,图2-31示出DS1302与89S52的连接图,其中,时钟的显示用电路设计使用的LMC1602显示。图2-31 DS1302与单片机接口电路图(2)模块功能在本系统的设计中,为了使系统具有实时性,需由时钟芯片DS1302给系统提供时钟信号(年,月,日,时,分,秒),然后通过I/O口连接方式,对DS1302写入数据和读取数据。(3)电路及芯片选择优点现在流行的串行时钟电路很多,如DS1302、 DS1307、PCF8485等。这些电路的接口简单、价格低廉、使用方便,被广泛地采用。本设计

53、中的实时时钟电路DS1302是DALLAS公司的一种具有涓细电流充电能力的电路,主要特点是采用串行数据传输,可为掉电保护电源提供可编程的充电功能,并且可以关闭充电功能。采用普通32.768kHz晶振。2.7 液晶显示模块电路设计分析2.7.1 LMC1602芯片结构字符型液晶显示模块是一类专门用于显示字母,数字,符号等的点阵式液晶显示模块。在显示器件上的电极图型设计,它是由若干个5*7或5*11等点阵符位组成。每一个点阵字符位都可以显示一个字符。点阵字符位之间有一空点距的间隔起到了字符间距和行距的作用。(1)字符型模块的性能重量轻:100g;体积小:11mm厚;功耗低:10 - 15 mw;显

54、示内容:192种字符(5×7点字型);32种字符(5×10点字型);可自编8(5×7)或4(5×10)种字符;指令功能强:可组合成各种输入、显示、移位方式以满足不同的要求;接口简单方便:可与8位微处理器或微控制器相联;工作温度宽:-20 - 70;可靠性高:寿命为50,000小时(25)。(2)基本原理 液晶板 在液晶板上排列着若干5×7或5×10 点阵的字符显示位,每个显示位可显示1个字符,从规格上分为每行8,16,20,24,32,40位,有一行,两行及四行三类。工作电路 图2-32是字符型模块的电路框图,它由HD44780,HD

55、44100及几个电阻电容组成。HD4410 是扩展显示示符位用的(例如:16字符×1行模块就不用HD44100,16字符×2行模块就要用1片HD44100)图2-32 字符型模块的电路框图接口方面,有8条数据线,三条控制线。可与微处理器或微控制器相连,通过送入数据和指令,就可使模块正常工作.(3)LCD 驱动器和控制器LCD 驱动器 HD44100(KS0065)、HD44100 是用低功耗CMOS 技术制造的大规模LCD驱动IC。它既可当行驱动用,也可当列驱动用,由20 × 2Bits二进制移位寄存器, 20 × 2Bits数据锁存器和20 ×

56、; 2Bits驱动器组成。LCD 控制器HD44780 HD44780(KS0066)是用低功耗CMOS技术制造的大规模点阵LCD 控制器(兼带驱动器),和4Bit/8Bit微处理器相连,它能使点阵LCD显示大小英文字母,数字和符号。应用HD44780(KS0066),用户能用少量元件可组成一个完整点阵LCD 系统。(4) 引脚功能LMC1062编程中要熟悉寄存器选择功能,指令功能,在程序设计中才能准确编写其显示内容。寄存器选择功能备注:忙标志为"1"时,表明正在进行内部操作,此时不能输入指令或数据,要等内部操作结 束,忙标志为"0"时。指令功能格式:

57、RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0共11种指令: 清除,返回,输入方式设置,显示开关,控制,移位,功能设置,CGRAM地址设置,DDRAM地址设置,读忙标志,写数据到CG/DDRAM,读数据由CG/DDRAM。2.7.2 LMC1602硬件接口电路(1)实际模块连接图液晶芯片的D/I口与单片机的P1.0连接,R/W口与单片机的P1.2连接用于对读写的选择,DB0-DB7口与单片机的P0.0-P0.6口通过上拉排阻(P0口作为I/O输出口时,由于输出级为漏极开路电路,引脚上应外接上拉电阻,以驱动)。连接选择了一个可变电阻用于调节液晶显示亮度。图2-33 LCD与单片机接口电路图(2)模块功能用于读取显示设计中要求显示的各项数据(年,月,日,时,分,秒,上下限温度,现时温度,定时时间),并与按键一起用于系统运行参数的设定(包括分辨力、上限和下限超限报警等)及运行状态与测温结果的显示(3)电路及芯片选择设计优点液晶显示器(LCD)具有功耗低、体积小、重量轻、超薄等许多其它显示器无法比拟的优点。LCD可分为段位式LCD、字符式LCD和

温馨提示

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

最新文档

评论

0/150

提交评论