毕业论文-基于AT89C52单片机的智能温度计的设计.doc

上传人:爱问知识人 文档编号:3939752 上传时间:2019-10-10 格式:DOC 页数:23 大小:4.08MB
返回 下载 相关 举报
毕业论文-基于AT89C52单片机的智能温度计的设计.doc_第1页
第1页 / 共23页
毕业论文-基于AT89C52单片机的智能温度计的设计.doc_第2页
第2页 / 共23页
毕业论文-基于AT89C52单片机的智能温度计的设计.doc_第3页
第3页 / 共23页
毕业论文-基于AT89C52单片机的智能温度计的设计.doc_第4页
第4页 / 共23页
毕业论文-基于AT89C52单片机的智能温度计的设计.doc_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《毕业论文-基于AT89C52单片机的智能温度计的设计.doc》由会员分享,可在线阅读,更多相关《毕业论文-基于AT89C52单片机的智能温度计的设计.doc(23页珍藏版)》请在三一文库上搜索。

1、嘉兴职业技术学院毕业论文(设计) 嘉兴职业技术学院 毕 业 设 计 (论 文) 题目名称:基于AT89C52单片机的智能温度计的设计 姓 名: 所在分院: 机电与汽车分院 专业班级: 指导教师: 2016 年 6月 16 日目录摘 要1引言21 智能温度计的设计要求32 主要原件的应用32.1 智能控制核心-单片机的选型32.2 数字温度传感器33 智能温度计的系统设计53.1 硬件电路设计53.2 软件设计63.3 显示模块设计7小结8致谢9参考文献资料10嘉兴职业技术学院毕业论文(设计)摘 要近年来智能控制器件单片机的应用范围逐渐扩展到人们的日常生活,一个以微机应用为主的新技术革命浪潮正在

2、蓬勃兴起。温度是日常生活,工业,医学,环境,化工等领域最常见到的一个物理量。测量温度的基本方法是使用温度计直接读取温度。最常见到的测量温度的工具是各种温度计,如水银温度计,热电偶或热电阻温度计等。它们常常以刻度的形式表示温度的高低,人们必须通过读取刻度值的多少来测量温度。利用单片机和温度传感器构成的电子式智能温度计就可以直接测量温度,既简单又方便, 同时又试用于许多场合。关键词 温度传感器;PLC单片机;LED数码显示引言在日常生活的各种场合,人们经常需要使用温度计,而普通温度计在使用过程中存在诸多不便,如水银温度计的测量数据读取方法复杂;指针温度计测量数据不准确,光线不强也难于读数;传统的测

3、温元件热电偶和热电阻测出的一般都是电压,再转换成对应的温度需要较多的外部硬件支持,硬件电路复杂,制作成本较高。本设计的智能数字温度计具有低成本、电路简单、测量的温度一目了然等特点。主控制器选用8位单片机AT89C52,控制能力强,价格比较便宜;温度采集电路选用数字温度传感器DS18B20,采集温度范围较宽,温度范围为-55125精度较高,控制电路简单;采用LED数码管进行显示,耗电量低,显示数字较大,亮度高,即便是光线很暗人眼也能清晰看见显示温度。1.智能温度计的设计要求 利用AT89C52单片机设计智能数字温度计,通过温度传感器自动采集温度,经单片机内部处理为十进制温度值后,直接送入显示电路

4、显示温度值,测温范围-55125,显示精度为0.1。采用4位LED数码管显示温度,一位小数、三位整数。正温度时,最高位显示百位温度或不显示,负温度时最高位显示符号 “-”。系统采用12M晶振。采用数字温度芯片DS18B20测量温度,输出信号全数字化。便于单片机处理及控制,省去传统的测温方法的很多外围电路。且该芯片的物理化学性很稳定,它能用做工业测温元件,此元件线形较好。在0100摄氏度时,最大线形偏差小于1摄氏度。DS18B20的最大特点之一采用了单总线的数据传输,由数字温度计DS18B20和微控制器AT89S51构成的温度测量装置,它直接输出温度的数字信号,可直接与计算机连接。这样,测温系统

