AT89C51单片机温度控制系统(44页).doc

上传人:1595****071 文档编号:34795478 上传时间:2022-08-18 格式:DOC 页数:42 大小:319KB
返回 下载 相关 举报
AT89C51单片机温度控制系统(44页).doc_第1页
第1页 / 共42页
AT89C51单片机温度控制系统(44页).doc_第2页
第2页 / 共42页
点击查看更多>>
资源描述

《AT89C51单片机温度控制系统(44页).doc》由会员分享,可在线阅读,更多相关《AT89C51单片机温度控制系统(44页).doc(42页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、-毕 业 设 计(论 文)论文题目: AT89C51单片机温度控制系统 所属系部: 电子工程系指导老师: 职 称: 学生姓名: 班级、学号: 专 业: 应用电子技术 2012 年 05 月 15 日毕业设计(论文)任务书题目: AT89C51单片机温度控制系统任务与要求: 设计并制作一个能够控制1KW电炉的温度控制系 统,控制温 度恒定在37-38度之间。时间: 年 月 日 至 年 月 日 所属系部: 电子工程系学生姓名: 学号: 专 业: 应用电子技术指导单位或教研室: 测控技术教研室指导教师: 职 称: 年 月 日第 35 页-摘要本设计是以一个1KW电炉为控制对象,以AT89C51为控制

2、系统核心,通过单片机系统设计实现对保电炉温度的显示和控制功能。本温度控制系统是一个闭环反馈调节系统,由温度传感器DS18B20对保炉内温度进行检测,经过调理电路得到合适的电压信号。经A/D转换芯片得到相应的温度值,将所得的温度值与设定温度值相比较得到偏差。通过对偏差信号的处理获得控制信号,去调节加热器的通断,从而实现对保温箱温度的显示和控制。本文主要介绍了电炉温度控制系统的工作原理和设计方法,论文主要由三部分构成。 系统整体方案设计。 硬件设计,主要包括温度检测电路、A/D转换电路、显示电路、键盘设计和控制电路。 系统软件设计,软件的设计采用模块化设计,主要包括A/D转换模块、显示模块等。关键

3、词:单片机 传感器 温度控制目 录绪论1第一章 温度控制系统设计和思路21.1温度控制系统设计思路21.2 系统框图2第二章 AT89C51单片机32.1 AT89C51单片机的简介32.2 AT89C51单片机的主要特性32.3 AT89C51单片机管脚说明4第三章 温度控制的硬件设备63.1温度传感器简介63.2 DS18B20工作原理73.3 DS18B20使用中注意事项8第四章 系统硬件设计94.1温度采集电路94.2 数码管温度显示电路94.2.1 数码管的分类94.2.2 数码管的驱动方式104.2.3 恒流驱动与非恒流驱动对数码管的影响114.3 单片机接口电路124.3.1 P

4、0口的上拉电阻原理124.3.2 上拉电阻的选择144.4 单片机电源及下载线电路144.5 温度控制电路15第五章 温度控制的软件设计175.1 数码管动态显示175.2 DS18B20初始化175.3 系统流程图19谢辞20参考文献21附录22绪论温度控制,在工业自动化控制中占有非常重要的地位。单片机系统的开发应用给现代工业测控领域带来了一次新的技术革命,自动化、智能化均离不开单片机的应用。将单片机控制方法运用到温度控制系统中,可以克服温度控制系统中存在的严重滞后现象,同时在提高采样频率的基础上可以很大程度的提高控制效果和控制精度。现代自动控制越来越朝着智能化发展,在很多自动控制系统中都用

5、到了工控机,小型机、甚至是巨型机处理机等,当然这些处理机有一个很大的特点,那就是很高的运行速度,很大的内存,大量的数据存储器。但随之而来的是巨额的成本。在很多的小型系统中,处理机的成本占系统成本的比例高达20%,而对于这些小型的系统来说,配置一个如此高速的处理机没有任何必要,因为这些小系统追求经济效益,而不是最在乎系统的快速性,所以用成本低廉的单片机控制小型的,而又不是很复杂,不需要大量复杂运算的系统中是非常适合的。 温度控制,在工业自动化控制中占有非常重要的地位,如在钢铁冶炼过程中要对出炉的钢铁进行热处理,才能达到性能指标,塑料的定型过程中也要保持一定的温度。随着科学技术的迅猛发展,各个领域

6、对自动控制系统控制精度、响应速度、系统稳定性与自适应能力的要求越来越高,被控对象或过程的非线性、时变性、多参数点的强烈耦合、较大的随机扰动、各种不确定性以及现场测试手段不完善等,使难以按数学方法建立被控对象的精确模型的情况。 随着电子技术以及应用需求的发展,单片机技术得到了迅速的发展,在高集成度,高速度,低功耗以及高性能方面取得了很大的进展。伴随着科学技术的发展,电子技术有了更高的飞跃,我们现在完全可以运用单片机和电子温度传感器对某处进行温度检测,而且我们可以很容易地做到多点的温度检测,如果对此原理图稍加改进,我们还可以进行不同地点的实时温度检测和控制。第一章 温度控制系统设计和思路1.1温度

7、控制系统设计思路在这个系统中我们从性能及设计成本考虑,我们选择AT89C51芯片。AT89C51的广泛使用,使单片机的价格大大下降。目前,89C51的市场零售价已经低廉因此,如把89C51作为接口芯片使用,在经济上是合算的。在温度传感器的选择上我们采用温度芯片DS18B20测量温度。该芯片的物理化学性很稳定,它能用做工业测温元件,且此元件线形较好。在0100摄氏度时,最大线形偏差小于1摄氏度。该芯片直接向单片机传输数字信号,便于单片机处理及控制。本制作的最大特点之一就是直接采用温度芯片对温度进行测量,使数据传输和处理简单化。采用温度芯片DS18B20测量温度,体现了作品芯片化这个趋势。部分功能

8、电路的集成,使总体电路更简洁,搭建电路和焊接电路时更快。而且,集成块的使用,有效地避免外界的干扰,提高测量电路的精确度。所以芯片的使用将成为电路发展的一种趋势。本方案应用这一温度芯片,也是顺应这一趋势。对于温度的调节系统,我们才用的只是简单的升温和降温方法,当温度低于我们设定的最低温度值时,则单片机系统则会通过一个高电平的脉冲电流直接送给继电器,使连接在继电器上的电阻丝通电产生热量来提高温度。如果当温度高于我们设定的最高温度值时,则单片机会通过另一个口发出一个高电平的脉冲电流送个继电器,使连在继电器上的一个风扇启动,来降低温度。在次过程中,我们通过单片机将传感器所测量出来的温度通过数码管显示出

9、来。这样就能只管的观察到即时的温度情况,以便更好的验证系统的性能。1.2 系统框图 单片机温度控制系统采用的装置有单片机、温度传感器和显示器组成起结构如图1.1硬件结构图所示。数据显示温度传感器AT89C51单片机温度控制键盘图1.1温度控制系统硬件结构图第二章 AT89C51单片机2.1 AT89C51单片机的简介 AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪烁可编程可擦除只读存储器的

10、单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。2.2 AT89C51单片机的主要特性 与MCS-51 兼容 4K字节可编程闪烁存储器 寿命:1000写/擦循环 数据保留时间:10年 全静态工作:0Hz-24Hz 三级程序存储器锁定 128*8位内部RAM 32可编程I/O线 两个16

11、位定时器/计数器 5个中断源 可编程串行通道 低功耗的闲置和掉电模式 图2.1 AT89C51引脚图 片内振荡器和时钟电路 2.3 AT89C51单片机管脚说明 如图2.1为AT89C51引脚图,各引脚功能说明如下: VCC: 电源 GND: 地 P0 口:P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0具有内部上拉电阻。在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。 P1 口:

12、P1 口是一个具有内部上拉电阻的8 位双向I/O 口,P1输出缓冲器能驱动4个TTL逻辑电平。对P1 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。此外,P1.0和P1.2分别作定时器/计数器2的外部计数输入(P1.0/T2)和时器/计数器2的触发输入(P1.1/T2EX) P2 口:P2 口是一个具有内部上拉电阻的8 位双向I/O 口,P2 输出缓冲器能驱动4 个TTL 逻辑电平。对P2 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因

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

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

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

16、AT89C51从外部程序存储器执行外部代码时,PSEN在每个机器周期被激活两次,而在访问外部数据存储器时,PSEN将不被激活。 EA/VPP:访问外部程序存储器控制信号。为使能从0000H 到FFFFH的外部程序存储器读取指令,EA必须接GND。为了执行内部程序指令,EA应该接VCC。在flash编程期间,EA也接收12伏VPP电压。 XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。 XTAL2:振荡器反相放大器的输出端。第三章 温度控制的硬件设备3.1温度传感器简介 DS18B20原理与特性本系统采用了DS18B20单总线可编程温度传感器,来实现对温度的采集和转换,大大简化了电路的复

17、杂度,以及算法的要求。首先先来介绍一下DS18B20这块传感器的特性及其功能: DSl8B20的管脚及特点 DS18B20可程温度传感器有3个管脚内部结构主要由四部分组成:64位光刻ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。DS18B20的外形及管脚排列如下图所示,GND为接地线,DQ为数据输入输出接口,通过一个较弱的上拉电阻与单片机相连。VDD为电源接口,既可由数据线提供电源,又可由外部提供电源,范围3O55 V。本文使用外部电源供电。图3.1 DS18B20的外形及管脚 主要特点有: 1. 用户可自设定报警上下限温度值。 2. 不需要外部组件,能测量55+125 范

18、围内的温度。 3. 10 +85 范围内的测温准确度为05 。 4. 通过编程可实现9l2位的数字读数方式,可在至多750 ms内将温度转换成12 位的数字,测温分辨率可达00625 。 5. 独特的单总线接口方式,与微处理器连接时仅需要一条线即可实现与微处理器双向通讯。6. 测量结果直接输出数字温度信号,以一线总线串行传送给CPU,同时可传送CRC校验码,具有极强的抗干扰纠错能力。7. 负压特性:电源极性接反时,芯片不会因发热而烧毁,但不能正常工作。8. DS18B20支持多点组网功能,多个DS18B20可以并联在唯一的三线上,实现组网多点测温。3.2 DS18B20工作原理DS18B20的

19、读写时序和测温原理与DS1820相同,只是得到的温度值的位数因分辨率不同DS18B20 为9位12位A/D转换精度,而DS1820为9位A/D转换,虽然我们采用了高精度的芯片,但在实际情况上由于技术问题比较难实现,而实际精度此时温度寄存器中的数值即为所测温度。斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正计数器1的预置值。测温原理图不同,且温度转换时的延时时间由2s减为750ms。低温度系数晶振的振荡频率受温度影响很小,用于产生固定频率的脉冲信号送给计数器1。则高温度系数晶振随温度变化其振荡率明显改变,所产生的信号作为计数器2的脉冲输入。计数器1和温度寄存器被预置在55所对应的一个

20、基数值时。计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当计数器1的预置值减到0时,温度寄存器的值将加1,计数器1的预置将重新被装入,计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到计数器2计数到0时,停止温度寄存器值。3.3 DS18B20使用中注意事项 DS18B20虽然具有测温系统简单、测温精度高、连接方便、占用口线少等优点,但在实际应用中也应注意以下几方面的问题: 1) 较小的硬件开销需要相对复杂的软件进行补偿,由于DS18B20与微处理器间采用串行数据传送,因此,在对DS18B20进行读写编程时,必须严格的保证读写时序,否则将无法读取测温结果。在使用PL/M

