毕业设计(论文)单片机数字温度计设计_第1页
毕业设计(论文)单片机数字温度计设计_第2页
毕业设计(论文)单片机数字温度计设计_第3页
毕业设计(论文)单片机数字温度计设计_第4页
毕业设计(论文)单片机数字温度计设计_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

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

文档简介

1、第一章 引 言1.1单片机的概述单片机是一种集成电路芯片,采用超大规模集成电路技术把具有数据处理能力(如算术运算、逻辑运算、数据传送、中断处理)的微处理器(cpu),随机存取数据存储器(ram)、只读程序存储器(rom)、输入/输出电路(i/o),可能还包括定时/计数器、串行通信口(sci)、显示驱动电路、脉宽调制电路(pwm)、模拟多路转换器及a/d转换器等电路集成到一片芯片上,构成一个最小而又完善的计算机系统。单片机有着微处理器所不具备的功能,它可单独完成现代工业控制所要求的智能化控制功能,这是单片机最大的特征。不同的单片机有着不同的硬件特征和软件特征,即它们的技术特征均不尽相同,硬件特征

2、取决于单片机芯片的内部结构,用户要使用某种单片机,必须了解该型产品是否满足需要的功能和应用系统所要求的特性指标。这里的之间特征包括功能特性、控制特性和电气特性等等,这些信息需要从生产产商的技术手册中得到。软件特征是指指令系统特性和开发支持环境,指令特性即我们熟悉的单片机的寻址方式、数据处理和逻辑处理方式,输入输出特性及对电源的要求等等。开发支持的环境包括指令的兼容及可移植性,支持软件(包含可支持开发应用程序的软件资源)及硬件资源。要利用某型号单片机开发自己的应用系统,掌握其结构特征和技术特征是必需的。1.2单片机发展概况单片机诞生于20世纪70年代。所谓单片机是利用大规模集成电路技术把中央处理

3、单元(cpu)和数据存储器(ram)、程序存储器(rom)及其i/o通信接口集成在一块芯片上,构成一个最小的计算机系统,而现代的单片机则加上了中断单元、定时单元及a/d转换等更加复杂、更完善的电路,使得单片机的功能越来越强大,应用更广泛。20世纪70年代,微电子技术正处于发展阶段,集成电路属于中规模发展时期,各种新材料新工艺尚未成熟,单片机仍处于在发展阶段,元件集成规模还比较小,功能比较简单,一般均把cpu、ram,有的还包括了一些简单的i/o口集成到芯片上,像farichild公司就属于这一类型,它还需配上外围的其他处理电路才构成完整的计算系统,类似的单片机还有zilog公司的z80微处理器

4、。1976年intel公司推出了mcs-48单片机,这个时期的单片机才是真正的8位单片机微型计算机,并推向市场。它以体积小、功能全、价格低赢得了广泛的应用,为单片机的发展奠定了基础。20世纪80年代,世界各大公司均竞相研制出品种多、功能强的单片机,约有几十个系列,300多个品种,此时的单片机均属于真正的单片化,大多集成了cpu、ram、rom数目繁多的i/o接口、多种中断系统,甚至还有一些带a/k转换器的单片机。功能越来越强大,ram和rom的容量也越来越大,寻址空间甚至可以达64kb,可以说,单片机发展到了一个全新阶段,应用领域更广泛,许多电子产品均走向利用单片机控制的智能化发展道路。1.3

5、单片机的应用领域1.在智能仪器仪表上的应用单片机广泛应用于仪器仪表中,结合不同类型的传感器,可实现诸如电压、功率、频率、湿度、压力等物理量的测量。采用单片机控制使得仪器仪表数字化、智能化、微型化,且功能比起采用电子或数字电路更加强大。2.在工业控制中的应用用单片机可以构成形式多样的控制系统、数据采集系统。例如工厂流水线的智能化管理,电梯智能化控制、与计算机联网构成二级控制系统等。3.在家用电器中的应用现在的家用电器基本上都采用了单片机控制,如电饭褒、洗衣机、冰箱等。4.在计算机网络和通信领域中的应用现代的单片机普遍具备通信接口,可以很方便地与计算机进行数据通信,为在计算机网络和通信设备间的应用