5、的结构就比较简单,体积也不大。采用51单片机控制,软件编程的自由度大,可通过编程实现各种各样的算术算法和逻辑控制,而且体积小,硬件实现简单,安装方便。既可以单独对多DS18B20控制工作,还可以与PC机通信上传数据,另外AT89S51在工业控制上也有着广泛的应用,编程技术及外围功能电路的配合使用都很成熟。1.主要原件的应用1.1 智能控制核心-单片机的选型本系统涉及的智能控制器件,我们选用单片机AT89C51。比起低性能的4位、高端的16位单片机,兼容标准MCS-51指令系统的AT89C51单片机是一个低成本、低电压、抗干扰能力强、高性能CMOS8位单片机,片内含8kbytes的可反复擦写的F

6、lash只读程序存储器和256bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,片内置通用8位中央处理器和Flash存储单元,功能强大的AT89C51单片机可为您提供许多较复杂系统控制应用场合。1.2 数字温度传感器这次选用的数字温度传感器DS18B20作为温度检测元件(如图2-1),测温范围为-55125,精度较高,可以直接采集被测点当前的温度值,并能将采集的模拟温度信号转换为数字温度值,而且它形如一个三极管,采用3线制与单片机相连,硬件电路简单,节省系统成本并提高了系统可靠性。 图2-1 DS18B20引脚图引脚功能(如表2-1)表 Error

7、! No text of specified style in document.-1 引脚功能表序号名称引脚功能描述 1GND电源地 2DQ为数据输入输出引脚,开漏单总线接口引脚。当被用在寄生电源下,也可以向期间提供电源。 3VDD为外接供电电源输入端(2) 温度数据值格式(如图2-2)。DS18B20接收到温度转换命令后,启动温度转换,并将转换后的温度值以16位带符号二进制补码形式存储在高速缓存存储器的每1、2字节.单片机可通过单线接口读到该数据,读取时低位在前,高位在后,数据格式以0.0625C/LSB形式表示。图2-2 温度格式图注:“S”为标志位:当符号位S=0时,表示测得温度值为正

8、;当S=1时,表示测得温度值为负,先将补码变换为原码,再计算十进制值。(3) 温度转换 这条命令启动一次温度转换而无需其它数据。温度转换命令被执行,而后DS18B20保持等待状 态。如果总线控制器在这条命令之后跟着发出时间隙,而DS18B20又忙于做温度转换的话,DS18B20将在总线上输出0,若温度转换完成,则输出1。(4)DS18B20工作时序作为单总线器件,DSl8B20与单片机间采用串行数据传输方式,要求按照严格的时隙进行操作。主机使用时间隙来读写DSl8B20的数据位和写命令字的位(在此所有程序均采用12M晶振),单片机P3.7引脚接DSl8B20数据线。2.智能温度计的系统设计1.

9、3 硬件电路设计智能数字温度计硬件电路以智能控制器件-单片机的控制为核心,包括三个部分:单片机最小系统电路、温度传感器DS18B20测温电路、LED数码管显示电路。硬件电路(如图3-1)图3-1 硬件电路图单片机最小系统:包括电源电路、时钟电路、复位电路及片选信号电路4个部分,是支撑单片机控制外围设备的不可缺少的最小外围电路,缺一不可。 温度传感器DS18B20测温电路:DS18B20的2号引脚(数据端)接至单片机P3.7引脚,实现单片机与DS18B20进行数据联系,单片机输入信号给DS18B20使其初始化,并命令DS18B20开始将测量的模拟信号温度值转换为数字信号,并将数字信号温度值输入单

10、片机,单片机将温度值保存。 LED数码管显示电路:采用四位数码管显示温度值(3位整数,一位小数),当温度出现负值,则最高位的数码管显示“-”。利用单片机的P0口控制数码管的八段段码,利用P2.0-P2.3分别控制4个数码管的位码,并采用动态扫描方式动态显示温度值。测温传感器选用热敏二极管传感器。这种传感器是利用半导体的温度特性来实现对温度的检测功能。硅二极管的结电压在温度每升高1时,电压下降2mV,它属于PN结型温度传感器,它在0100温度范围内表现出良好的线性,尺寸小,热时间常数为0.22s,灵敏度高,测温范围是-50150。 信号调理电路中包括电桥和放大部分。将测温二极管放入电桥的一个桥臂