21、、C等高级语言进行系统程序设计时,对DS18B20操作部分最好采用汇编语言实现。 2) 在DS18B20的有关资料中均未提及单总线上所挂DS18B20数量问题,容易使人误认为可以挂任意多个DS18B20,在实际应用中并非如此。当单总线上所挂DS18B20超过8个时,就需要解决微处理器的总线驱动问题,这一点在进行多点测温系统设计时要加以注意。 3) 连接DS18B20的总线电缆是有长度限制的。试验中,当采用普通信号电缆传输长度超过50m时,读取的测温数据将发生错误。当将总线电缆改为双绞线带屏蔽电缆时,正常通讯距离可达150m,当采用每米绞合次数更多的双绞线带屏蔽电缆时,正常通讯距离进一步加长。这

22、种情况主要是由总线分布电容使信号波形产生畸变造成的。因此,在用DS18B20进行长距离测温系统设计时要充分考虑总线分布电容和阻抗匹配问题。 4) 在DS18B20测温程序设计中,向DS18B20发出温度转换命令后,程序要等待DS18B20的返回信号,一旦某个DS18B20接触不好或断线,当程序读该DS18B20时,将没有返回信号,程序进入死循环。这一点在进行DS1820硬件连接和软件设计时也要给予一定的重视。 测温电缆线建议采用屏蔽4芯双绞线,其中一对线接地线与信号线,另一组接VCC和地线,屏蔽层在源端单点接地。第四章 系统硬件设计4.1温度采集电路数据采集电路如图4.1所示,由温度传感器DS

