毕业设计MCS51单片机测温系统的设计_第1页
毕业设计MCS51单片机测温系统的设计_第2页
毕业设计MCS51单片机测温系统的设计_第3页
毕业设计MCS51单片机测温系统的设计_第4页
毕业设计MCS51单片机测温系统的设计_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

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

文档简介

1、MCS-51单片机测温系统的设计 内容摘要本设计是以一个保温箱为控制对象,以AT89C51为控制系统核心,通过单片机系统设计实现对保温箱温度的显示和控制功能。本温度控制系统是一个闭环反馈调节系统,由温度传感器DS18B20对保温箱温度进行检测,经过调理电路得到合适的电压信号。经芯片处理得到偏差信号,通过对偏差信号的处理获应的温度值,将所得的温度值与设定温得控制信号,利用系统的I/O资源去扩展外围电路,通过外接继电器电路,根据继电器常开常闭的性质,给继电器高低电平来实现继电器的通断。从而实现低温状态时电热丝加热升温,高温状态时电风扇转动来降温,使得温度始终处于设定的温度范围内,从而实现对保温箱温

2、度的显示和控制。本文主要介绍了保温箱温度控制系统的工作原理和设计方法,论文主要由三部分构成。 系统整体方案设计。系统硬件设计,主要包括温度检测电路、显示电路、键盘设计和控制电路。 系统软件设计,软件的设计采用模块化设计,主要包括、显示模块、键盘模块和控制模块等。最后对整个系统进行联合调试,使系统达到本次的设计要求。关键词:单片机;传感器;温度检测;继电器MCS-51 Microcontroller Temperature Measurement System DesignABSTRACTThis design takes a heat preservation box as a control

3、 object and the AT89C51 as a control system core. A Single-chip Computer system is designed to carry out the temperature display and control. This heat temperature control system is a closed loop feedback control system. The temperature of the heat preservation box is measured by sensor DS18B20. For

4、 DS18B20, a adjust electric circuit is designed to get a suitable electric voltage signal for the transformation. After the transformation, the corresponding temperature digital quantity can be obtains, and is compared with the setting temperature, then a deviation can be obtained. Through processin

5、g the deviation, a control signal will be produced, which adjusts the heater the on or off, thus the preservation box temperature control and display is realized. This design introduces the temperature control system principle of work and the design method. The paper mainly includes by three parts:F

6、ristly,the system outline project design.Secondly, hardware design, the hardware design mainly includes the temperature adaptive electric circuit, the circuit, the display circuit, the keyboard design and the control circuit. Thirdly,software design method, the software design uses the modular desig

7、n, mainly includes the transformation module, the demonstration module, the keyboard module and the control module.Key words:Single-chip Computer; Sensor; Temperature Measurement目录1 绪论11.1 课题设计背景和目的11.2 国内外研究状况和发展趋势11.3温度检测的主要方法21.4课题设计的主要内容32 系统总体方案设计42.1系统硬件设计方案42.1.1 芯片选择52.1.2 温度检测52.1.3 键盘输入5显示

8、52.1.5 控制电路62.2系统软件设计方案63 系统硬件设计73.1主板电路73.2 中央处理器73.2.1 AT89C51简介8管脚说明8芯片擦除11复位电路的设计123.3温度传感器DS18B20123.4 LED显示143.5 键盘接口173.6 控制电路184 系统软件设计204.1 显示子程序214.2控制子程序214.3 键盘子程序225 结论24参考文献25致谢26附录A27附录B28附录C431 绪论1.1 课题设计背景和目的在现代化的工业生产中电流、电压、温度、压力、流量、流速和开关量都是常用的主要被控参数。温度作为一个基本物理量,它是一个与人们的生活环境、生产活动密切相

9、关的重要物理量。在现代化的工业生产过程中温度作为一种常用的主要被控参数,在很多生产过程中我们需要对温度参数进行检测。例如:在冶金工业、化工生产、电力工程、造纸行业、机械制造和食品加工等诸多领域中,人们都需要对各类加热炉、热处理炉、反应炉和锅炉中的温度进行检测。采用单片机来对温度进行控制,不仅具有控制方便、组态简单和灵活性大等优点,而且可以大幅度提高被控温度的技术指标,从而能够大大提高产品的质量和数量。因此单片机对温度的控制问题是一个工业生产中经常会遇到的问题。本次设计采用MCS-51系列单片机与各种外围电路构成单片机温度自动检测和控制系统,实现对温度的实时检测和控制。通过本次设计掌握温度检测控