11、,可直接输出传感器相对0时的电压输出,再将桥路输出送给AD620的差分输入端,进行50倍的放大,在经过OP07组成的100倍的反相放大电路,使得传感器感受0100的温度时,信号调理电路对应输出02.44V的电压值,这个电压值正好是AD574的010V单端输入电压的范围。1.4 软件设计系统程序控制流程(如图3-2) 图3-2 系统控制程序设计流程(1) 温度采集并转换为数字信号该子程序的功能是启动 DS18B20温度转换,并将 DS18B20RAM中的前两个字节温度数据读入单片机指定存储单元中。 (2) 温度转换为十进制BCD码 该子程序的功能是判别所测温度的正负值,并将其小数及整数部分分别转

12、换成十进制,再存入单片机指定的温度存储单元中。 (3) 单片机保存十进制温度值 该子程序将压缩BCD码温度数据拆分后装入显示缓冲区70-73中。3.3 显示模块设计利用串口和74164驱动LED显示器工作,采用静态显示方式。这种方式可避免采用并行I/O接口占用资源较多的缺点。采用共阳极数码管,因而各位的COM接口接+5V电源,若要显示某字段,则相应的移位寄存器74164输出必须为低电平,由于74164在低电平输出时,允许通过的电流为8mA左右,故不用再加驱动电路了,只需向串口发送要显示三位数的显示控制代码(段码),即可在LED显示器上显示出所要的字符,只需将各位的小数点控制位接低电平,使其显示

13、,其他位的小数点控制位均接高电平即可,注意加限流电阻。如图33所示。图3-3 显示模块原理图小结本系统设计的智能数字温度计是一款自动实时测量当前测试点的温度值,并通过高亮度的红色LED数码管显示温度的智能化电子产品,灵敏度非常高,测量准确,可精确到0.1度,直接显示温度,无须人为读数,改善了常规温度计的温度读取方法,设计比较人性化,能够在一定程度上改善人们的生活。 本温度计测温范围很宽,适合很多工业上的温度监控和管理,但用于工业上的温度测量,需要根据具体的环境要求对其进行外表模具的包装。因其电路简单,规模小,包装相对简单,很容易嵌入到其他设备中。 本系统在设计过程中也可以根据不同的使用人群,选

14、择不同的LED数码管。在本次设计的过程中,我发现很多的问题,虽然以前还做过这样的设计但这次设计真的让我长进了很多,单片机课程设计重点就在于软件算法的设计,需要有很巧妙的程序算法,虽然以前写过几次程序,但我觉的写好一个程序并不是一件简单的事,举个例子,以前写的那几次,数据加减时,我用的都是BCD码,这一次,我全部用的都是16进制的数直接加减,显示处理时在用除法去删分,感觉效果比较好,有好多的东西,只有我们去试着做了,才能真正的掌握,只学习理论有些东西是很难理解的,更谈不上掌握。从这次的课程设计中,我真真正正的意识到,在以后的学习中,要理论联系实际,把我们所学的理论知识用到实际当中,学习单机片机更

15、是如此,程序只有在经常的写与读的过程中才能提高,这就是我在这次课程设计中的最大收获。致谢随着毕业日子的到来,毕业设计也接近了尾声。经过几周的奋战我的毕业设计终于完成了。在没有做毕业设计以前觉得毕业设计只是对这几年来所学知识的单纯总结,但是通过这次做毕业设计发现自己的看法有点太片面。毕业设计不仅是对前面所学知识的一种检验,而且也是对自己能力的一种提高。通过这次毕业设计使我明白了自己原来知识还比较欠缺。自己要学习的东西还太多,以前老是觉得自己什么东西都会,什么东西都懂,有点眼高手低。通过这次毕业设计,我才明白学习是一个长期积累的过程,在以后的工作、生活中都应该不断的学习,努力提高自己知识和综合素质