23、18B20采集被控对象的实时温度,提供给AT89S52的P3.1口作为数据输入。在本次设计中我们所控的对象为所处室温。当然作为改进我们可以把传感器与电路板分离,由数据线相连进行通讯,便于观察。4.2 数码管温度显示电路4.2.1 数码管的分类 数码管是一种半导体发光器件,其基本单元是发光二极管。数码管按段数分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元(多一个小数点显示);按能显示多少个“8”可分为1位、2位、4位等等数码管;按发光二极管单元连接方式分为共阳极数码管和共阴极数码管。共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管。共阳数码管在应

24、用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。当某一字段的阴极为高电平时,相应字段就不亮。共阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(COM)的数码管。共阴数码管在应用时应将公共极COM接到地线GND上,当某一字段发光二极管的阳极为高电平时,相应字段就点亮。当某一字段的阳极为低电平时,相应字段就不亮。图4.1单片机89C51与温度传感器DS18B20的连接图4.2.2 数码管的驱动方式 静态显示驱动:静态驱动也称直流驱动。静态驱动是指每个数码管的每一个段码都由一个单片机的I/O端口进行驱动,或者使用如BCD码二-十进制译码器译码进行驱动。静

25、态驱动的优点是编程简单,显示亮度高,缺点是占用I/O端口多,如驱动5个数码管静态显示则需要5840根I/O端口来驱动,要知道一个89S51单片机可用的I/O端口才32个呢:),实际应用时必须增加译码驱动器进行驱动,增加了硬件电路的复杂性。 动态显示驱动:数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划a,b,c,d,e,f,g,dp的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM端电路