6、提供了极好的物质条件,现在的通信设备基本上都实现了单片机智能控制,例如手机,小型程控交换机、楼宇自动通信呼叫系统、列车无线通信等。5.单片机在医用设备领域中的应用单片机在医用设备中的用途亦相当广泛,例如医用呼吸机,各种分析仪等。此外,单片机在工商,金融,科研、教育,国防航空航天等领域都有着十分广泛的用途。第二章 总体设计方案2.1 方案选择方案一智能仪器是单片机应用的一个很广泛的领域,其中温度测量又是其中非常重要的部份。由于本设计是测温电路,传统的中、低测温领域中采用的方法有热敏电阻、半导体温传感器等各种方法。通过这些器件来利用其感温效应,在将随被测温度变化的电压或电流信号采集过来,进行a/d

7、转换后,就可以用单片机进行数据的处理,再用数码管进行显示,就可以将被测温度显示出来,这种设计需要用到a/d转换电路,感温电路比较麻烦,而且a/d转换器价格相当昂贵,这些方法还都有一些缺陷,如线性度、灵敏度差等。方案二如今传感技术是现代信息技术三大基础之一,而且在智能仪器上得到了广泛的应用。故在单片机电路设计中,我们采用了温度传感器ds18b20作为感温部分,此传感器,是一种高性能、低价格、数字化的测量传感器。而显示电路部分我们采用了1602液晶显示器作为显示,虽然他的价格比数码管贵一些,但它不会出现任何的几何失真,线性失真,而且显示字符锐利,画面稳定不闪烁,屏幕调节也十分的方便,显示出来的画面

8、也相当的清楚美观。随着大规模集成电路、计算机技术的迅速发展,很多的电子产品都趋于智能化。相比以上两种方案,我们采用了方案二。尽管它的成本要略高于方案一,但是,方案二更趋于智能化,并能有效地克服方案一的缺点。2.2电路的设计框图硬件部分的总体框图如图2-1所示。at89s51单片机显示电路键盘电路ds18b20采集电路扫描驱动报警控制电路时钟复位电路图21 硬件电路框图2.2.1主控电路采用at89s51单片机作为系统的控制器。at89s51单片机是一种低功耗/低电压、高性能的8位单片机,内部除cpu外,还包括128字节ram,4个8位并行i/o口,5个中断优先级,2层中断嵌套中断,2个16位可

9、编程定时计数器,片内集成4k字节可改变程序flash存储器,具有低功耗,速度快,程序擦写方便等优点。 51系列的单片机的使用简单,软件编程灵活,自由度大。可用软件编程实现各种算法和逻辑控制,并且功耗低、体积小、技术成熟和成本低,易于调试及烧录。 2.2.2 温度传感器ds18b20单线数字温度传感器ds18b20 就是这样一个1-wire 器件,该器件可把温度直接转换成串行数字信号供微机处理。由于每片ds18b20 含有唯一的硅串行数,所以在一条总线上可挂接任意多个ds18b20 芯片。从ds18b20 读出的信息或写入ds18b20 的信息,仅需要一根端口线,该端口线同时也可以向ds18b2

10、0 供电,从而无需额外电源。ds18b20提供912 位温度读数,构成多点温度检测系统而无需任何外围硬件。1、ds1820 的特性 单线接口:仅需一根接口线与 mcu 连接,无需外围元件; 可由接口线提供能量,也可由 5v 电源供电; 测温范围为测量温度范围为-55c+125c,在-10+85c 范围内精度为0.5c,912 位温度读数; 在使用 12 位分辨率时a/d 变换时间为最长为750ms,而使用9 位分辨率时转换时间为93.75ms; 用户自设定温度报警上下限,其值在断电后仍可保存; 报警搜索命令可识别哪片 ds1820 超温度限; 图22 ds18b20引脚图2、ds18b20 引

11、脚及功能ds18b20 的引脚见图22(pr35 封装)。gnd:地;dq:数据输入输出脚(单线接口,可作寄生供电); vdd:电源电压。3、ds18b20 的工作原理 ds18b20 的内部结构如图23所示。由图可知,ds1820 由三个主要数字器件组成:64bit 闪速rom;温度传感器;非易失性温度报警触发器th 和tl。64bit闪速rom 的结构如下: 图24 ds18b20 内部rom 结构ds18b20 的测温原理:ds18b20 内部有两个 振荡电路,其中一个由低温度系数器件构成 的振荡器构成,另一个由高温度系数器件构成的振荡构成,在需要采集温度时,计数门打开,ds18b20