10、制系统的硬件设计方法和软件编写方法。熟悉Protel软件的使用方法。通过课题的研究进一步巩固所学的知识,同时学习课程以外的相关知识,培养综合应用知识的能力。锻炼动手能力与实际工作能力,将所学的理论与实践结合起来。1.2 国内外研究状况和发展趋势随着国内外工业的日益发展,温度检测技术也有了不断的进步。温度测量系统主要由两部分组成,一部分是传感器,它将温度信号转换为电信号。另一部分是电子装置,它主要完成对信号的接收、处理、对测点进行控制、温度显示等功能。对应于不同的温度段及测量精度要求,测温装置也不尽相同,从传感器方面看,己出现有各种金属材料、非金属材料、半导体材料制成的传感器,也有红外传感器。仪

11、器本身也趋向小型化,多采用集成度较高的芯片或元件组成电路。对于测点较多,并具有报警、巡测、控制等多功能测温装置,一般采用单片机电路。目前的温度检测技术原理很多,大致包括以下几种:(1)物体热胀冷缩原理(2)热电效应(3)热阻效应(4)利热辐射原理。传统的温度传感器(如,热电偶、铂电阻、双金属开关等)虽然有着各自不可替代的优点,但由于自身因自热效应影响了测量精度,从而制约了它们在微型化高端电子产品中的应用。与之相比较,半导体温度传感器具有灵敏度高、体积小、功耗低、时间常数小、自热温升小、抗干扰能力强等诸多优点,无论是电压、电流还是频率输出,在相当大的温度范围内( - 55150 )都与温度成线性

12、关系,适合在集成电路系统中应用。目前,半导体温度传感器工作的温度范围还限于- 50150 。未来主要的研究方向将是如何扩大它的温度适用范围,以及智能化、网络化等方面。近年来,在温度检测技术领域中,多种新的检测原理与技术的开发应用己取得了具有实用性的重大进展。新一代温度检测元件正在不断出现和完善化,主要包括以下几种。(1)晶体管温度检测元件(2)集成电路温度检测元件(3)核磁共振温度检测器(4)热噪声温度检测器(5)石英晶体温度检测器(6)光纤温度检测器(7)激光温度检测器。目前国内外的温度控制方式越来越趋向于智能化,温度测量首先是由温度传感器来实现的。测温仪器由温度传感器和信号处理两部分组成。

13、温度测量的过程就是通过温度传感器将被测对象的温度值转换成电的或其它形式的信号,传递给信号处理电路进行信号处理转换成温度值显示出来。温度传感器随着温度变化而引起变化的物理参数有: 膨胀、电阻、电容、热电动势,磁性能、频率、光学特性及热噪声等等。随着生产的发展,新型温度传感器还会不断出现,目前,国内外通用的温度传感器及测温仪大致有以下几种:热膨胀式温度计、电阻温度计、热电偶、辐射式测温仪表、石英温度传感器测温仪。1.3温度检测的主要方法温度的测量方法多采用集成的半导体模拟温度传感器,传感器输出的电压或电流与温度在一定范围呈线性关系。通过放大,采样得到被测量。另一种温度测量方法是使用热电偶,其测量精

14、度较高,但测试过程复杂,测量时间长,而且采用电桥测量的系统抗干扰能力较差,误差较大。随着集成电路技术的迅速发展,新型的数字化温度传感器其精度、稳定性、可靠性及抗干扰能力都优于模拟的温度传感器。数字温度传感器也越来越的到广泛的应用。温度检测的方法根据敏感元件和被测介质接触与否,可以分为接触式与非接触式两大类。接触式检测的方法主要包括基于物体受热体积膨胀性质的膨胀式温度检测仪表;基于热电效应的热电偶温度检测仪表。非接触式检测方法是利用物体的热辐射特性与温度之间的对应关系,对物体的温度进行检测,主要有亮度法、全辐射法和比色法等。接触式测温是使测温敏感元件与被测介质接触,当被测介质与感温元件达到热平衡

15、时,感温元件与被测介质的温度相等。这类传感器结构简单、性能可靠、精度高、稳定性好、价格低、应用十分广泛,因此,本方案采用接触式测温法,选用相关类型的传感器。由单片机组成的温度测控系统,通过在单片机外部添加各种接口电路,可构成单片机最小系统,用以实现对温度控制对象的温度的显示和控制。同时也能根据实际情况实现多路巡回检测、数据处理、报警及记录,对各个参数以一定的周期进行检查和测量,检测的结果经计算机处理后再进行显示、打印和报警,以提醒操作人员注意或直接用于生产控制。1.4课题设计的主要内容本温度控制系统是一个闭环反馈控制系统,它用温度传感器将检测到的温度信号经放大,送入单片机中进行数据处理并显示当