26、的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流控制各个数码管的的COM端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位数码管的点亮时间为12ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的I/O端口,而且功耗更低。4.2.3 恒流驱动与非恒流驱动对数码管的影响1、显示效果:由于发光二极管基本上属于电流敏感器件,其正向压降的分散性很大, 并且还与温度有关,为

27、了保证数码管具有良好的亮度均匀度,就需要使其具有恒定的工作电流,且不能受温度及其它因素的影响。另外,当温度变化时驱动芯片还要能够自动调节输出电流 的大小以实现色差平衡温度补偿。2、安全性:即使是短时间的电流过载也可能对发光管造成永久性的损坏,采用恒流驱动电路后可防止 由于电流故障所引起的数码管的大面积损坏。另外,我们所采用的超大规模集成电路还具有级联延时开关特性,可防止反向尖峰电压对发光二极管的损害。超大规模集成电路还具有热保护功能,当任何一片的温度超过一定值时可自动关断,并且可在控制室内看到故障显示。 图4.2 数码管显示电路4.3 单片机接口电路4.3.1 P0口的上拉电阻原理 1、当TT

28、L电路驱动COMS电路时,如果TTL电路输出的高电平低于COMS电路的最低高电平(一般为3.5v)这时就需要在TTL的输出端接上拉电阻,以提高输出高电平的值。 2、OC门电路必须加上拉电阻,才能使用。 3、为加大输出引脚的驱动能力,有的单片机管脚上也常使用上拉电阻。 4、在COMS芯片上,为了防止静电造成损坏,不用的管脚不能悬空,一般接上拉电阻产生降低输入阻抗,提供泄荷通路。 5、芯片的管脚加上拉电阻来提高输出电平,从而提高芯片输入信号的噪声容限增强抗干扰能力。 6、提高总线的抗电磁干扰能力。管脚悬空就比较容易接受外界的电磁干扰。7、长线传输中电阻不匹配容易引起反射波干扰,加上下拉电阻是电阻匹