12、对第一个振荡器产生的时钟脉冲进行计数,而计数门开启的时间则由第二个荡器来决定,这样,温度的变化最终会用数字的形式表达出来。ds18b20温度传感器的内部存储器还包括一个高速暂存ram和一个非易失性的可电擦除的eeram。高速暂存ram的结构为8字节的存储器,结构如图25所示。头2个字节包含测得的温度信息,第3和第4字节th和tl的拷贝,是易失的,每次上电复位时被刷新。第5个字节,为配置寄存器,它的内容用于确定温度值的数字转换分辨率。ds18b20工作时寄存器中的分辨率转换为相应精度的温度数值。该字节各位的定义如图2-5所示。低5位一直为1,tm是工作模式位,用于设置ds18b20在工作模式还是

13、在测试模式,ds18b20出厂时该位被设置为0,用户要去改动,r1和r0决定温度转换的精度位数,来设置分辨率。 表21 ds18b20温度转换时间表图25 ds18b20字节定义 由表2-1可见,ds18b20温度转换的时间比较长,而且分辨率越高,所需要的温度数据转换时间越长。因此,在实际应用中要将分辨率和转换时间权衡考虑。高速暂存ram的第6、7、8字节保留未用,表现为全逻辑1。第9字节读出前面所有8字节的crc码,可用来检验数据,从而保证通信数据的正确性。当ds18b20接收到温度转换命令后,开始启动转换。转换完成后的温度值就以16位带符号扩展的二进制补码形式存储在高速暂存存储器的第1、2

14、字节。单片机可以通过单线接口读出该数据,读数据时低位在先,高位在后,数据格式以0.0625lsb式表示。当符号位s0时,表示测得的温度值为正值,可以直接将二进制位转换为十进制;当符号位s1时,表示测得的温度值为负值,要先将补码变成原码,再计算十进制数值。ds18b20完成温度转换后,就把测得的温度值与ram中的th、tl字节内容作比较。若tth或ttl,则将该器件内的报警标志位置位,并对主机发出的报警搜索命令做出响应。因此,可用多只ds18b20同时测量温度并进行报警搜索。 7805芯片7805是我们最常用到的稳压芯片了,他的使用方便,用很简单的电路即可以输入一个直流稳压电源,他的输出电压恰好

15、为5v,刚好是51系列单片机运行所需的电压,他有很多的系列如ka7805,ads7805,cw7805等,性能有微小的差别,用的最多的还是lm7805,下面我简单的介绍一下他的3个引脚以及用它来构成的稳压电路的资料。其中1接整流器输出的+电压 2为公共地(也就是负极) 3就是我们需要的正5v输出电压了主要特点 输出电流可达 1a 输出电压有:5v 过热保护 图26 7805引脚图 短路保护 输出晶体管 soa 保护 极限值(ta=25) vi输入电压(vo=518v) 35v rjc热阻(结到壳) 5/w rja热阻(结到空气) 65/w topr工作结温范围 0125 tstg贮存温度范围

16、-65150 2.2.3 1602液晶显示采用16个接口的1602液晶显示器作为系统的显示部分。利用动态扫描方式,从p0口输出,1602的性能特点如下:(1)液晶显示屏是以若干个58或511点阵块组成的显示字符群。每个点阵块为一个字符位,字符间距和行距都为一个点的宽度。(2)主控制驱动电路为hd44780(hitachi)及其他公司全兼容电路,如sed1278(seiko epson)、ks0066(samsung)、nju6408(ner japan radio)。(3)具有字符发生器rom可显示192种字符(160个57点阵字符和32个510点阵字符)(4)具有64个字节的自定义字符ram

17、,可自定义8个58点阵字符或四个511点阵字符。(5)具有80个字节的ram。(6)标准的接口特性,适配m6800系列mpu的操作时序。(7)模块结构紧凑、轻巧、装配容易,单+5v电源供电。(8)低功耗、长寿命、高可靠性、超薄 、便携 、省电 、辐射小。hy系列接口特性及时序hd44780读、写操作 表22 写操作(mpu至hd44780)项 目符号最小值最大值单位使能周期tcyce1000-ns使能脉冲宽度pweh450 -ns使能升、降时间ter,tef-25ns地址建立时间tas140-ns地址保持时间tah10-ns数据建立时间tdsw195-ns数据保持时间th10-ns 表23 读