16、前温度值,用当前温度值与设定温度值进行比较。根据比较的结果得到控制信号用以控制继电器的通断,实现对加热器的控制。通过这种控制方式实现对保温箱的温度控制。本课题设计的内容主要包括硬件设计和软件设计两部分。系统功能由硬件和软件两大部分协调完成,硬件部分主要完成主机电路、数据采集电路、键盘显示电路、控制执行等电路的设计。软件程序编写主要用来实现对温度的检测、标度转换、LED显示、继电器控制等数据处理功能。2系统总体方案设计本次设计采用MCS-51单片机作为控制芯片,采用半导体集成温度传感器DS18B20采集温度信号。通过温度传感器将采集的温度信号转换成与之相对应的电信号,将模拟信号转换成数字信号送入

17、到控制芯片进行数据处理。通过在芯片外围添加显示、控制等外围电路来实现对保温箱温度的实时检测和控制功能。本系统功能由硬件和软件两大部分协调完成,硬件部分主要完成传感器信号的采集处理,信息的显示等;软件主要完成对采集的温度信号进行处理及显示控制等功能。系统结构框图如图2.1所示:主 控 制 器LED显 示温 度 传 感 器单片机复位时钟振荡报警点按键调整图2.1 系统结构框图2.1系统硬件设计方案单片机应用系统的硬件电路设计就是为本单片机温控系统选择合适的、最优的系统配置,即按照系统功能要求配置外围设备,如键盘、显示器、打印机、设计合适的接口电路等。系统设计应本着以下原则:(1)尽可能选择典型电路

18、,并符合单片机常规用法。本设计采用了典型的显示电路、A/D转化电路,为硬件系统的标准化、模块化打下良好的基础。(2)硬件结构应结合应用软件方案一并考虑。软件能实现的功能尽可能由软件实现,以简化硬件结构。由软件实现的硬件功能,一般响应时间比硬件实现长,且占用CPU时间。由于本设计的响应时间要求不高,所以有一些功能可以用软件编程实现,如键盘的去抖动问题。(3)系统中的相关器件要尽可能做到性能匹配。系统中所有芯片都应尽可能选择低功耗产品。本系统的硬件电路主要包括模拟部分和数字部分,从功能模块上来分有主机电路、数据采集电路、键盘显示电路、控制执行电路。系统硬件包括:温度传感器、信号调理电路、MCS-5

19、1单片机、键盘输入、LED温度显示器、温度控制电路。 芯片选择 单片机就是在一块硅片上集成了微处理器、存储器和各种输入输出接口电路的微型计算机,简称单片机。单片机以其较高的性能价格比受到了人们的重视和关注。它的优点就是体积小、重量轻、抗干扰能力强、对环境要求不高、价格低廉、可靠性高、灵活性好、开发较为容易。单片机根据其基本操作处理的位数可分为4、8、16、32位单片机,应用最为广泛的是八位单片机。根据本次设计的实际情况和要求,在本次设计中采用AT89C51作为系统的控制芯片。AT89C51是一种低功耗、高性能CMOS 8位微控制器,具有4K的系统可编程Flash 存储器。使用Atmel公司高密

20、度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。 温度检测本课题设计的温度控制范围为25-80摄氏度,温度传感器采用半导体集成温度传感器DS18B20,它具有较高的精度和重复性,不需辅助电源,线性好,使用方便,便于微机系统测控。被测温度信号为一路由DS18B20测得的代表温度的电压信号,经温度调理电路放大后使其在0-5V范围内,使其适合的输入电压范围。 键盘输入 键盘可分为编码式键盘和非编码式键盘,键盘上闭合键的识别由专用的硬件译码器实现,并产生键编号和键值的称为编码式键盘;靠软件识别的为非编码式键盘。在单片机组成

21、的测控系统中,用得最多的是非编码键盘。在这里采用的就是非编码式键盘。键盘的连接方式采用独立连接式,这种连接方式能够简化程序的编写。LED显示在单片机应用系统中使用的显示器主要有发光二极管显示器(LED)和液晶显示器(LCD)。采用LED作为系统的数据显示器具有价格低、性能稳定和响应速度快等特点。LED显示方式有静态显示、动态显示和串口显示。为了节省系统本身的硬件资源,在这里LED的显示方式采用串行静态显示方式。利用串口可以工作在移位寄存器方式,驱动LED静态显示。这样就可以充分的利用并行口,并将并行口用到最需要的地方去,同时主程序不需要扫描显示器,使它有更多的时间处理其他事情。这种显示方法用于