16、。在这次毕业设计中由于是在实习单位采用的素材,理论要求很高,对设计方面有很大的要求,有什么不懂的大家在一起商量,听听不同的看法让我对这个项目有更好的理解,所以在这里非常感谢帮助我的同事们给我的帮助。在此要感谢我的指导老师对我悉心的指导,感谢老师给我的帮助。在设计过程中,我通过查阅大量有关资料,与同同事交流经验和自学,并向老师请教等方式,使自己学到了不少知识,也经历了不少艰辛,但收获同样巨大。在整个设计中我懂得了许多东西,也培养了我独立工作的能力,树立了对自己工作能力的信心,相信会对今后的学习工作生活有非常重要的影响。而且大大提高了动手的能力,使我充分体会到了在创造过程中探索的艰难和成功时的喜悦

17、。虽然这个设计做的也不太好,但是在设计过程中所学到的东西是这次毕业设计的最大收获和财富,使我终身受益。感谢这篇论文所涉及到的各位学者。本文引用了学者的研究文献,如果没有各位学者的研究成果的帮助和启发,我将很难完成本篇论文的写作。感谢我的同事和领导,在我写论文的过程中给予我很多帮助,对整个设计很多不足的方面提出了很多宝贵的意见和提供技术上的支持。由于我的学术水平有限,所写论文难免有不足之处,恳请各位老师批评和指正!参考文献资料1王文杰,许文斌.单片机应用技术M.北京:冶金工业出版社,2008. 2沈红卫.单片机应用系统设计实例与分析M.北京:北京航空航天出版社,2006. 3马彪.单片机应用技术

18、M.同济大学出版社,2009. 4倪福卿.第五届全国大学生电子设计竞赛获奖作品选编M.北京理工大学出版社,2001. 5高吉祥.全国大学生电子设计竞赛培训系列教程M.北京:电子工业出版社,2009(5).6石晓晶.智能仪器设计讲义M.南京: 南京理工大学机械学院,2009.7张迎新.单片机初级教程M.北京: 北京航空航天大学出版社,2006.8周杏鹏.仇国富.现代检测技术M.北京: 高等教育出版社,2003.9沙占友.集成温度传感器原理与应用.北京:机械工业出版社,2002,8495.10刘君华.智能传感器系统.西安:西安电子科技大学出版社,1999,83105.11沙占友.智能化传感器原理与

19、应用.北京:电子工业出版社,2004,99108.12赵负图.传感器集成电路手册.北京:化学工业出版社,2002,692703. 13张毅刚.MCS-51单片机原理及应用.哈尔滨:哈尔滨工业大学出版社2004,819414李玉峰,倪虹霞.MCS-51系列单片机原理与接口技术.北京:人民邮电出版社,2004, 187216. 15林伸茂.8051单片机彻底研究经验篇.北京:人民邮电出版社,2004,714.16沙占友.单片机外围电路设计.北京:电子工业出版社,2003,3748.17何希才.传感器及其应用电路.北京:电子工业出版社,2001,3647.18郑锋.51单片机应用系统.北京:中国铁道

20、部出版社,2010.19李林功.单片机原理与应用.北京:机械工业出版社,2008. 20谭浩强.C语言设计(第三版).北京:清华大学出版社,2005. 21杨素行.模拟电子技术基础(第三版).北京:高等教育出版社,2005.22李群芳.单片机微机计算机与接口技术(第三版)附录1源程序代码 #include #includemath.h#include DS18B20.h #define uint unsigned int#define uchar unsigned char /宏定义#define ON P3_0 /定义控制显示的开关键#define SET P3_1 /定义调整键#defin

21、e DEC P3_2 /定义减少键#define ADD P3_3 /定义增加键#define HB P3_6 /定义超过上限的报警灯#define LB P3_7 /定义低于下限的报警灯#define BEEP P3_5 /定义蜂鸣器bit shanshuo_st; /闪烁间隔标志bit beep_st; /蜂鸣器间隔标志sbit DIAN = P07; /小数点uchar x=0; /计数器uchar set_st=0; /状态标志uchar state=0; /开关状态标志signed char m; /温度值全局变量uchar n; /温度值全局变量signed char shangx

