《单片机原理及应用》课程设计总结报告题目:八路温度巡回检测系统设计人姓名:谢玲灵院系:电气工程学院专业:生物医学工程07级班级学号:20074320101指导教师:张美琴日期:2011-1-7第1页共34页摘要:本文介绍一种采用STC公司的STC89C52RC单片机控制DS18B20数字温度传感器采集温度,最后在共阴极的LED灯上实时显示温度值的温度检测系统(由于实验及成本原因本文只做一路传输系统)。该系统从实际应用工程出发,主要对硬件电路设计、电子元件选择、系统应用软件设计等方面进行具体探讨和研究。系统具有性能稳定可靠、功耗低、成本低、测量准确、传输距离远、维护简单等优点,系统设计在实际工作中具有一定的借鉴意义。关键词:温度检测;STC89C52RC;DS18B20第2页共34页目录第一节引言.......................................................31.1系统原理及基本框图...........................................31.2设计任务.......................................................3第二节硬件设计介绍................................................42.1STC89C52RC......................................................42.2DS18B20..........................................................62.3三极管9012.....................................................82.4共阴极数码管...................................................82.5硬件部分电路图.................................................9第三节软件设计介绍...............................................143.1程序流程图和实际图..........................................143.2调试............................................................18第四节个人心得体会.................................................21参考文献.............................................................24附录..................................................................25附1:电路图附2:元件清单附3:程序第3页共34页第一节引言随着计算机技术和传感器技术的飞速发展,在科研、生产和日常活动中,人们对温度、压力、流量等模拟物理量的测量要求越来越高。而这些物量中温度的应用是最为广泛的。如何将温度通过传感器变成电信号,再经过处理转换成计算机能够识别的数字量,输入到计算机中,由计算机将采集到的数字量进行不同的处理,然后在显示器显示出来,并进行实时监控。这已经为当前计算机测量与控制领域的一个重要研究方向。鉴于此,本文提出一种基于89C52和DS18B20的低成本、远距离传输的温度检测系统设计方案。1.1系统原理及基本框图如图1.1所示,为系统的基本框图。该系统由六部分组成:STC89C52RC核心单片机,温度采集电路,LED显示电路,报警警电路,复位电路,晶振等,其中温度采集主要由DS18B20组成,在短时间内把热力学温度信号数字,送入单片机,由单片机控制显示电路显示,并且判断是否达到设定温度,若达到设定温度,由单片机启动报警电路,报警。1.2设计任务利用单片机与AD转换器设计一个八路温度巡回检测系统,对某粮库或冷冻厂八点(八个冷冻室或八个粮仓)进行温度巡回检测。能够测量-30~+50oC的温度范围,检测精度要求不大于±1oC。采用数码管显示测量值;图1.1系统基本方框图第4页共34页单片机和AD转换器型号自选(如单片机可选AT89S51或AT89C51等;AD转换器可选ADC0809或ADC0804等)。(本文均基于一路温度检测系统设计)。第二节硬件设计介绍2.1STC89C52RC2.1.2STC89C52RC介绍单片机自问世以来,以其极高的性价比受到人们的重视和关注,应用很广,发展很快。单片机的体积小,重量轻,抗干扰能力强,环境要求不高,价格低,可靠性强,灵活性好,开发较为容易。基于以上的优点,单片机已经广泛的应用在工业自动化控制,自动检测,智能仪器仪表,机电一体化等各个方面,所以本系统采用单片机做为控制器。单片机中51/52系列最具有代表性。本设计核心采用了STC89C52RC单片机。STC89C51/52单片机系列是在MCS—51/52系列的基础上发展起来的,STC89C52RC完全兼容MCS-51系列单片机的所有功能,并且本身带有2K的内存储器,可以在编程器上实现闪烁式的电擦写达几万次以上,比以往惯用的8031CPU外加EPROM为核心的单片机系统在硬件上具有更加简单方便等优点,其外形如图2.1所示。图2.1STC89C52RC芯片第5页共34页2.1.3STC89C52引脚介绍STC89C52RC的引脚图如图2.2所示.图2.2STC89C52引脚图单片机的引脚功能说明:①电源引脚VCC(40脚):电源端,工作电压为5V。GND(20脚):接地端。②时钟电路引脚XTAL1(19脚)和XTAL2(18脚)③复位RST(9脚)④.输入输出(I/O)引脚P0.0-P0.7(39脚-32脚):输入输出脚,称为P0口,是一个8位漏极开路型双向I/O口,内部不带上拉电阻。P1.0-P1.7(1脚-8脚):输入输出脚,称为P1口,是一个带内部上拉电阻的8位双向I/0口。P2.0-P2.7(21脚—28脚):输入输出脚,称为P2口,是一个带内部上拉电阻的8位双向I/O口,P3.0-P3.7(10脚—17脚):输入输出脚,称为P3口,是一个带内部上拉电阻的8位双向I/O口。P3端口具有复用功能。第6页共34页表2.1P3口端口引脚与复用功能表P3引脚兼用功能P3.0串行通讯输入(RXD)P3.1串行通讯输出(TXD)P3.2外部中断0(INT0)P3.3外部中断1(INT1)P3.4定时器0输入(T0)P3.5定时器1输入(T1)P3.6外部数据存储器写选通(WR)P3.7外部数据存储器读选通(RD)2.2DS18B202.2.1DS18B20性能DS18B20是Dallas公司推出的单线集成数字温度采集系统,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式。其实物如图2.3所示。图2.3DS18B20DS18b20内部主要有三个数字部件:64位激光ROM、温度传感器、非易失性温度报警触发器TH和TL。DS18B20的性能特点如下:●独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯;第7页共34页●多个DS18B20可以并联在唯一的三线上,实现多点组网功能;●无需外部器件;●可通过数据线供电,电压范围:3.0~5.5V;●测温范围-55℃~+125℃,在-10~+85℃时精度为±0.5℃●零待机功耗●温度以9或12位数字量读出;●用户可定义的非易失性温度报警设置;●具有非易失性上、下限报警设定的功能,用户可方便地通过编程修改上、下限的数值;●负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作;●适用于DN15~25,DN40~DN250各种介质工业管道和狭小空间设备测温。8PVC电缆直接出线或德式球型接线盒出线,便于与其它电器设备连接。●数字量的转换精度及转换时间可通过简单的编程来控制:9位精度的转换时间为93.75ms:10位精度的转换时间187.5ms:12位精度的转换时间750ms。2.2.2DS18B20引脚图本文用的DS18B20的常用封装为3脚,如图2.4所示。:图2.4DS18B20引脚图各脚功能描述如下:DQ:数字信号输入/输出端。GND:电源地端。VDD:外接供电电源输入端(在寄生电源接线时此脚应接地)。第8页共34页2.3三极管9012三极管的工作原理三极管是一种控制元件,主要用来控制电流的大小,以共发射极接法为例(信号从基极输入,从集电极输出,发射极接地),当基极电压UB有一个微小的变化时,基极电流IB也会随之有一小的变化,受基极电流IB的控制,集电极电流IC会有一个很大的变化,基极电流IB越大,集电极电流IC也越大,反之,基极电流越小,集电极电流也越小,即基极电流控制集电极电流的变化。但是集电极电流的变化比基极电流的变化大得多,这就是三极管的放大作用。IC的变化量与IB变化量之比叫做三极管的放大倍数β(β=ΔIC/ΔIB,Δ表示变化量。),三极管的放大倍数β一般在几十到几百倍。三极管在放大信号时,首先要进入导通状态,即要先建立合适的静态工作点,也叫建立偏置,否则会放大失真。9012是一种最常用的普通三极管。它是一种低电压,大电流,小信号的PNP型硅三极管:集电极电流Ic:Max-500mA集电极-基极电压Vcbo:-40V工作温度:-55℃to+150℃和9013(NPN)相对主要用途:o开关应用o射频放大2.4共阴极数码管数码管由8个发光二极管(以下简称字段)构成,通过不同的组合可用来显示数字09、字符AF、H、L、P、R、U、Y、符号“”及小数点“”。数码管的外形结构如下图2.5所示。数码管又分为共阴极和共阳极两种结构。第9页共34页图2.5共阴极四位一体数码管共阴极数码管的8个发光二极管的阴极(二极管负端)连接在一起。通常,公共阴极接低电平(一般接地),其它管脚接段驱动电路输出端。当某段驱动电路的输出端为高电平时,则该端所连接的字段导通并点亮,根据发光字段的不同组合可显示出各种数字或字符。此时,要求段驱动电路能提供额定的段导通电流,还需根据外接电源及额定段导通电流来确定相应的限流电阻。使用时,既可以用半导体三极管驱动,也可以直接用TTL与非门驱动。需要加限流电阻。数码管的工作电压一般为1.5至3伏,工作电流只需几到十几毫安。且寿命长,响应速度快。2.5硬件部分电路图2.5.1复位电路在振荡器运行时,有两个机器周期(24个振荡周期)以上的高电平出现在此引脚时,将使单片机复位,只要这个脚保持高电平,52芯片便循环复位。复位后P0-P3口均置1引脚表现为高电平,程序计数器和特殊功能寄存器SFR全部清零。当复位脚由高电平变为低电平时,芯片为ROM的0000H处开始运行程序。该芯片的复位脚为9脚,所以复位电路接STC89C52RC的9脚,具体电路如下图2.6所示。当采用的晶体频率是6MHZ时,可取C=22UF,R=1K;当采用的晶体频率为第10页共34页12MHZ时,可取C=10UF,R=8.2K。不过这都是最佳的组合,也可以有其它大小的电容电阻,只要符合电路要求就可以,如本文就采用22UF的电容和10K的电阻,经试验也满足要求。图2.6复位电路2.5.2晶振为了产生时钟信号,在8052内部设置了一个反相放大器,XTAL1是片内振荡器反相放大器的输入端,XTAL2是片内振荡器反相放大器的输出端,也是内部时钟发生器的输入端。当使用自激振荡方式时,XTAL1和XTAL2外接石英晶振,使内部振荡器按照石英晶振的频率振荡,就产生时钟信号。晶振一般使用石英晶体,其频率由系统需要和器件决定,在频率稳定度