18、操作(mpu至hd44780)项 目符号最小值最大值单位使能周期tcyce1000-ns使能脉冲宽度pweh450 -ns使能升、降时间ter,tef-25ns地址建立时间tas140-ns地址保持时间tah10-ns数据延迟时间tddr-320ns数据保持时间tdhr10-ns表24信号真值表rsr/we功能00下降沿写指令代码01高电平读忙标志和ac码10下降沿写数据11高电平读数据表25 接口引脚功能引脚号符号状态功 能1vss电源地2vdd+5v逻辑电源3v0液晶驱动电源4rs输入寄存器选择1:数据;0:指令5r/w输入读、写操作选择1:读;0:写6e输入使能信号714db0-db7三

19、态数据总线15leda输入背光+5v16ledk输入背光地注:15、16两管脚用于带背光模块,不带背光的模块这两个管脚悬空不接。hy字符型液晶显示模块应用一、直接访问方式接口电路直接访问方式的接口电路如图2-7所示: mpu8031 字符型lcm p00 dbo 共8根线 p07 db7 p2.0 a8 rs p2.1 a9 r/w rd we e p2.7 a15 +5v vdd gnd vss v0 常温型模块v0接vss图27 直接访问接口电路第三章 系统硬件软件设计3.1电路工作原理温度是表征物体冷热程度的物理量,它与人们的生活密切相关。传统的温度是表征物体冷热程度的物理量,它与人们的

20、生活密切相关。传统的温度计有着太多的自身局限性,从而制约了它在众多领域中的应用。数字式温度计的出现,使得这些问题迎刃而解,它不仅拓宽了温度计的应用范围,而且具有实时性、准确性、高效性等特点。本温度计的原理图如附录二所示。电路中采用at89s51作为主控电路,12m的晶振,9v电源经过7805稳压输出5v提供给单片机工作,7805起到过热、短路保护作用,使电路工作正常。显示数据的采用1602lcd液晶显示,lcd的db0db7分别与at89s51芯片的p0口分别相连,信号通过p0口传入lcd。at89s51芯片的第9脚为单片机的复位脚,采用简单的按键上电位复位电路,能有效的保护好电路,5、6、7

21、、8脚分别用来接按键开关,用来设置lcd显示的设置温度值。电路正常工作时,ds18b20温度传感器会检测当前的环境的温度,然后将检测到的信号送往主控电路,这时由单片机进行判断,观察是否符合内设的温度范围的值,假如符合则液晶显示器会显示当前的温度,假如液晶显示的温度不在设置好的温度范围之内时,单片机会从17脚发出信号,经过两个8550pnp三极管放大,则被驱动的蜂鸣器会报警提示,而且绿色led灯会不停的闪烁。这时可以根据环境的需要设置温度的范围,电路上有五个按键开关,相互配合着使用就可以轻松的设置温度的范围了。本设计制作一种基于单片机控制的数字温度计,该温度计属于多功能温度计,可以设置上下报警温

22、度,当温度不在设置范围内时,可以报警。数字温度计与传统的温度计相比,具有读数方便,测温范围广,测温准确,其输出温度采用液晶显示,主要用于对测温比较准确的场所,或科研实验室使用。可广泛用于食品库、冷库、粮库等需要控制温度的地方。目前,数字温度计已在温控系统中得到广泛的应用。3.2 硬件基本单元的设计电路的原理图主要由单片机主控电路、显示电路、电源电路、数据采集电路、报警电路等几大模块组成,从而实现电路所达到的预定功能。3.2.1单片机主控电路如图3-1所示,at89s51是一个低功耗,高性能cmos8位单片机,片内含4k bytes isp(in-system programmable)的可反复

23、擦写1000次的flash只读程序存储器,器件采用atmel公司的高密度、非易失性存储技术制造,兼容标准mcs-51指令系统及80c51引脚结构,芯片内集成了通用8位中央处理器和isp flash存储单元,功能强大的微型计算机的at89s51可为许多嵌入式控制应用系统提供高性价比的解决方案。at89s51具有如下特点:40个引脚,4k bytes flash片内程序存储器,128 bytes的随机存取数据存储器(ram),32个外部双向输入/输出(i/o)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(wdt)电路,片内时钟振荡器。 此外,at89