29、配,有效的抑制反射波干扰。 上拉电阻阻值的选择原则包括:1、从节约功耗及芯片的灌电流能力考虑应当足够大;电阻大,电流小。2、从确保足够的驱动电流考虑应当足够小;电阻小,电流大。3、对于高速电路,过大的上拉电阻可能边沿变平缓。综合考虑以上三点,通常在1k到10k之间选取。对下拉电阻也有类似道理 对上拉电阻和下拉电阻的选择应结合开关管特性和下级电路的输入特性进行设定 主要需要考虑以下几个因素:1、驱动能力与功耗的平衡。以上拉电阻为例,一般地说,上拉电阻越小,驱动能力越强,但功耗越大,设计是应注意两者之间的均衡。2、下级电路的驱动需求。同样以上拉电阻为例,当输出高电平时,开关管断开,上拉电阻应适当选

30、择以能够向下级电路提供足够的电流。 3、高低电平的设定。不同电路的高低电平的门槛电平会有不同,电阻应适当设定以确保能输出正确的电平。以上拉电阻为例,当输出低电平时,开关管导通,上拉电阻和开关管导通电阻分压值应确保在零电平门槛之下。4、频率特性。以上拉电阻为例,上拉电阻和开关管漏源级之间的电容和下级电路之间的输入电容会形成RC延迟,电阻越大,延迟越大。上拉电阻的设定应考虑电路在这方面的需求。下拉电阻的设定的原则和上拉电阻是一样的。OC门输出高电平时是一个高阻态,其上拉电流要由上拉电阻来提供,设输入端每端口不大于100uA,设输出口驱动电流约500uA,标准工作电压是5V,输入口的高低电平门限为0

31、.8V(低于此值为低电平);2V(高电平门限值)。选上拉电阻时:500uA x 8.4K= 4.2即选大于8.4K时输出端能下拉至0.8V以下,此为最小阻值,再小就拉不下来了。如果输出口驱动电流较大,则阻值可减小,保证下拉时能低于0.8V即可。当输出高电平时,忽略管子的漏电流,两输入口需200uA,200uA x15K=3V即上拉电阻压降为3V,输出口可达到2V,此阻值为最大阻值,再大就拉不到2V了。选10K可用。COMS门的可参考74HC系列设计时管子的漏电流不可忽略,IO口实际电流在不同电平下也是不同的,上述仅仅是原理,一句话概括为:输出高电平时要喂饱后面的输入口,输出低电平不要把输出口喂

32、撑了(否则多余的电流喂给了级联的输入口,高于低电平门限值就不可靠了)。4.3.2 上拉电阻的选择我们在此设计中原则的是用P0口来驱动数码管的显示,所以我们所通过上述原理。如果是驱动led,那么用1K左右的就行了。如果希望亮度大一些,电阻可减小,最小不要小于200欧姆,否则电流太大;如果希望亮度小一些,电阻可增大,增加到多少,主要看亮度情况,以亮度合适为准,一般来说超过3K以上时,亮度就很弱了,但是对于超高亮度的LED,有时候电阻为10K时觉得亮度还能够用。通常就用1k的。其具体的连接电路图如图4.3所示:图4.3单片机上拉电阻示意图4.4 单片机电源及下载线电路 7805是我们最常用到的稳压芯

33、片了,他的使用方便,用很简单的电路即可以输入一个直流稳压电源,他的输出电压恰好为5v,刚好是51系列单片机运行所需的电压,介绍一下他的3个引脚以及用它来构成的稳压电路的资料。其中1接整流器输出的+电压,2为公共地(也就是负极),3就是我们需要的正5V输出电压了。 图4.4 7085引脚图 图4.5 7085电源原理图本次用的下载线电路是以一块74LS373芯片为主的电路。原理图如图4.6。该电路在原理图上只有一个下载口的体现,只要把下载线接到下载口就可以把程序下载到单片机中了。图4.6下载线电路原理图4.5 温度控制电路温度控制分为高、低温控制。设计所要达到的效果就是,我们给单片机设置一个固定