22、显示位数少、显示亮度大的地方能够达到很好的显示效果。 控制电路控制电路作为单片机系统的后向通道,他是将单片机处理后的数字控制信号用输出口输出,并将该数字信号用于对控制对象的控制。由于单片机的输出信号电平很低,无法直接驱动外围设备进行工作,因此在单片机的后向通道中需要外围设备的驱动、信号电平的转换以及隔离放大等技术。本次设计采用继电器作为控制电路的主要器件,通过继电器可以实现直流信号控制交流负载的功能,从而实现单片机系统的控制功能。2.2系统软件设计方案系统的软件设计采用模块化设计,采用模块化设计可以简化系统软件的编写,使软件编写思路更加简单明了。系统软件主要由三大模块组成:主程序模块、功能实现

23、模块和运算控制模块。主程序模块用于实现各个子程序间的跳转。功能实现模块主要由键盘处理子程序、显示子程序、继电器控制程序等部分组成。运算控制模块涉及标度转换子程序等。3 系统硬件设计3.1主板电路系统整体硬件电路包括,传感器数据采集电路,温度显示电路,上下限报警调整电路,单片机主板电路等,如图3.1 所示。三个独立式按键可以分别调整温度计的上下限报警设置,同时LED数码管将被测温度值显示,这时可以调整报警上下限,从而测出被测的温度值。按健复位电路是上电复位加手动复位,使用比较方便,在程序跑飞时,可以手动复位,这样就不用在重起单片机电源,就可以实现复位。显示电路是使用的串口显示,这种显示最大的优点

24、就是使用口资源比较少,只用p3口的RXD,和TXD,串口的发送和接收,四只数码管采用74LS164右移寄存器驱动,显示比较清晰。图3.1主板电路3.2 中央处理器MCS-51系列单片机是8位增强型,其主要的技术特征是为单片机配置了完善的外部并行总线和具有多级识别功能的串行通讯接口(UART),规范了功能单元的SFR控制模式及适应控制器特点的布尔处理系统和指令系统。属于这类单片机的芯片有许多种,如8051、8031、80C51等等。由于单片机具有较高的性能比,国内MCS-51系列单片机应用最广,易于开发、使用灵活、而且体积小、易于开发、抗干扰能力强,可以工作于各种恶劣的条件下,工作稳定等特点。本

25、设计本着实用性和适用性的要求,选择AT89C51单片机作为中央处理器。3.2.1 AT89C51简介AT89C51是一种带4K字节闪烁可编程可擦除只读存储器的具有低电压,高性能CMOS 的8位微处理器,俗称单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。如图3.2为AT89C51的内部结构框图。图3.2AT89C51的内部结构框图AT89C51单片机与MCS-51系列单片机兼容,AT89

26、C51内部有4K字节可编程闪烁存储器, 128*8位内部RAM,两个16位定时器/计数器, 5个中断源, 32可编程I/O线及串行通道。闪烁存储器是一种可编程又可擦除只读存储器(EEPROM),给用户设计单片机系统和单片机系统带来很大的方便,深受广大用户的欢迎。AT89C51有片内振荡器和时钟电路 ,具有低功耗的闲置和掉电模式,在空闲方式下,CPU停止工作,但允许内部RAM、定时器/计数器、串行口和中断系统继续工作。在掉电方式下,能保存RAM的内容,但振荡器停止工作,并禁止所有其他部件工作。还具有三级程序存储器锁定, 全静态工作频率0Hz-24Hz, 数据保留时间可长达10年。管脚说明如图3.

27、3为AT89C51引脚图,各引脚功能说明如下:图3.3 AT89C51引脚图(1) VCC: 电源。(2) GND: 地。(3) P0 口:P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0具有内部上拉电阻。在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。(4) P1 口:P1 口是一个具有内部上拉电阻的8 位双向I/O 口,P1输出缓冲器能驱动4个TTL逻辑电平。对P1 端口写“1

28、”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。此外,P1.0和P1.2分别作定时器/计数器2的外部计数输入(P1.0/T2)和时器/计数器2的触发输入(P1.1/T2EX)。(5) P2 口:P2 口是一个具有内部上拉电阻的8 位双向I/O 口,P2 输出缓冲器能驱动4 个TTL 逻辑电平。对P2 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX DPTR