22、ian=33; /上限报警温度,默认值为33signed char xiaxian=-5; /下限报警温度,默认值为-5uchar code LEDData=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00;/*延时子程序*/void Delay(uint num) while( -num );/*初始化定时器0*/void InitTimer(void) TMOD=0x1; TH0=0x3c; TL0=0xb0; /50ms(晶振12M)/*定时器0中断服务程序*/void timer0(void) interrupt 1 TH0=

23、0x3c; TL0=0xb0; x+;/*外部中断0服务程序*/void int0(void) interrupt 0 EX0=0; /关外部中断0 if(DEC=0&set_st=1) shangxian-; if(shangxianxiaxian)shangxian=xiaxian; else if(DEC=0&set_st=2) xiaxian-; if(xiaxian110)shangxian=110; else if(ADD=0&set_st=2) xiaxian+; if(xiaxianshangxian)xiaxian=shangxian; /*读取温度*/void check_

24、wendu(void) int c; c=ReadTemperature(); /获取温度值 m=c/10; /计算得到整数 n=abs(c)%10 ; /计算得到小数 /*显示开机初始化等待画面*/Disp_init() P0 = 0x40; /显示- P2 = 0xf7; Delay(200); P2 = 0xfb; Delay(200); P2 = 0xfd; Delay(200); P2 = 0xfe; Delay(200); P2 = 0xff; /关闭显示/*显示温度子程序*/Disp_Temperature() /显示温度 P0 =LEDDatan; /显示个位 P2 = 0xf

25、e; Delay(300); P0 =LEDDataabs(m)%10; /显示十位 DIAN = 1; /显示小数点 P2 = 0xfd; Delay(300); P0 =LEDDataabs(m)/10-abs(m)/100*10; /显示百位 P2 = 0xfb; Delay(300); if(m0)P0=0x40; else if(m/100)P0=LEDDatam/100; else P0=0x00; P2=0xf7; Delay(300); P2 = 0xff; /关闭显示/*显示报警温度子程序*/Disp_alarm(signed char baojing)if(baojing=

26、10)beep_st=beep_st;x=0; if(m=shangxian&beep_st=1)HB=0;BEEP=0; else if(mxiaxian&beep_st=1)LB=0;BEEP=0; else BEEP=1;HB=1;LB=1;/*主函数*/void main(void) uint z; InitTimer(); /初始化定时器 EA=1; /全局中断开关 TR0=1; ET0=1; /开启定时器0 IT0=1; IT1=1; check_wendu(); for(z=0;z1)state=0; if(SET=0&state=1) Delay(2000); dowhile(

27、SET=0); set_st+;x=0;shanshuo_st=1; if(set_st2)set_st=0; if(set_st=0&state=1) EX0=0; /关闭外部中断0 EX1=0; /关闭外部中断1 check_wendu(); Disp_Temperature(); Alarm(); /报警检测 else if(set_st=1&state=1) BEEP=1;HB=1;LB=1; /关闭蜂鸣器与灯 EX0=1; /开启外部中断0 EX1=1; /开启外部中断1 if(x=10)shanshuo_st=shanshuo_st;x=0; if(shanshuo_st) Dis

28、p_alarm(shangxian); else if(set_st=2&state=1) BEEP=1;HB=1;LB=1; /关闭蜂鸣器与灯 EX0=1; /开启外部中断0 EX1=1; /开启外部中断1 if(x=10)shanshuo_st=shanshuo_st;x=0; if(shanshuo_st) Disp_alarm(xiaxian); /*END*/#include #define DQ P3_4 /定义DS18B20总线I/O/*延时子程序*/void Delay_DS18B20(int num) while(num-) ;/*初始化DS18B20*/void Init_