24、s51设计和配置了振荡频率可为0hz并可通过软件设置省电模式。空闲模式下,cpu暂停工作,而ram定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存ram的数据,停止芯片其它功能直至外中断激活或硬件复位。同时该芯片还具有pdip、tqfp和plcc等三种封装形式,以适应不同产品的需求。u 主要特性: 8031 cpu与mcs-51 兼容 4k字节可编程flash存储器(寿命:1000写/擦循环) 全静态工作:0hz-24khz 三级程序存储器保密锁定 128*8位内部ram 32条可编程i/o线 两个16位定时器/计数器6个中断源 可编程串行通道 低功耗的闲置和掉电模式,片内振

25、荡器和时钟电路u 89s51相对于89c51增加的新功能包括:新增加很多功能,性能有了较大提升;isp在线编程功能,这个功能的优势在于改写单片机存储器内的程序不需要把芯片从工作环境中剥离。是一个强大易用的功能。 工作频率为33mhz,大家都知道89c51的极限工作频率只有24m,就是说s51具有更高工作频率,从而具有了更快的计算速度。具有双工uart串行通道。内部集成看门狗计时器,不再需要像89c51那样外接看门狗计时器单元电路。 双数据指示器。电源关闭标识。 全新的加密算法,这使得对于89s51的解密变为不可能,程序的保密性大大加强,这样就可以有效的保护知识产权不被侵犯。兼容性方面:向下完全

26、兼容51全部字系列产品。比如8051、89c51等等早期mcs-51兼容产品。在89c51上一样可以照常运行,这就是所谓的向下兼容。注意事项:1 89s51的看门狗必须由程序激活后才开始工作。所以必须保证cpu有可靠的上电复位。否则看门狗也无法工作。2 看门狗使用的是cpu的晶振。在晶振停振的时候看门狗也无效。3 89s51只有14位计数器。在16383个机器周期内必须至少喂狗一次。而且这个时间是固定的,无法更改。当晶振为12m时每16个毫秒需喂狗一次。图31 单片机主控电路3.2.2 电源电路要使单片机能工作,首先必须要有稳定的直流电源。at89s51芯片引脚vcc(40脚)一般接上直流稳压

27、电源+5v,引脚gnd(20脚)接电源+5v的负极(作电路公共地线),电源电压范围在45.5v之间,可保证单片机系统能正常工作。而本电路采用7805芯片作为稳压输出5v电压,如图3-2所示。一般电源输入的电压要超过8v以上,然后经过7805稳压出来稳定的5v提供给at89s51的40脚,让芯片能启动工作。为提高电路的抗干扰性能,通常在7805稳压电路输出的vcc与gnd之间接一个电解电容和一个瓷片电容,这样可抑制各种杂波的串扰,从而有效地确保电路的稳定性。图32 电源电路时钟电路系统的时钟电路设计是采用的内部方式,即利用芯片内部的振荡电路。at89单片机内部有一个用于构成振荡器的高增益反相放大

28、器。如图3-1所示,引脚xtal1和xtal2分别是此放大器的输入端和输出端。这个放大器与作为反馈元件的片外晶体谐振器一起构成一个自激振荡器。外接晶体谐振器以及电容c2和c3构成并联谐振电路,接在放大器的反馈回路中。对外接电容的值虽然没有严格的要求,但电容的大小会影响震荡器频率的高低、震荡器的稳定性、起振的快速性和温度的稳定性。因此,此系统电路的晶体振荡器的值为12mhz,电容应尽可能的选择陶瓷电容,电容值约为22pf。在焊接刷电路板时,晶体振荡器和电容应尽可能安装得与单片机芯片靠近,以减少寄生电容,更好地保证震荡器稳定和可靠地工作。复位电路单片机复位电路有上电复位及按钮复位两种方式。一般若在