29、)时,P2 口送出高八位地址。在这种应用中,P2 口使用很强的内部上拉发送1。在使用8位地址(如MOVX RI)访问外部数据存储器时,P2口输出P2锁存器的内容。在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。(6) P3 口:P3 口是一个具有内部上拉电阻的8 位双向I/O 口,对P3 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚。内部电阻的原因,将输出电流(IIL)。P3口亦作为AT89C51特殊功能(第二功能)使用,如表3-1所示。表3-1 AT89C51引脚号第二功能P3.0 RXD(串行输入)P3.1 TXD(串

30、行输出)P3.2 INT0(外部中断0)P3.3 INT0(外部中断0)P3.4 T0(定时器0外部输入)P3.5 T1(定时器1外部输入)P3.6WR(外部数据存储器写选通)P3.7 RD(外部数据存储器读选通)(7) RST: 复位输入,晶振工作时,RST脚持续2个机器周期高电平将使单片机复位。看门狗计时完成后,RST 脚输出96个晶振周期的高电平。特殊寄存器AUXR(地址8EH)上的DISRTO位可以使此功能无效。DISRTO默认状态下,复位高电平有效。(8) ALE/PROG:地址锁存控制信号(ALE)是访问外部程序存储器时,锁存低8 位地址的输出脉冲。在flash编程时,此引脚(PR

31、OG)也用作编程输入脉冲。在一般情况下,ALE 以晶振六分之一的固定频率输出脉冲,可用来作为外部定时器或时钟使用。然而,特别强调,在每次访问外部数据存储器时,ALE脉冲将会跳过。如果需要,通过将地址为8EH的SFR的第0位置“1”,ALE操作将无效。这一位置“1”,ALE 仅在执行MOVX 或MOVC指令时有效。这个ALE 使能标志位(地址为8EH的SFR的第0位)的设置对微控制器处于外部执行模式下无效。(9) PSEN:外部程序存储器选通信号(PSEN)是外部程序存储器选通信号。当AT89C51从外部程序存储器执行外部代码时,PSEN在每个机器周期被激活两次,而在访问外部数据存储器时,PSE

32、N将不被激活。(10) EA/VPP:访问外部程序存储器控制信号。为使能从0000H 到FFFFH的外部程序存储器读取指令,EA必须接GND。为了执行内部程序指令,EA应该接VCC。在flash编程期间,EA也接收12伏VPP电压。(11) XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。(12) XTAL2:振荡器反相放大器的输出端。特殊功能存储器在单片机内高128B RAM中,由有21个特殊功能寄存器(AFR),它们离散的分布在80H-FFH的RAM空间中,访问特殊功能寄存器只允许使用直接寻址方式。表3-2为AT89C51单片机特殊功能寄存器及其相应地址。表3-2 专用寄存器名称,

33、功能及对应的RAM地址名称简单描述地址ACC累加器(专门用于存储算术和逻辑运算的结果)0E0HBB寄存器(专门用于乘/除法运算)0F0HPSW程序状态寄存器0D0HSP推栈指针寄存器81HDPTR16位数据指针寄存器。CPU访问外部RAM时地址指针,由两个8位寄存器DPH(83H)、DPL(82H)组成且可单独访问。P0端口0状态寄存器(初始值为0FFH)80HP1端口1状态寄存器(初始值为0FFH)90HP2端口2状态寄存器(初始值为0FFH)0A0HP3端口3状态寄存器(初始值为0FFH)0B0HIP中断优先级控制寄存器0B8HIE中断允许控制寄存器0A8HTMOD定时器/计数器方式控制寄

34、存器89HTCON定时器/计数器控制寄存器88HTH0定时器/计数器0高字节8CHTL0定时器/计数器0低字节8AHTH1定时器/计数器1高字节8DHTLI定时器/计数器0低字节8BHSCON串行控制寄存器98HSBUF串行数据缓冲器99HPCON电源控制寄存器87H芯片擦除整个EPROM阵列电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10ms 来完成。在芯片擦除操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。此外,AT89C51设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。在闲置模式下,CPU停止工作。但RAM,定

35、时器,计数器,串口和中断系统仍在工作。在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。复位电路的设计复位使单片机处于起始状态,并从该起始状态开始运行。AT89C51的RST引脚为复位端,该引脚连续保持2个机器周期(24个时钟振动周期)以上高电平,则可使单片机复位。内部复位电路在每一个机器周期的S5P2期间采样斯密特触发器的输出端,该触发器可抑制RST引脚的噪声干扰,并在复位期间不产生ALE信号,内部RAM处于不断电状态。其中的数据信息不会丢失,也即复位后,只影响SFR中的内容,内部RAM中的数据不受影响。外部复位有上电复位和按键电平复位。由于单片机运