29、DS18B20(void) unsigned char x=0; DQ = 1; /DQ复位 Delay_DS18B20(8); /稍做延时 DQ = 0; /单片机将DQ拉低 Delay_DS18B20(80); /精确延时,大于480us DQ = 1; /拉高总线 Delay_DS18B20(14); x = DQ; /稍做延时后,如果x=0则初始化成功,x=1则初始化失败 Delay_DS18B20(20);/*读一个字节*/unsigned char ReadOneChar(void) unsigned char i=0; unsigned char dat = 0; for (i=

30、8;i0;i-) DQ = 0; / 给脉冲信号 dat=1; DQ = 1; / 给脉冲信号 if(DQ) dat|=0x80; Delay_DS18B20(4); return(dat);/*写一个字节*/void WriteOneChar(unsigned char dat) unsigned char i=0; for (i=8; i0; i-) DQ = 0; DQ = dat&0x01; Delay_DS18B20(5); DQ = 1; dat=1; /*读取温度*/unsigned int ReadTemperature(void) unsigned char a=0; uns

31、igned char b=0; unsigned int t=0; float tt=0; Init_DS18B20(); WriteOneChar(0xCC); /跳过读序号列号的操作 WriteOneChar(0x44); /启动温度转换 Init_DS18B20(); WriteOneChar(0xCC); /跳过读序号列号的操作 WriteOneChar(0xBE); /读取温度寄存器 a=ReadOneChar(); /读低8位 b=ReadOneChar(); /读高8位 t=b; t=8; t=t|a; tt=t*0.0625; t= tt*10+0.5; /放大10倍输出并四舍

32、五入 return(t);/*END*/请删除以下内容,O(_)O谢谢!The origin of taxation in the United States can be traced to the time when the colonists were heavily taxed by Great Britain on everything from tea to legal and business documents that were required by the Stamp Tax. The colonists disdain for this taxation without

33、 representation (so-called because the colonies had no voice in the establishment of the taxes) gave rise to revolts such as the Boston Tea Party. However, even after the Revolutionary War and the adoption of the U.S. Constitution, the main source of revenue for the newly created states was money re

34、ceived from customs and excise taxes on items such as carriages, sugar, whiskey, and snuff. Income tax first appeared in the United States in 1862, during the Civil War. At that time only about one percent of the population was required to pay the tax. A flat-rate income tax was imposed in 1867. The

35、 income tax was repealed in its entirety in 1872. Income tax was a rallying point for the Populist party in 1892, and had enough support two years later that Congress passed the Income Tax Act of 1894. The tax at that time was two percent on individual incomes in excess of $4,000, which meant that i

36、t reached only the wealthiest members of the population. The Supreme Court struck down the tax, holding that it violated the constitutional requirement that direct taxes be apportioned among the states by population (pollock v. farmers loan & trust, 158 U.S. 601, 15 S. Ct. 912, 39 L. Ed. 1108 1895).

37、 After many years of debate and compromise, the sixteenth amendment to the Constitution was ratified in 1913, providing Congress with the power to lay and collect taxes on income without apportionment among the states. The objectives of the income tax were the equitable distribution of the tax burde

38、n and the raising of revenue. Since 1913 the U.S. income tax system has become very complex. In 1913 the income tax laws were contained in eighteen pages of legislation; the explanation of the tax reform act of 1986 was more than thirteen hundred pages long (Pub. L. 99-514, Oct. 22, 1986, 100 Stat.

39、2085). Commerce Clearing House, a publisher of tax information, released a version of the Internal Revenue Code in the early 1990s that was four times thicker than its version in 1953. Changes to the tax laws often reflect the times. The flat tax of 1913 was later replaced with a graduated tax. Afte

40、r the United States entered world war i, the War Revenue Act of 1917 imposed a maximum tax rate for individuals of 67 percent, compared with a rate of 13 percent in 1916. In 1924 Secretary of the Treasury Andrew W. Mellon, speaking to Congress about the high level of taxation, stated, The present system is a failure. It was an emergency measure, adopted under the pressure of war necessity and not to be counted upon as a permanent part of our revenue structure. The high rates put pressure on taxpayers to reduce their taxable income, t

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1