29、引脚rst(9脚)上保持24个工作主频周期的高平,单片机就可以完成复位,但为了保证系统可靠地复位,复位电路应使引脚rst保持10ms以上的高电平。如图3-3所示,上电复位电路由c1、r4组成,合理地选择c1和r4的取值,系统就能可靠地复位。当电路上电时,由于c1电容两端的电压值不能突变,电源+5v会通过电容向rst端提供充电电流,因此在rst引脚上产生一高电平,使单片机进入复位状态。随着电容c1充电,它两端电压上升使得rst引脚电位下降,最终使单片机退出复位状态。按钮k5复位也可使单片机立即进入复位状态。图33 复位电路及温度采集电路温度采集电路如图3-3所示,本设计采用ds18b20温度传感

30、器作为电路温度感应部分,温度传感器的3脚接电源vcc,1脚接的是电源地,2脚接的at89s51芯片的13脚,而13脚为p3.3口,也是单片机外部中断int1接口。外部中断是由外部信号引起的,共两个中断源,称为外部中断0和外部中断1。外部中断0(int0)的中断信号引入到cpu得int0(p3.2),外部中断1(int1)的中断信号引入到cpu得int1(p3.3)。而本设计采用外部中断1。当电路工作时, ds18b20温度传感器会检测当前的环境的温度,然后将检测到的信号送往单片机电路,这时由单片机进行判断,观察是否符合内设的温度范围的值,这时假如不符合则单片机会发以一个中断信号提示用户做出相应

31、的反应。键盘电路如图3-1所示,电路中采用4个按键开关来控制电路实现所要的功能。4个按键开关直接就接到at89s51芯片的p14p17上,芯片p1口一个内接上拉电阻的8位双向i/o端口,当作输出口时,每个引脚可驱动4lsttl负载;当作输入口时,须首先将引脚内的输出锁存器置1。电路中k1为设置温度上下限设置状态进入按键,k2为设置温度上下限的+键,k3为设置温度上下限的-键,k4为温度上下限设置状态的退出或确定按键。这些按键相互配合使用将可以实现特定的功能,其功能操作请参考第五章的操作说明。3.2.3 显示电路如图3-4所示,电路采用的是1602液晶作为显示,该液晶总共有16个脚,1脚16脚为

32、接地,2脚和15脚为电源输入端,电源为5v。其他的引脚分别接了at89s51的p0、p2部分端口。p0口(3932脚)是一组8位漏极开路型双向i/o端口。也即地址/数据总线复用口。作为输出口用时,每位能驱动8个ttl逻辑门电路,对端口写“1”可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。在flash编程时,p0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。p2口(2128脚)一个带内部上拉电阻的8位双向i/o口。它可作为通用i/o口,作输出口时,每个引脚可驱动4个lsttl负载,用作

33、输入口时,须首先将引脚内的输出锁存1。p2口在系统外扩展时,可以用作访问外部程序存储器和数据存储器的高8为地址总线。液晶的各个引脚的功能请参考前面所述。图34 液晶电路3.2.4 报警电路如图3-5所示,电路中采用蜂鸣器作为报警,发光二极管作为提示。电路中f0接的是at89s51芯片的17脚(p3.7),17脚为外部数据存储器的读选通。图中两个8550pnp三极管起到信号放大的作用,当信号到来的时候,经过三极管的放大,则被驱动的蜂鸣器会发出“嘟嘟”声报警提示,而且绿色发光二极管会不停的闪烁。则说明当前的温度不在设置的范围内,这时用户可以修改温度的范围值。图35 报警电路3.3软件设计系统程序主

34、要包括主程序,读出温度子程序,温度转换命令子程序,计算温度子程序,显示数据刷新子程序等。3.3.1主程序主程序的主要功能是负责温度的实时显示、读出并处理ds18b20的测量的当前温度值,温度测量每1s进行一次。这样可以在一秒之内测量一次被测温度,其程序流程见图3-6所示。3.3.2温度转换命令子程序 温度转换命令子程序主要是发温度转换开始命令,当采用12位分辨率时转换时间约为750ms,在本程序设计中采用1s显示程序延时法等待转换的完成。温度转换命令子程序流程图,如图37所示开始16个字符清01602夜晶初始化18b20初始化发出跳过匹配发出温度转换信号等待转换完成发出读温度信号等待读完成温度