36、行过程中,其本身的干扰或外界干扰会导致出错,此时我们可按复位键重新开始运行。为了便于本设计运行调试,复位电路采用按键复位方式。按键复位电路如图3.4所示。图3.4 复位电路图3.5 时钟电路时钟电路设计时钟电路是单片机的心脏,它控制着单片机的工作节奏。MCS-51单片机允许的时钟频率是因型号而异的,其典型值为12MHZ。AT89C51内部有一个反相振荡放大器,XTAL1 和 XTAL2分别是该反向振荡放大器的输入端和输出端。该反向放大器可配置为片内振荡器,石晶振荡和陶瓷振荡均可采用。本设计采用的晶振频率为12MHZ。其时钟电路如图3.5所示。51系列单片机还可使用外部时钟。在使用外部

37、时钟时,外部时钟必须从XTAL1输入,而XTAL2悬空。3.3温度传感器DS18B20温度传感器的应用范围很广,它不仅用于日常生活中,而且也大量应用于自动化和过程检测控制系统。温度传感器的种类很多,根据现场使用条件,选择恰当的传感器类型才能保证测量的准确可靠,并且同时达到增加使用寿命和降低成本的目的。DS18B20温度传感器的内部存储器还包括一个高速暂存和一个非易失性的可电擦除的EERAM。高速暂存RAM的结构为9字节的存储器,结构如图3所示。第01个字节是温度的显示位,第2和第3字节和的拷贝,是易失的,每次上电复位时被刷新。第4个字节,为配置寄存器,它的内容用于确定温度值的数字转换分辨率。D

38、S18B20工作时寄存器中的分辨率转换为相应精度的温度数值。第5,6,7三个字节是保留的。该字节各位的定义如图3所示。DS18B20在出厂时默认配置为12位,其中最高位为符号位,即温度值共11位,单片机在读取数据时,一次会读2字节共16位,读完后将低11位的二进制数转化为十进制数后在乘以0.0625便为所测的实际温度值。另外,还需要判断温度的正负。前5个数字为符号位,这五位同时变化,我们只需要判断11位就可以了。前5位为1时,读取的温度为负值,且测到的数值需要取反加1再乘以0.0625才可得到实际温度值。前5位为0时,读取的温度值为正值,且温度为正值时,只要将测得的数值乘以0.0625即可得到

39、实际温度值。用户要去改动,R1和R0决定温度转换的精度位数,来设置分辨率。(1)可通过数据线供电,电压范围为3.05.5;(2)独特的单线接口仅需要一个端口引脚进行通信;(3)多个DS18B20可以并联在惟一的三线上,实现多点组网功能;(4)在使用中不需要任何外围元件,全部传感元件及转换电路集成在形如一只三极管的集成电路内;(5)零待机功耗;(6)温度以9或12位数字;(7)用户可定义报警设置;(8)报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件;(9)负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。DS18B20的测温原理是这这样的,器件中低温度系数晶振的振

40、荡频率受温度的影响很小,用于产生固定频率的脉冲信号送给减法计数器1;高温度系数晶振随温度变化其振荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入。器件中还有一个计数门,当计数门打开时,DS18B20就对低温度系数振荡器产生的时钟脉冲进行计数进而完成温度测量。计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将55所对应的一个基数分别置入减法计数器1、温度寄存器中,计数器1和温度寄存器被预置在55所对应的一个基数值。减法计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器1的预置值减到0时,温度寄存器的值将加1,减法计数器1的预置将重新被装入,减法计数器1重新开始对低温

41、度系数晶振产生的脉冲信号进行计数,如此循环直到减法计数器计数到0时,停止温度寄存器的累加,此时温度寄存器中的数值就是所测温度值。其输出用于修正减法计数器的预置值,只要计数器门仍未关闭就重复上述过程,直到温度寄存器值大致被测温度值。DS18B20采用3脚PR35封装或8脚SOIC封装,其内部结构框图如图3.6所示。C64 位ROM和单线接口高速缓存存储器与控制逻辑温度传感器高温触发器TH低温触发器TL配置寄存器8位CRC发生器Vdd图3.6 DS18B20内部结构3.4 LED显示单片机应用系统中使用的显示器主要有发光二极管显示器,简称LED;液晶显示器,简称LCD。前者价廉,配置灵活,与单片机

42、接口方便;后者可进行图形显示,但接口复杂,成本较高。结合本设计的特点,在这里系统的显示采用发光二极管作为显示器件。单片机中使用7段LED构成字形“8”,另外,还与一个小数点发光二极管用以显示数字、符号及小数点。这种显示器有共阴极和共阳极两种,如图3.7所示。发光二极管的阳极连在一起称为共阳极显示器,阴极连在一起的称为共阴极显示器。一位显示器由八个发光二极管组成,其中,7个发光二极管构成字形“8”的各个笔划(段)a-g,另一个小数点为dp发光二极管。当在某段发光二极管施加一定的正向电压是,该段笔划即点亮;不加电压则该段二极管不亮。为了保护各段LED不被损坏,需要外加限流电阻。图3.7 数码管如果