34、的温度范围,当温度传感器测量的温度高于我们设置的最高数值时,这时单片机指令控制P3.2口产生一个高电平信号送给固态继电器,是继电器的产开开关闭合,使开关打开通电。控制一个降温装置的开启(本设计中考虑到成本和技术问题,采用电风扇进行降温控制)。相反,当温度传感器测量的温度低于设置的最低数值的时候,这时单片机又控制P3.3口产生一个高电平送给继电器,使开关打开从而控制升问装置进行加热(本系统采用电热丝进行加热)。通过一个升温和一个降温装置,就能实现温度的调节。只要通过程序,将我们所要达到的温度控制在一个恒温状态下。控制电路的原理图如5.7所示,继电器的正极接电源电压,负极接三极管的集电极,之所以采

35、用三极管,就是继电器一般是需要驱动电压的。而单片机的管脚不能提供最后高的电压,这样就会导致即使单片机送出了高电平也无法将继电器开关打开。当接上三极管后就能将输入信号的发送到继电器当中,驱动开关使温度调节器改变温度。图4.7温度控制电路继电器的选择上,我们选择北京科通继电器总厂生产的GX-10F继电器为例,列出输入、输出参数,根据输入电压参数值大小,可确定工作电压大小。如采用TTL或CMOS等逻辑电平控制时,最好采用有足够带载能力的低电平驱动,并尽可能使“0”电平低于0.8 V。如在噪声很强的环境下工作,不能选用通、断电压值相差小的产品,必需选用通、断电压值相差大的产品,(如选接通电压为8 V或

36、12 V的产品)这样不会因噪声干扰而造成控制失灵 。我们在这选择12V的继电器作为我们使用的器件。使用的具体元件参数如下表。第五章 温度控制的软件设计5.1 数码管动态显示单片机AT89C51输出8个高低电平信号每个数码管的8个段分别连接P0.0-P0.7口上当某个数码管的公共端为“0”时,那么这个数码管被选中,这时此数码管的哪段为”1“则哪段就被点亮初学者可以利用本实验板自带的仿真器功能来单步执行,来观察数码管的工作原理,由于I/O资源有限,一个51单片机只有32个I/O所以只能将8个数码管以动态扫描的方式来显示,何为动态扫描呢?动态扫描的连接方式是将8个数码管的8个段用相同的I/O来控制,

37、即第一个数码管的”a“段由P0.0控制第二个数码管的”a“段也是由P0.0来控制的而8个数码管的公共端则是由不同的I/O来控制,即第一个数码管的公共端由P2.4控制而第二个数码管的公共端有P2.5控制动态扫描的控制原理是:将第一个数码管要显示的内容显示出来,然后立刻将第二个数码管的内容显示出来,一次把第8个数码管的内容显示出来由于单片机的工作速度非常快,所以当显示第8个数码管的时候第一个数码管的内容还没有完全消失,这时立刻重复上面的过程,就实现了数码管的。数码关分共阳极数码管,还有就是共阴极数码管,我们就采用共阴来使用。单片机各个口的电压输出的都为高电平。共阴就通过控制阳极,即可控制LED显示

38、。5.2 DS18B20初始化DS18B20的一线工作协议流程是:初始化ROM操作指令存储器操作指令数据传输。其工作时序包括初始化时序、写时序和读时序。故主机控制DS18B20完成温度转换必须经过三个步骤:每一次读写之前都要对DS18B20进行复位,复位成功后发送一条ROM指令,最后发送RAM指令,这样才能对DS18B20进行预定的操作。复位要求主CPU将数据线下拉500微秒,然后释放,DS18B20收到信号后等待1660微秒左右,后发出60240微秒的存在低脉冲,主CPU收到此信号表示复位成功。DS18B20的单线协议和命令 DS18B20有严格的通信协议来保证各位数据的传输的正确性和完整性