35、进行bcd处理lcd夜晶显示实际温度与设计温度比较键扫描键处理报警扫描脉冲响应=tl或=th图36 主程序流程3.3.3读出温度子程序读出温度子程序的主要功能是读出ram中的9字节,在读出时需进行crc校验,校验有错时不进行温度数据的改写。其程序流程图如图3-8所示。发ds18b20复位命令发跳过rom命令发读取温度命令读取操作,crc校验9字节完?crc校验正?确?移入温度暂存器结束nnyy 发ds18b20复位命令发跳过rom命令发温度转换开始命令结束 图37 温度转换流程图图38 读出温度子程序流程3.3.4计算温度子程序计算温度子程序将ram中读取值进行bcd码的转换运算,并进行温度值

36、正负的判定,其程序流程图如图39所示。 图39计算温度流程图 第四章 样品制作与调试4.1电路板的制作1、首先用protrl99se画好原理图,在根据元件的形状和大小制作好其封装,然后就是画pcb,紧接着就是摆好元件的位置,选择合适的走线,让其更适用,看起来更加的美观。2、打印好pcb后,在实验室里准备好铜板,根据pcb的大小锯好铜板,并用砂纸把铜板的表面打磨干净,然后在压扳机上把pcb图压到铜板上。3、腐蚀电路,把不需要的铜腐蚀掉。就是将板放入三氯化铁溶液中进行腐蚀,在这里要注意的是要使三氯化铁溶液的浓度和温度适中,这样能加快铜板的腐蚀也能提高制板的成功率。4、腐蚀好板后,检测铜板上的走线是

37、否有断裂的。再根据焊盘,选用合适的针,用钻孔机进行钻孔。5、钻好孔后,逐一检测元件的好坏,接着就是用电烙铁把元件一一焊到铜板上。对照pcb图,检查是否有元件焊错的。6、用程序烧录器把程序写进at89s51单片机中。4.2电路板的调试4.2.1软件调试第一步是在具有汇编软件的主机上和用户系统连接起来,进行调试准备。第二步是单步运行。第三步是系统连调,即进行软件和硬件联合调试。经调试,软件运行良好。4.2.2硬件调试完全焊好板后,检查电路没什么问题了,于是我们接入电源。但是,我们发现电路存在问题,发光二极管一直在闪烁,蜂鸣器一直在报警,而且液晶没有亮,没有任何的字符。但我们很快就冷静下来,于是我们

38、就根据原理来调试,我们用万用表检测电源输入两端的电压,发现正常。但是,我们发现单片机40脚的电压才3.5伏左右,远不足达到驱动其工作的电压。于是我们检测7805稳压出来的电压正常,液晶的驱动电压也未达到5v,再检测其他元件的电压发现已经很小很小了。于是我们用万用表检测了9v电池的电压,发现已经变成了7.5v左右。我们马上换上一个稳定的电源让其不断的输出稳定的电压,这时发现液晶亮 了,但是还是一直在报警。于是我们断掉电源,再一次认真的分析电路。1、可能是电路板上那些线路的问题,我们在焊接元件时有可能不小心把线连在一起了。于是我们用万用表逐一检测线路,还检测元件是否有须焊、漏焊,但这些都没有问题。

39、2、有可能是电路原理图有误。于是我们再次认真的分析电路,弄清各模块的作用,逐一检测后,发现都没有问题。3、分立元器件是否断路或短路了呢?经检查,也没有问题。4、是否元件坏了呢?我们一一的把元件拔掉下来进行检测,结果发现12m的晶振坏了,于是我们立刻换上了一个好的,这时电路能正常工作了,于是我们再认真的检测了电路的其他功能,发现都能完好的实现了。第五章 使用说明本电路工作直流电压为+5v,有极性判别保护功能,采用7805集成稳压芯片以保证电路的供电稳定,用户输入电源在7-25v均可正常工作。电路中有五个按键,从左到右依次为k5(reset)、k1、k2、k3、k4,介绍如下:k1 为设置温度上下

40、限设置状态进入按键,第一次按下进入低限设置,按下s4后,再次按下s1进入高限设置。k2 为设置温度上下限的+键,每按下一次上下限值加一k3 为设置温度上下限的-键,每按下一次上下限值减一k4 为温度上下限设置状态的退出或确定按键k5(reset) 为复位按键,每次按下该键就能恢复到初始状态。使用方法及报警电路说明:接通电源,此时液晶显示器上面会清晰地显示一个初始温度,由于显示时间稍短,一闪即过。接下来显示当前环境的温度,而且会发现液晶上的温度时不时的改变。若不显示则说明硬件有问题,此时蜂鸣器将报警,绿色指示灯也会点亮。硬件正常,但当前显示的温度假如不在设置的温度范围之内,那么蜂鸣器还是会报警的

