




已阅读5页,还剩32页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
目录摘要IABSTRACTII第1章 绪论11.1研究意义及背景11.2设计目的及要求11.3主要工作21.4设计的实现2第2章 系统概述32.1系统方案32.2系统组成3第3章 系统硬件设计43.1 STC89C52单片机43.1.1 STC89C52单片机主要特性43.1.2 STC89C52单片机引脚介绍53.2数码管显示83.3 DS18B20温度传感器93.3.1温度传感器测温原理103.3.2 DS18B20使用中的注意事项113.4系统工作原理123.5系统整体电路123.5.1 复位电路123.5.2 晶振电路123.5.3 系统整体电路13第4章 系统软件设计134.1主程序设计144.2 DS18B20初始化154.3 DS18B20温度传感器与单片机的接口电路154.4数码管显示与单片机对接16第五章 系统调试175.1调试软件的选用与使用175.1.1 KEIL 软件的使用175.1.2proteus软件的使用175.2仿真结果与分析18结论19附录23程序清单23系统实物图32基于单片机的数字温度计的设计摘要 在现代日常生活和工业生产过程中,经常会用到温度的检测及控制,在生产过程中,为了高效地生产,必须对它的主要参数进行有效的控制。传统的测温元件有热电偶和热电阻。而热电偶和热电阻测出的一般都是电压,再转换成对应的温度,这些方法相对比较复杂,需要比较多的外部硬件支持。我们用一种相对比较简单的方式来测量。本文介绍一种基于STC89C52单片机的一种温度测量及报警电路,该电路采用DS18B20温度传感器作为温度监测元件,测量范围0-+100,使用LED数码管模块进行温度显示,能设置温度报警上下限。正文着重给出了软硬件系统的各部分电路,介绍了集成温度传感器DS18B20的原理,STC89C52单片机功能和应用。该电路设计新颖、功能强大、绿色低碳、结构简单。关键词:温度测量,温度传感器,单片机ABSTRACT In daily life and industrial production process, often used in the detection and control of temperature. In the production process, in order to efficiently carry out the production, to be its main parameters, such as temperature, pressure, flow control, etc. Temperature control in the production process of a large proportion. Temperature measurement is the basis of temperature-controlled, more mature technology.Traditional thermocouple and temperature components are the second resistor.The thermocouple and thermal resistance are generally measured voltage, and then replaced by the corresponding temperature, these methods are relatively complex, requiring a relatively large number of external hardware support. We use a relatively simple way to measure.The introduction of a cost-based STC89C52 MCU a temperatur measurement circuits, the circuits used DS18B20 high-precision temperatur sensor, measuring scope 0-+100,can set the warning limitation, the use of seven segments LED that can be display the current temperature. The paper focuses on providing a software and hardware system components circuit, introduced the theory of DS18B20, the founctions and applications of STC89C52 .This circuit design innovative, powerful, can be expansionary strong.Keywords: Temperatur measurement ,Temperature sensor ,SCM I第1章 绪论1.1研究意义及背景 日常生活及工农业生产中经常要用到温度的检测及控制,在冶金、食品加工、化工等工业生产过程中,广泛使用的各种加热炉、热处理炉、反应炉等,都要求对温度进行严格控制。在日常生活中,电烤箱、微波炉、电热水器、烘干箱等电器也需要进行温度检测与控制。传统的测温元件有热电偶和热电阻。而热电偶和热电阻测出的一般是电压,再转换成对应的温度,需要比较多的外部硬件支持,硬件电路复杂,软件调试复杂,制作成本高。而采用单片机对温度进行控制,不仅具有控制方便,简单和灵活等优点,而且可以大幅度提高温度控制的技术指标。 随着新技术的不断开发与应用,近年来单片机发展十分迅速,一个以微机应用为主的新技术革命浪潮正在蓬勃兴起,单片机的应用已经渗透到电力、冶金、化工、建材、机械、食品、等各个行业。传统的温度采集方法不仅费时费力,而且精度差,单片机的出现使得温度的采集和数据处理问题能够得到很好的解决。本设计使用单片机作为核心进行控制。单片机具有集成度高,通用性好,功能强,特别是体积小,重量轻,耗能低,可靠性高,抗干扰能力强和使用方便等独特优点,在数字化、智能化方面有广泛的用途。传统的水银温度计和热电偶等,存在测量不方便、精度低、采集和传输较复杂等缺点。本设计采用美国Dallas公司的DS18B20和STC89C52单片机构成温度测量系统,用LED数码管实时显示温度,具有更高的智能性和直观性。1.2设计目的及要求设计一个以单片机为核心的温度测量系统,可实现的功能为:1. 系统可由用户预设温度值,温度显示基本范围0.0099.99。2. 系统允许精度误差小于0.01。3. 系统具有数码显示功能,所测温度值由四位数码管显示。4. 可以设定温度的上下限报警功能,即发光二极管亮。 1.3主要工作本设计的研究重点是设计一种基于单片机的数字温度计系统,并具有实时显示,可设置上下限报警,超限自动报警等功能。设计采用数字温度传感器DS18B20,此传感器读取被测量温度值,并进行转换。将转换后的数据送到单片机处理,再通过数码管显示出来。要较好的设计出温度计,需要我们深入的了解DS18B20温度传感器的构造、接线、信息沟通,要较好的掌握51系列单片机的使用以及硬件搭建,LED数码管的显示原理以及与单片机的连接。要找出一个较好的温度采集方案,使得到的温度更加准确。1.4设计的实现 测量温度的关键是温度传感器,温度传感器正从模拟式向数字式、从集成化向智能化、网络化的方向发展。在测温电路中,可以使用热敏电阻之类的器件利用其感温效应,将随被测温度变化的电压或电流采集过来,先进行A/D转换,然后用单片机进行数据的处理,再在显示电路上,将被测温度显示出来。这种设计需要用到A/D转换电路,因此感温电路的设计比较复杂。 本数字温度计的设计采用美国DALLAS半导体公司继DS1820之后推出的一种改进型智能温度传感器DS18B20作为检测元件,其温度值可以直接被读出来,通过核心器件单片机STC89C52控制温度的读写和显示,用LED数码管显示。测温范围为0.0099.99,最大分辨率可达0.01。而且采用3线制与单片机相连,减少了外部的硬件电路,具有低成本和易使用的特点。 按照系统设计功能的要求,确定系统有5个模块组成:主控制器、温度传感器DS18B20、报警电路、按键预置温度值电路及显示电路。控制器使用STC89C52,温度传感器使用DS18B20,用8位共阳极LED数码管以动态扫描法实现温度显示。系统程序主要包括主程序、温度控制子程序及显示子程序等等。综上所述,本设计以智能集成温度传感器DS18B20为例,介绍基于DS18B20传感器和STC89C52单片机的数字温度计的设计,该设计适用于人们的日常生活及工农业生产中用于温度的检测及报警。第2章 系统概述2.1系统方案在日常生活及工农业生产中经常要用到温度的检测及控制,传统的测温元件有热电偶和热点阻。而热电偶和热电阻测出的一般都是电压,再转换成对应的温度,需要比较多的外部硬件支持,硬件电路复杂,软件调试复杂,制作成本高。数字温度传感器DS18B20输出信号全数字化,便于单片机处理及控制,省去传统测温方法的很多外围电路。且该芯片的物理性、化学性很稳定,能用做工业测温元件。采用51单片机控制,软件编程的自由度大,可通过编程实现各种各样的算术算法和逻辑控制,硬件实现简单,体积小,安装方便。所以该系统利用STC89C52芯片控制温度传感器DS18B20进行实时温度检测并显示,能够实现快速测量环境温度,并可根据需要设定上下限报警温度。2.2系统组成本设计是以STC89C52单片机为核心的一种数字温度显示控制系统,系统整体硬件电路包括:采集模块、显示模块、设置模块和单片机最小系统模块四大模块组成。系统框图如图2.1所示。单片机最小系统 显示模块设置模块采集模块 图2.1 系统基本方框图第3章 系统硬件设计3.1 STC89C52单片机在了解STC89C52之前,让我们来了解一下80C51单片机家族。虽然目前单片机的品种很多,但其中最具代表性的当属Intel公司的MCS-51单片机系列。MCS-51以其典型的结构、完善的总线、SFR的集中管理模式、位操作系统和面向控制功能的丰富的指令系统,为单片机的发展奠定了良好的基础。MCS-51系列的典型芯片是80C51(CMOS型的8051)。为此,众多的厂商都介入了以80C51为代表的8位单片机的发展,如Philips、Siemens(Infineon)、Dallas、ATMEL等公司,我们把这些公司生产的与80C51兼容的单片机统称为80C51系列。特别是在近年来,80C51系列又有了许多发展,推出了一些新产品,主要是改善单片机的控制功能,如内部集成了高速I/O口、ADC、PWM、WDT等,以及低电压、微功耗、电磁兼容、串行扩展总线和控制网络总线性能等。ATMEL公司研制的89CXX系列是将flash memory(EEPROM)集成在80C51中,作为用户程序存储器,并不改变80C51的结构和指令系统。鉴于80C51系列在硬件方面的的广泛性、代表性和先进性以及指令系统的兼容性,可用其作为本文章的介绍对象;至于其他类型的单片机,在深入学习和掌握了80C51单片机之后再去学习已不是什么难事。3.1.1 STC89C52单片机主要特性 1. 一个8位的微处理器(CPU)。2. 片内数据存储器RAM(128B),用以存放可以读写的数据,如运算的中间结果、最终结果以及欲显示的数据等,SST89 系列单片机最多提供1K 的RAM。3. 片内程序存储器ROM(4KB),用以存放程序、一些原始数据和表格。但也有一些单片机内部不带ROM/EPROM,如8031,8032,80C31 等。目前单片机的发展趋势是将RAM 和ROM 都集成在单片机里面,这样既方便了用户进行设计又提高了系统的抗干扰性。SST 公司推出的89 系列单片机分别集成了16K、32K、64K Flash 存储器,可供用户根据需要选用。4. 四个8 位并行IO 接口P0P3,每个口既可以用作输入,也可以用作输出。5. 两个定时器计数器,每个定时器计数器都可以设置成计数方式,用以对外部事件进行计数,也可以设置成定时方式,并可以根据计数或定时的结果实现计算机控制。为方便设计串行通信,目前的52 系列单片机都会提供3 个16 位定时器/计数器。6. 五个中断源的中断控制系统。现在新推出的单片机都不只5 个中断源,例如SST89E58RD 就有9 个中断源。7. 一个全双工UART(通用异步接收发送器)的串行IO 口,用于实现单片机之间或单机与微机之间的串行通信。8. 片内振荡器和时钟产生电路,但石英晶体和微调电容需要外接。最高允许振荡频率为12MHz。SST89V58RD 最高允许振荡频率达40MHz,因而大大的提高了指令的执行速度。3.1.2 STC89C52单片机引脚介绍STC89C52的管脚图如下。图3.1 STC89C52单片机管脚图STC89C52部分引脚说明:时钟电路引脚XTAL1 和XTAL2:XTAL2(18 脚):接外部晶体和微调电容的一端;在8051 片内它是振荡电路反相放大器的输出端,振荡电路的频率就是晶体固有频率。若需采用外部时钟电路时,该引脚输入外部时钟脉冲。要检查8051/8031 的振荡电路是否正常工作,可用示波器查看XTAL2 端是否有脉冲信号输出。XTAL1(19 脚):接外部晶体和微调电容的另一端;在片内它是振荡电路反相放大器的输入端。在采用外部时钟时,该引脚必须接地。控制信号引脚RST,ALE,PSEN 和EA:RST/VPD(9 脚):RST 是复位信号输入端,高电平有效。当此输入端保持备用电源的输入端。当主电源Vcc 发生故障,降低到低电平规定值时,将5V 电源自动两个机器周期(24个时钟振荡周期)的高电平时,就可以完成复位操作。RST 引脚的第二功能是VPD,即接入RST 端,为RAM 提供备用电源,以保证存储在RAM 中的信息不丢失,从而合复位后能继续正常运行。ALE/PROG(30 脚):地址锁存允许信号端。当8051 上电正常工作后,ALE 引脚不断向外输出正脉冲信号,此频率为振荡器频率fOSC 的1/6。CPU 访问片外存储器时,ALE 输出信号作为锁存低8 位地址的控制信号。平时不访问片外存储器时,ALE 端也以振荡频率的1/6 固定输出正脉冲,因而ALE 信号可以用作对外输出时钟或定时信号。如果想确定8051/8031 芯片的好坏,可用示波器查看ALE端是否有脉冲信号输出。如有脉冲信号输出,则8051/8031 基本上是好的。ALE 端的负载驱动能力为8 个LS 型TTL(低功耗甚高速TTL)负载。此引脚的第二功能PROG 在对片内带有4KB EPROM 的8751 编程写入(固化程序)时,作为编程脉冲输入端。PSEN(29 脚):程序存储允许输出信号端。在访问片外程序存储器时,此端定时输出负脉冲作为读片外存储器的选通信号。此引肢接EPROM 的OE 端(见后面几章任何一个小系统硬件图)。PSEN 端有效,即允许读出EPROMROM 中的指令码。PSEN 端同样可驱动8 个LS 型TTL 负载。要检查一个8051/8031 小系统上电后CPU 能否正常到EPROMROM 中读取指令码,也可用示波器看PSEN 端有无脉冲输出。如有则说明基本上工作正常。EA/Vpp(31 脚):外部程序存储器地址允许输入端/固化编程电压输入端。当EA 引脚接高电平时,CPU只访问片内EPROM/ROM并执行内部程序存储器中的指令,但当PC(程序计数器)的值超过0FFFH(对8751/8051 为4K)时,将自动转去执行片外程序存储器内的程序。当输入信号EA 引脚接低电平(接地)时,CPU 只访问外部EPROM/ROM 并执行外部程序存储器中的指令,而不管是否有片内程序存储器。对于无片内ROM 的8031 或8032,需外扩EPROM,此时必须将EA 引脚接地。此引脚的第二功能是Vpp 是对8751 片内EPROM固化编程时,作为施加较高编程电压(一般12V21V)的输入端。输入/输出端口P0/P1/P2/P3:P0口(P0.0P0.7,3932 脚):P0口是一个漏极开路的8 位准双向I/O口。作为漏极开路的输出端口,每位能驱动8 个LS 型TTL 负载。当P0 口作为输入口使用时,应先向口锁存器(地址80H)写入全1,此时P0 口的全部引脚浮空,可作为高阻抗输入。作输入口使用时要先写1,这就是准双向口的含义。在CPU 访问片外存储器时,P0口分时提供低8 位地址和8 位数据的复用总线。在此期间,P0口内部上拉电阻有效。P1口(P1.0P1.7,18 脚):P1口是一个带内部上拉电阻的8 位准双向I/O口。P1口能驱动4 个LS 型TTL 负载。在P1口作为输入口使用时,应先向P1口锁存地址(90H)写入全1,此时P1口引脚由内部上拉电阻拉成高电平。P2口(P2.0P2.7,2128 脚):P2口是一个带内部上拉电阻的8 位准双向I/O口。P口每位能驱动4个LS 型TTL 负载。在访问片外EPROM/RAM 时,它输出高8 位地址。P3口(P3.0P3.7,1017 脚):P3口是一个带内部上拉电阻的8 位准双向I/O口。P3口每位能驱动4个LS型TTL负载。P3口与其它I/O 端口有很大的区别,它的每个引脚都有第二功能,如下:P3.0:(RXD)串行数据接收。P3.1:(RXD)串行数据发送。P3.2:(INT0#)外部中断0输入。P3.3:(INT1#)外部中断1输入。P3.4:(T0)定时/计数器0的外部计数输入。P3.5:(T1)定时/计数器1的外部计数输入。P3.6:(WR#)外部数据存储器写选通。P3.7:(RD#)外部数据存储器读选通。STC89C52有40个引脚,4个8位并行I/O口,1个全双工异步串行口,同时内含5个中断源,2个优先级,2个16位定时/计数器。AT89C51的存储器系统由4K的程序存储器(掩膜ROM),和128B的数据存储器(RAM)组成,具有低电压供电和体积小等特点,四个端口只需要两个口就能满足电路系统的设计需要,很适合便携手持式产品的设计,使用系统可用USB供电。STC89C52单片机的基本组成框图见图3.2。图3.2 STC89C52单片机结构由图3可见,STC89C52单片机主要由以下几部分组成:CPU系统8位CPU,含布尔处理器;时钟电路;总线控制逻辑。存储器系统4K字节的程序存储器(ROM/EPROM/Flash,可外扩至64KB);128字节的数据存储器(RAM,可再外扩64KB);特殊功能寄存器SFR。I/O口和其他功能单元4个并行I/O口;2个16位定时计数器;1个全双工异步串行口;中断系统(5个中断源,2个优先级)。 3.2数码管显示数码管的引脚如图3.3所示。图3.3 数码管引脚图该数码管是4位共阳数码管,可同时显示四位数字,单片机的P2.4-P2.7口经三极管放大后接4个位选信号,单片机的P0口经电阻限流后接数码管的各个段码。3.3 DS18B20温度传感器DS18B20引脚如图3.4所示。图3.4 DS18B20引脚图DALLAS 最新单线数字温度传感器DS18B20是一种新型的“一线器件”,其体积更小、更适用于多种场合、且适用电压更宽、更经济。DALLAS 半导体公司的数字化温度传感器DS18B20是世界上第一片支持“一线总线”接口的温度传感器。温度测量范围为广,可编程为9位12 位转换精度,测温分辨率可达0.0625摄氏度,分辨率设定参数以及用户设定的报警温度存储在EEPROM 中,掉电后依然保存。被测温度用符号扩展的16位数字量方式串行输出;其工作电源既可以在远端引入,也可以采用寄生电源方式产生;多个DS18B20可以并联到3 根或2 根线上,CPU只需一根端口线就能与诸多DS18B20 通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。因此用它来组成一个测温系统,具有线路简单,在一根通信线,可以挂很多这样的数字温度计,十分方便。3.3.1温度传感器测温原理DS18B20的读写时序和测温原理与DS1820相同,只是得到的温度值的位数因分辨率不同而不同,且温度转换时的延时时间由2s 减为750ms。 DS18B20测温原理:低温度系数晶振的振荡频率受温度影响很小,用于产生固定频率的脉冲信号送给计数器1。高温度系数晶振 随温度变化其振荡率明显改变,所产生的信号作为计数器2的脉冲输入。计数器1和温度寄存器被预置在55所对应的一个基数值。计数器1对 低温度系数晶振产生的脉冲信号进行减法计数,当计数器1的预置值减到0时,温度寄存器的值将加1,计数器1的预置将重新被装入,计数器1重 新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即 为所测温度。DS18B20功能特点:1. 采用单总线技术,与单片机通信只需要一根I/O线,在一根线上可以挂接多个DS18B20。2. 每只DS18B20具有一个独有的,不可修改的64位序列号,根据序列号访问地应的器件。3. 低压供电,电源范围从35V,可以本地供电,也可以直接从数据线上窃取电源(寄生电源方式)。4. 测温范围为在-1085范围内误差为0.5。5. 可编辑数据为912位,转换12位温度时间为750ms(最大)。6. 用户可自设定报警上下限温度。7. 报警搜索命令可识别和寻址哪个器件的温度超出预定值。8. DS18B20的分辩率由用户通过EEPROM设置为912位。9. DS18B20可将检测到温度值直接转化为数字量,并通过串行通信的方式与主控制器进行数据通信。DS18B20有4个主要的数据部件:1. 光刻ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码。64位光刻ROM的排列是:开始8位 (28H)是产品类型标号,接着的48位是该DS18B20自身的序列号,最后8位是前面56位的循环冗余校验码(CRC=X8+X5+X4+1)。光刻ROM的作用 是使每一个DS18B20都各不相同,这样就可以实现一根总线上挂接多个DS18B20的目的。 2. DS18B20中的温度传感器可完成对温度的测量,以12位转化为例:用16位符号扩展的二进制补码读数形式提供,以 0.0625/LSB形式表达,其中S为符号位。3. DS18B20温度传感器的存储器 DS18B20温度传感器的内部存储器包括一个高速暂存RAM和一个非易失性的可电擦除的EEPRAM,后者存放高温度和低温度触发器 TH、TL和结构寄存器。 4. 配置寄存器。DS18B20内部结构及功能:DS18B20的内部结构,主要包括:寄生电源,温度传感器,64位ROM和单总线接口,存放中间数据的高速暂存器RAM,用于存储用户设定温度上下限值的TH和TL触发器,存储与控制逻辑,8位循环冗余校验码(CRC)发生器等7部分。其内部结构图如图3.5所示。图3.5 DS18B20内部结构3.3.2 DS18B20使用中的注意事项DS18B20 虽然具有测温系统简单、测温精度高、连接方便、占用口线少等优点,但在实际应用中也应注意以下几方面的问题:1. DS18B20 从测温结束到将温度值转换成数字量需要一定的转换时间,这是必须保证的,不然会出现转换错误的现象,使温度输出总是显示85。2. 在实际使用中发现,应使电源电压保持在5V 左右,若电源电压过低,会使所测得的温度精度降低。3. 较小的硬件开销需要相对复杂的软件进行补偿,由于DS1820与微处理器间采用串行数据传送,因此,在对DS1820进行读写编程时,必须严格的保证读写时序,否则将无法读取测温结果。在使用PL/M、C等高级语言进行系统程序设计时,对DS1820操作部分最好采用汇编语言实现。4. 在DS18B20的有关资料中均未提及单总线上所挂DS18B20 数量问题,容易使人误认为可以挂任意多个DS18B20,在实际应用中并非如此,当单总线上所挂DS18B20 超过8 个时,就需要解决微处理器的总线驱动问题,这一点在进行多点测温系统设计时要加以注意。5. 在DS18B20测温程序设计中,向DS18B20 发出温度转换命令后,程序总要等待DS18B20的返回信号,一旦某个DS18B20 接触不好或断线,当程序读该DS18B20 时,将没有返回信号,程序进入死循环,这一点在进行DS18B20硬件连接和软件设计时也要给予一定的重视。3.4系统工作原理温度传感器DS18B20将模拟温度值经过DS18B20处理后转换为数字值,然后送到单片机中进行数据处理,单片机将处理后的数据通过数码管显示出来,同时判断测得的温度和设置报警的温度限进行比较,超过限度则通过发光二极管发光报警。3.5系统整体电路3.5.1 复位电路复位是单片机的初始化操作,单片机启动运行时都需要先复位,其作用是使CPU和系统中其他部件处于一个确定的初始状态。当51系列单片机的复位引脚RST出现两个机器周期以上的高电平时,单片机就执行复位操作。根据应用的要求,复位操作通常有两种基本形式:上电复位和手动复位。上电复位要求接通电源后,自动实现复位操作,手动复位为按下按键实现复位操作。3.5.2 晶振电路单片机晶振的作用是为系统提供基本的时钟信号,51单片机最小系统晶振的振荡频率直接影响单片机的处理速度,频率越高处理速度越快,最小系统起振电容一般采用15到33pF,电容越靠近晶振越好,晶振越靠近单片机越好。3.5.3 系统整体电路系统的整体电路如图3.6。图3.6 系统电路 第4章 系统软件设计4.1主程序设计在程序设计的过程中,整个系统的功能是由硬件电路配合软件来实现的,当硬件基本定型后,相应的软件的功能也就基本定下来了。从软件的功能的不同主要可分为两大类:一是监控软件(主程序),它是整个控制系统的核心,专门用来协调各执行模块和操作者的关系。二是执行软件(子程序),它是用来完成各种实质性的功能如测量、计算、显示、通讯等。每一个执行软件也就是一个小的功能执行模块。这里将各执行模块一一列出,并为每一个执行模块进行功能定义和接口定义。主程序流程见图4.1。开始STC89C52初始化DS18B20初始化温度是否到达设定限度温度显示结束红灯亮YN温度在显示范围内NY图 4.1 主程序流程图4.2 DS18B20初始化DS18B20初始化流程图见图9。图4.2 DS18B20初始化流程图4.3 DS18B20温度传感器与单片机的接口电路DS18B20可以采用两种方式供电,一种是采用电源供电方式,此时DS18B20的1脚接地,2脚作为信号线,3脚接电源。另一种是寄生电源供电方式,即单片机端口接单线总线,为保证在有效的DS18B20时钟周期内提供足够的电流,可用一个MOSFET管来完成对总线的上拉。当DS18B20处于写存储器操作和温度A/D转换操作时,总线上必须有强的上拉,上拉开启时间最大为10us。传感器与单片机接口如图10所示。图4.3 DS18B20与单片机的接口电路4.4数码管显示与单片机对接如图11所示。用STC89C52的P0口作为数据端口,P2.4-P2.7经三极管放大后分别作数码管位选口。P0口接上上拉电阻,数码管其他的引脚均接限流电阻。 图4.4 数码管与STC89C52对接 第五章 系统调试5.1调试软件的选用与使用在本设计中,对程序的调试及.hex文件的生成选用KEIL uVsion4软件,硬件电路的设计与仿真选用proteus软件。5.1.1 KEIL 软件的使用首先在KEIL软件中建立一个工程,同时选择自己所用到的单片机芯片,然后新建一个文件,在文件下输入自己所编写的源程序,程序输入完毕后,将文件添加到工程里,最后进行程序的调试和.hex的生成。如图所示,数字温度计程序在编译后没有错误和警告,程序正确。 图5.1 源程序编译结果5.1.2proteus软件的使用在proteus中进行硬件电路的设计,在设计完成后双击单片机芯片,将生成的.hex文件添加到单片机中,进行仿真。如图所示,在proteus中将设计的电路图设计完成。图5.2 Proteus中设计完成后的电路5.2仿真结果与分析把数字温度计设置温度上限为38度,温度下限为6度。1.如图5.3所示。此时温度为5度,低于下限温度,报警灯亮,实现报警。图5.3 仿真一2.如图5.4所示。此时温度为39度,超过上限温度,报警灯亮,实现报警。图5.4 仿真二3.如图5.5所示。此时温度为28度,在所设范围内,报警灯没亮,说明温度正常。图5.5 仿真三 结论本文主要介绍了基于STC89C52单片机的数字温度计控制系统的设计,对整个硬件电路和软件程序设计做了相应分析。研究重点是设计一种基于单片机的数字温度计系统,并具有实时显示,可设置上下限报警,超限自动报警等功能。设计采用数字温度传感器DS18B20,此传感器读取被测量温度值,并进行转换。将转换后的数据送到单片机处理,再通过数码管显示出来。通过这次设计,不仅巩固了知识,而且让所学的知识通过实践转化为相应的产品和成果,提高了自己的动手能力。本系统还可以采用干电池供电,从而系统具有较好的可携带性。本系统中我们的设计是采取有线的设计,单片机和DS18B20是在一起的,由于时间仓促,如果近一步研究,我们想把有线的设计改成无线的设计,我们把温度传感器和单片机之间以无线的方式相连,把较多温度传感器的数据采集到主控单片机,可以检测到更多的温度数据,对于温度的控制和分析具有更高的价值和科学性。参考文献1胡汉才.单片机原理及系统.北京:清华大学出版社.20022王守刚.电路原理图与电路板设计教程.北京:北京希望电子出版社.20003姚四改.Protel99SE电子线路设计教程.上海:上海交通大学出版社.20004余家春.Protel99SE电路设计实用教程.北京:中国铁道出版社.20045肖金球.单片机原理与接口技术.北京:清华大学出版社.20046梁翎著.C语言程序设计实用技巧与程序实例.上海:上海科普出版社.19987李全利,仲伟峰,徐军著.单片机原理及应用M.北京:清华大学出版社.20068高鹏,安涛,寇怀成等.电路设计与制版-Protel99入门与提高.北京:人民邮电出版社.20049张志良.单片机原理与控制技术.北京:机械工业出版社.200210金伟正.单线数字传感器原理与应用.电子技术应用.200011杨素行.模拟电子技术基础M.北京:高等教育出版社.200612阎石著.数字电子技术基础M.北京:高等教育出版社.200613何立民著.单片机高级教程M.北京:航空航天大学出版社.200014马忠梅,籍顺心,张凯等.单片机的C语言应用程序设计M.北京:航天航空大学出版社.2007 15杨路明著.C语言程序设计教程M.北京:邮电大学出版社.200516 omas C.Bartee.Computer Architecture and Logic DesignJ.McGraw-Hill Inc.1991.917 G Jiang M Zhang, X Xie, S Li.Application on temperature control of DS18B2J.Control Engineering of China.200318 Li Wei-di,Guo Qiang. Application technology of LCD displays.China Publishing House of Electronics Industry.200019 Su Kai,Liu Qing-guo, Chen Guo-ping. Principle and design of MCS-51 Single-chip microprocessor.Metallurgical Industry Press.200320 Lou Jianan Liang Xiaolin Feng Changjiang etc. A Missile Storage Battery Charging Instrument based on 80C196KC Single Chip Microcomputer.The 5th International Symposium on Test and Measurement. Shenzhen, Guangdong China.2003致谢伴随着毕业论文的完成,大学生活也即将结束。在这最后短短的几个月时间里,留下了难以忘怀的回忆。在此我要特别地向指导帮助我的马秀莲老师表示最诚挚的谢意,还有给我提供帮助的同学们。我们导师的指导思想是不去盲目地追求高分,关键是要学到真东西,这使我受益匪浅。在设计的过程中,马老师在软件和硬件上都积极的指导,每次遇到自己想不通的问题时,马老师总孜孜不倦地指导我如何正确地解决。马老师牺牲休息时间给予我的认真辅导,以及她负责的态度,让我很受鼓舞!无论是做事还是做人,马老师都给了我许多积极的影响与教益! 最后,再次向所有关心支持指导帮助过我完成论文的老师和同学,表示最诚挚的谢意! 附录程序清单 #include #define uint unsigned int#define uchar unsigned char /宏定义sbit p34=P24;sbit p35=P25;sbit p36=P26;sbit dp=P07;sbit p37=P27;sbit DQ=P22; /定义DS18B20总线I/Osbit SET=P31; /定义选择报调整警温度上限和下限(1为上限,0为下限)/*P3.2和P3.3为调整温度报警增加键和减少键*/sbit LING=P20; /定义报警signed char m; /温度值全局变量bit sign=0; /外部中断状态标志signed char shangxian=38; /上限报警温度,默认值为38signed char xiaxian=6; /下限报警温度,默认值为6uchar code LEDData=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff,0xbf;/*延时子程序*/void Delay(uint i) while( i- );/*初始化DS18B20*/void Init_DS18B20(void) unsigned char x=0; DQ=1; Delay(8); /稍做延时 DQ=0; /单片机将DQ拉低 Delay(80); /精确延时,大于480us DQ=1; /拉高总线 Delay(14); x=DQ; /稍做延时后,如果x=0则初始化成功,x=1则初始化失败 Delay(20);/*读一个字节*/unsigned char ReadOneChar(void) unsigned char i=0; unsigned char dat=0; for (i=8;i0;i-) DQ=0; / 给脉冲信号 dat=1; DQ=1; / 给脉冲信
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- A A hard choice (Viewing and listening)教学设计-2025-2026学年初中英语沪教版五四学制2024七年级下册-沪教版五四学制2024
- 第六单元 平行四边形的认识 (教学设计)-2023-2024学年四年级下册数学西师大版
- 七年级道德与法治下册 第2单元 做情绪情感的主人 第5课 品出情感的韵味 第2框 在品味情感中成长说课稿 新人教版
- 四年级语文下册一二单元测试题(附答案)
- 湘潭音乐考编题目及答案
- 现代数码测评题目及答案
- 2025销售经理聘用合同范本
- 2025陶瓷供应商合作协议范本
- 2025物流运输合同模板示例
- 2025房地产经纪服务合同
- 电工复审培训课件
- 2025新《安全生产法》知识考试题库及答案
- 2025年苏教版(2024)小学科学一年级上册(全册)教学设计(附目录 P137)
- 《铁路运输安全管理》课件-第一章 铁路运输安全管理概述
- 高频变压器项目商业模式分析报告
- 杜邦安全培训课件
- 中职生开学第一课安全教育
- 16949工程变更课件
- 国宝文物运送活动方案
- 2024年德州市第二人民医院招聘备案制工作人员笔试真题
- 多重耐药菌感染防控与管理
评论
0/150
提交评论