43、要显示某个字形,则应使此字形的相应段点亮,也即送一个不同的电平组合代表的数据来控制LED的显示字形,此数据称为字符的段码。数据字位数与LED段码的关系如表3-3所示。表3-3 数码管各段与输出口各位的对应关系输出口各位D7D6D5D4D3D2D1D0数码管各段dpgfedcba如使用共阳极数码管,数据为0表示对应字段亮,数据为1表示对应字段暗;如使用共阴极数码管,数据为0表示对应字段暗,数据为1表示对应字段亮。如要显示“0”,共阳极数码管的字型编码应为:11000000B(即C0H);共阴极数码管的字型编码应为:00111111B(3FH)。依次类推,可求得数码管字型编码如表3-4所示。本设计

44、显示采用LED串行静态显示。MCS-51系列单片机的串行口RXD,TXD为一个全双工串行通信口,当工作在方式0下可作同步移位寄存器用,其数据由RXD(P3.0)端串行输入或输出;而同步移位时钟由TXD(P3.1)串行输出,在同步时钟的作用下,实现由串行到并行的数据通信。在不需要使用串行通信的场合,利用串行口加外围芯片74LS164就可以构成一个或多个并行输入/输出口,用于显示器LED驱动。波特率(每秒传输的位数)固定在fosc/12,即当晶振为12MHZ时,波特率为1MBPS。在CPU将数据写入SBUF寄存器后,立即启动发送。待8位数据输完后,硬件将状态寄存器的TI位置1,TI必须由软件清零。

45、单片机与4片串入并出移位寄存器74LS164相连。其中,RXD作为164的数据输入,TXD作为4片164的同步时钟。程序运行时,单片机将4个数码管的段码(4个字节)连续发送出来,通过串行口送给164。4位字型码送完后,TXD保持高电平。此时每片164的并行输出口将送出保存在内部移位寄存器中的8位的段码给数码管,令数码管稳定地显示所需的字符。表3-4 数码管字型编码表字型共阳极共阴极dpgfedcba字型码dpgfedcba字型码011000000C0H001111113FH111111001F9H0000011006H210100100A4H010110115BH310110000B0H010

46、011114FH41001100199H0110011066H51001001092H011011016DH61000001082H011111017DH711111000F8H0000011107H81000000080H011111117FH91001000090H011011116FHA1000100088H0111011177HB1000001183H011111007CHC11000110C6H0011100139HD10100001A1H010111105EHE1000011086H0111100179HF100011108EH0111000171H灭11111111FFH0000

47、000000H74LS164是8位串入并出移位寄存器。它的引脚如图3.8所示。A、B为串行输入端,QAQH为串行输出端,CLK为串行时钟输入端,为串行输出清零端,VCC为+5V电源输入端,GND为接地端。具体输入输出关系如表3-5所示。X代表任意状态;QA0、QB0 QH0代表在稳态输入条件建立之前QA、QBQH的输出状态;QAn、QBnQHn代表在最近的时钟上升沿转换之前QA、QBQH的输出状态;H/L、QAnQBn代表在最近的时钟上升沿转换之后QA、QBQH的输出状态。表3-5 74LS164输入输出关系如所示输入输出清除 时钟 A BQA QB QHL X X XH L X XH H H

48、H L XH X LL L LQA0 QB0 QH0H QAn QGnL QAn QGnL QAn QGn图3.8 74LS164引脚如图串行显示电路属于静态显示,比动态显示亮度更大一些。由于74LS164在低电平输出时,允许通过的电流达8mA,故不必添加驱动电路,亮度也比较理想。与动态扫描相比较,无需CPU不停的扫描,频繁地为显示服务,节省了CPU时间,软件设计也比较简单。由于本设计采用的是共阳极数码管,所以相应的亮段必须送0,相应的暗段必须送1。原理图如图3.9所示:图3.9 LED串行静态显示3.5 键盘接口键盘在单片机应用系统中,实现输入数据、传送命令的功能,是人工干预的主要手段。键盘