39、主机操作单线器件DS18B20必须遵循下面的顺序.1.初始化单线总线上的所有操作均从初始化开始。初始化过程如下:主机通过拉低单线480us以上,产生复位脉冲,然后释放该线,进入Rx接收模式主机释放总线时,会产生一个上升沿。单线期间DS18B20检测到改上升沿后,延时15-60us,通过拉低总线60-240us来产生应答脉冲。主机棘手到从机的应答脉冲后,说明有单线器件在线。2.ROM操作命令一旦总线主机检测到应答脉冲,便可以发起ROM操作命令。工有5位ROM操作命令。3.内存操作命令在成功执行了ROM操作命令之后,才可以使用内存操作命令。主机可以提供6种内存操作命令。4.数据处理DS18B20要

40、有严格的时序来保证数据的完整性。在单线DQ上,存在复位脉冲、应答脉冲、写“0”、写“1”、读“0”和读“1”几种信号类型。其中,出来映带脉冲之外,均由主机产生。数据位的读和写则是通过使用读、写时隙实现的。首先来看写时隙。当主机将数据从高电平来至低电平时,产生写时隙。有2种类型的写时隙:写“1”和写“0”。所有写时隙必须在60us以上,各个写时隙之间必须保证最段1us的恢复时间。DS18B20在DQ线变低后的15-60us的窗口对DQ线进行采样,如果为高电平,就写“1”;如果为低电平就写“0”。对于主机产生写“1”时隙的情况,数据线必须先被拉低,然后释放,在写时隙开始后的15us,允许DQ线来至

41、高电平。读主机产生写“0”时隙的情况,DQ线必须被拉至低电平且至少保持低电平60us。再来看读时隙。当主机从DS18B20读数据时,把数据线从高电平来至低电平,产生读时隙。数据线DQ必须保持低电平至少1us,来自DS18B20的输出数据在读时隙下降沿之后15us内有效。因此,在此15us内,主机必须停止将DQ引脚置低。在读时隙结束时,DQ引脚将通过外部上拉电阻拉回来至高电平。所有的读时隙最短必须持续60us,各个读时隙之间必须保证延时到最段1us的恢复时间。所以的读写时隙至少需要60us,且每两个独立的时隙之间至少需要1us的恢复时间。在写时隙中,主机将在拉低中线15us内释放总线,并向DS1

42、8B20写“1”。若主机拉低总线后能保持至少60us的低电平,则向单总线期间写“0”。DS18B20仅在主机发生读时隙时才向主机传输数据,所以,当主机向DS18B20发生读数据命令后,必须马上产生读时隙,以便DS18B20能传输数据。5.3 系统流程图开始初始化启动18B20P3.3高电平升温P3.2高电平降温读温度计算温度显示温度?下限?上限结束 图5.1系统流程图谢辞 经过几个月的学习和试验,终于完成了我的毕业设计。看着自己辛勤的成果,心里非常高兴。在这期间遇到了很多从来都没有遇到过的问题,但通过自己的努力和老师,同学的帮助,最后把他们一一解决了。其中在柳铭老师的精心安排和指导下,对题目有

43、了较深入的理解,也尝到了电路系统设计的艰辛。在本次设计中我在各个环节中都做到了深入实际,动手实践,不仅对我们学过的理论知识进行了一次全面的复习和巩固,而且对电路、单片机等方面拓展了我们的知识,为将来实际工作打下了良好的基础,特别是在分析问题、解决问题的方面得到了良好的锻炼机会,受益匪浅。 由于本人水平和经验有限,再设计的过程中难免存在一些不足甚至错误,敬请各位老师和同学批评指正。最后,向我的指导老师老师表示诚挚的感谢,同时,也向帮助过我的同学们表示感谢!参考文献1 马忠梅.单片机的C语言应用程序设计M.北京:北京航空航天大学出版社,1998 2 李晓荃.单片机原理与应用M.北京:电子工业出版社,2000年8月3 何立民 AVR单片机原理与接口技术M.北京:北京航空航天大学出版社,20024 杨帮文 新型继电器实用手册M.北京:北京人民邮电出版社.20045 何立民 单片机的语言应用程序设计M.北京:北京航空航天大学出版社,19976 彭伟.单片机C语言程序设计实训100例.电子工业出版社,2009,46-48,104-1107 宁爱民 蓝如波 单片机应用技术M .北京理工大学出版社,2009.88 李国兴 单片机开发应用技术M .北京大学出版社,2007.附录成品图:

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 单元课程

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com