41、。此时就应该明白到当前环境温度不在原来设定的上下限范围之内。直到采取措施改变环境温度在上下限范围内或调整温度上下限,使电路不在报警。第六章 小结本毕业设计作品,就是单片机在智能化仪表方面的具体应用,充分体现了单片机的优越之处。而温度是表征物体冷热程度的物理量,它与人们的生活密切相关。传统的温度是表征物体冷热程度的物理量,它与人们的生活密切相关。传统的温度计有着太多的自身局限性,从而制约了它在众多领域中的应用。数字式温度计的出现,使得这些问题迎刃而解,它不仅拓宽了温度计的应用范围,而且具有实时性、准确性、高效性等特点。因此,通过对比其他的设计方案,我们选择制作数字温度计。在整个电路的设计制作过程

42、中,我更加意识到了实践的重要性。看似一个简单的温度计,电路也相对比较简单。但在实际制作过程中,我发现集成芯片的电路较难焊接,各个电子元件的布置也相当有讲究,对故障的分析和排除,都需要付出努力,要求较强的动手能力。在调试过程中遇到很多问题,察觉硬件上的理论知识学得不够扎实,对电路板的检测方法掌握得不够熟练,因此给硬件排除故障带来了一定的难度。软件上,逻辑思维较为混乱,编程及修改能力相当的差。通过这次的制作,它进一步培养了我遇到问题及解决问题的能力。总之,这次电路的设计与制作,更深刻的让我明白做每件事都时刻要持有认真、仔细、耐心的态度去完成。虽然制作过程中电路出现了很多的问题,但是经过同组员们的共

43、同努力及在他人的帮助下,多次修改后最终电路才能完全的实现功能。本论文是在指导老师悉心的指导和热情的帮助下完成的。老师渊博的学识、严峻的治学态度及随和的为人之道给我留下了难以深刻的印象,这将使我终身受益。同时,老师在生活上也给了我极大的鼓励和帮助。为此,我要对她致以最衷心的感谢!在大学学习中,我与同学建立了深厚的友谊,他们在我遇到困难时无私地伸出援助之手,对于他们给予我的帮助,在这我要特别表示感谢。最后,对于关心、支持我的亲人及老师致以最衷心的感谢!参考文献1 何立民单片机中级教程原理与应用北京航空航天大学出版社,2000年2 何立民mcs-51单片机应用系统设计北京航空航天大学出版社,2000

44、年3 王嘉陵毕业论文写作与答辩四川大学出版社,2003年4 赵润林 张迎辉单片机原理与应用教程北京大学出版社,2005年5何立民单片机应用技术选编m北京:北京航空航天大学出版社,2004年6杨刚 周群电子系统设计与实践m北京:电子工业出版社,2004年附录一 原程序temp_zh data 24h ;实时温度值存放单元 templ data 25h temph data 26h temp_th data 27h ;高温报警值存放单元 temp_tl data 28h ;低温报警值存放单元 temphc data 29h templc data 2ah k1 equ p1.4 k2 equ p1

45、.5 k3 equ p1.6 k4 equ p1.7 beep equ p3.7 relay equ p1.3 lcd_x equ 2fh ;lcd 地址变量 lcd_rs equ p2.0 lcd_rw equ p2.1 lcd_en equ p2.2 flag1 equ 20h.0 ;ds18b20是否存在标记 key_ud equ 20h.1 ;设定 key 的up与down 标记 date_line equ p3.3;= org 0000h jmp mainmain: mov sp,#60h mov a,#00h mov r0,#20h ;将20h-2fh 单元清零 mov r1,#1

46、0h clear: mov r0,a inc r0 djnz r1,clear call set_lcd call re_18b20start: call reset ;18b20复位子程序 jnb flag1,start1 ;ds1820不存在 call menu_ok call read_e2 call temp_bj ;显示温度标记 jmp start2start1: call menu_error call temp_bj ;显示温度标记 jmp $start2: call resetjnb flag1,start1 ;ds1820不存在 mov a,#0cch ;跳过rom匹配 call write mov a,#44h ; 发出温度转换命令 call write call reset m

温馨提示

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

评论

0/150

提交评论