49、分两大类:编码键盘和非编码键盘。编码键盘:由硬件逻辑电路完成必要的键识别工作与可靠性措施。每按一次键,键盘自动提供被按键的读数,同时产生一个选通脉冲通知微处理器,一般还具有反弹跳和同时按键保护功能。这种键盘易于使用,但硬件比较复杂,对于主机任务繁重之情况,采用8279可编程键盘管理接口芯片构成编码式键盘系统是很实用的方案。非编码键盘:只简单地提供键盘的行列与矩阵,其他操作如键的识别,决定按键的读数等都靠软件完成,故硬件较为简单,但占用CPU较多时间。非编码键盘有:独立式按键结构、矩阵式按键结构。本设计采用的是非编码独立连接式的键盘。在非编码键盘系统中,键闭合和键释放的信息的获取,键抖动的消除,

50、键值查找及一些保护措施的实施等任务,均由软件来完成。单片机应用系统中,键盘扫描只是CPU的工作内容之一。CPU忙于各项任务时,如何兼顾键盘的输入,取决于键盘的工作方式。考虑仪表系统中CPU任务的份量,来确定键盘的工作方式。键盘的工作方式选取的原则是:既要保证能及时响应按键的操作,又不过多的占用CPU的工作时间。键盘的工作方式有:查询方式(编程扫描,定时扫描方式)、中断扫描方式。独立式按键接口就是各按键相互独立,每个按键单独占用一根I/O口线,每根I/O口线的按键工作状态不会影响其他I/O口线上的工作状态。因此,通过检测输入线的电平状态可以很容易判断哪个按键被按下了。优点就是电路配置灵活,软件结

51、构简单;缺点就是每个按键需占用一根I/O口线,在按键数量较多时,I/O口浪费大,电路结构显得复杂。因此,此键盘是用于按键较少或操作速度较高的场合。本设计中由于所用键盘不多,所以采用独立连接式的查询式键盘就能够满足设计要求。键盘接口与键盘程序的根本任务就是要检测有没有键按下?按下的是那个位置的键?键值是多少?在本次设计中采用了软件扫描的方法。通过对键盘接口P1.0和P1.1的查询判断是否有键按下。本次设计采用了软件去抖动的方法。当有键按下时,按键的触点在闭合和断开时均会产生抖动,这时触点的逻辑电平是不稳定的,如果不妥善处理,将会使按键命令的错误执行和重复执行。采用软件延时的方法来避开抖动阶段,这

52、一延时过程一般大于5ms。3.6 控制电路在本设计中,被测温度信号经采样处理后,还需要通过单片机系统的P1.2口输出用以控制保温箱的温度,通过这种方式达到控制的目的。控制的方式主要有模拟量控制和开关量控制。本系统采用的是开关量控制。所谓的开关量控制就是通过控制设备的“开”或“关”状态的时间来达到控制的目的。由于输出设备往往需要大电压来控制,而单片机系统输出的为TTL电平,这种电平不能直接驱动外部设备的开启和关闭。另一方面,许多外部设备在开关过程中会产生很强的电磁干扰信号,如果不隔离会使系统进行错误的处理。因此在开关量的输出控制过程中要考虑到两个问题,一要隔离;二要放大。本设计采用继电器作为控制

53、电路的主要器件,继电器具有一定的隔离作用,在继电器前面加一个三极管用以放大输出信号就可以驱动继电器的闭合和断开,从而实现弱电控制强电的效果。继电器是一种电子控制器件,它具有控制系统(又称输入回路)和被控制系统(又称输出回路),通常应用于自动控制电路中,它实际上是用较小的电流控制较大电流的一种开关。故在电路中起自动调节、安全保护、转换电路等作用。在工业自动化控制系统中,继电器经常被用来控制执行机构, 特别是应用在一些耐潮、耐腐蚀、防爆的特殊装置中。固态继电器和MCS-51系列单片机组成的控制系统, 具有抗干扰性强、编程简单、系统兼容性好等特点,具有非常广阔的应用前景。继电器一般由通电线圈和触电组

54、成。当线圈通电时,由于磁场作用,使开关触电闭合。当不通电时,则开关触点断开。一般线圈可用直流低电压控制(+5V,+9V,+12V)。继电器的特性参数包括输入和输出参数,主要的参数为额定输入电压、额定输出电流、浪涌电流。根据输入电压参数值大小,可确定工作电压大小。如采用TTL或CMOS等逻辑电平控制时,采用有足够带载能力的低电平驱动,并尽可能使“0”电平低于0.8 V。如在噪声很强的环境下工作,不能选用通、断电压值相差小的产品,必需选用通、断点压值相差大的产品,(如选接通电压为8 V或12 V的产品)这样不会因噪声干扰而造成控制失灵 。本设计就是采用直流驱动电压为+5V的继电器。继电器控制电路如图3.10所示:3.10继电器控制电路4 系统软

温馨提示

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

评论

0/150

提交评论