肖志平电子温度计台历论文文档格式.docx
- 文档编号:19587310
- 上传时间:2023-01-08
- 格式:DOCX
- 页数:21
- 大小:641.02KB
肖志平电子温度计台历论文文档格式.docx
《肖志平电子温度计台历论文文档格式.docx》由会员分享,可在线阅读,更多相关《肖志平电子温度计台历论文文档格式.docx(21页珍藏版)》请在冰豆网上搜索。
本文设计的电子温度计台历电路的时间和温度部分均采用单片机技术实现,以89S52为数据处理核心,并以8155扩展系统。
辅以液晶(LCD)显示,温度部分用DS1820传感器实现。
该系统结构简单、可靠性高、通过软件设计能实现计时、温度测量、闹钟、报警、简易计算器等多种功能。
Abstract:
Thisarticledesignsthethermotroncalendarelectriccircuittimeand
thetemperaturepartialusethemonolithicintegratedcircuit
technologyrealization,take89S52asthedataprocessingcore,andby
8,155expansionssystems.Auxiliary(LCD)demonstratedbytheliquid
crystalthat,thetemperaturepartiallyrealizeswiththeDS1820
sensor.Thissystemstructuresimple,thereliabilityishigh,can
realizethetime,thetemperaturesurvey,thealarmclockthroughthe
softwaredesign,reportstothepolice,thesimplecalculatorandso
onthemanykindsoffunctions
关键字:
电子台历、温度计、单片机、LCD、DS1820
Keywords:
Essentialcharacter:
Electroniccalendar,thermometer,monolithicintegratedcircuit,LCD,DS1820
1.前言:
台历是日常生活中实用的设施,而普遍的台历多为一次性纸制品,无法重复性使用;
温度又是生产生活中重要的环境指标。
为此,我们借着学校电子制作大赛的机会,设计本电子温度计台历。
设计中选用比较常用的单片机芯片89S52和外围接口芯片8155,并用LCD(1602)和温度传感器DS1820来实现计时和温度测量的基本功能。
并依照竞赛设计题目要求扩展了整点报时、温度报警和电池充电(断电后时钟继续走时)等功能,可以充分地满足日常生活的使用需求。
另外,我们还将在完成以上功能的基础之上,将简易计算器功能整合到该系统中去。
我们经过讨论,确定了系统的硬件电路设计方案,用EDA软件在电脑上制作了系统原理电路图(附图),用汇编语言对系统的软件进行了设计,从而实现了本电子温度计台历的设计任务。
2.电子温度计台历功能和系统硬件设计:
2.1.电子温度计台历的功能
根据设计课题的要求,利用89S52、LCD(1602)、DS18B20
设计完成的电子温度计台历电路。
时间部分电路能够实时计时,可以对年、月、日、周、时、分、秒进行计时,具有闰年补偿功能,可调整时间日期,另外扩展了整点报时功能。
利用键盘操作即可实现校时、校日期、设置多个闹钟功能间的切换。
并且通过LCD1602(液晶)显示所有计时结果和闹钟的设定。
温度部分为高精度测量(精度小于等于0.5度,采集时间小于5秒),并能把实测的温度在LCD上显示,能够完成对所在环境温度的实时监控(实时显示)。
本温度计还扩展了温度报警功能,通过设置上下报警温度,当温度不在设置范围内时,报警装置将自动报警提示。
本电子温度计台历的电源系统还具有充电电池供电功能,且断电后时钟能够继续走时;
电路中还有对充电电池充电的环节。
用户能够很可靠地、方便地使用本台历。
另外,为充分利用系统的硬件资源,通过键盘的切换和软件设计还实现简易计算器功能。
2.2.方案比较及各单元电路设计:
含充电电路电源系统设计:
本设计要求的供电系统是+5V的直流电源,可以实现电池供电,并且扩展了充电电路,使系统能够断电后能够照常工作(继续走时和温度的测量)。
常见的有镍镉和镍氢的电池,其尺寸为5#、7#,而容量在500MAH—1.2MAH之间。
常用的充电方法要么没有完成以上的功能,或电路过于复杂。
而本电源使用于单片机系统,当生产现场断电可能会使单片机系统运行数据丢失。
为此这里设计出一种简单的单片机UPS(不间断电源)电路。
图1.电源部分设计电路图
电路原理:
电源220V经过变压器降压,再经过电桥的整流后经过RC∏型滤波网络滤除电源中的高频脉动成分后,电路分两路,稳压输出+5V电压,另外的一路通过充电环节对电池进行充电。
其中的R1决定充电部分的充电电流的大小。
在此应该综合考虑充电时间和安全充电电流两方面因素来进行设计,充电电流选择约为40mA。
R2为一小阻值电阻和充电电池构成充电回路,其中的二极管D起隔离作用。
当停电时电池经二极管D放电,为系统供电,所以该电路的设计是完全符合电路各方面的要求的。
时间部分:
本电子温度计台历除了可以对年、月、日、星期、时、分、秒进行计时外,还可以实现闰年补偿功能。
另外本设计中的时间部分还可以通过键盘电路调整时间和日期,可以设定多个闹钟并通过报警装置发出不同的提示音。
方案一、
利用数字电路来实现以上功能,通常是采用74LS90、74LS48和555电路产生时钟信号来实现计时功能;
或通过4518、4511和由晶振加分频电路产生的秒脉冲实现计时功能。
而对于报警、整点报时等功能就必须另外通过芯片来实现。
该方案中使用的元件多、电路的复杂程度随着功能的增加而倍增。
所以就做电子台历而言(要求功能多样、整机体积小)是十分不合适。
方案二、
利用单片机实现,其主要原理是利用单片机内部的时钟模块,通过对程序的设计做一秒的延时,依次按照时间的进制,通过累加,进位就可实现计时功能。
本部分电路的主要硬件为:
89S52、8155、显示电路、报警装置。
图2.时间部分框图
其中的的单片机才用目前技术较成熟的89S52并扩展8155(带RAM和定时器/计数器的可编程并行接口)为主要的处理芯片、用6MHZ晶振、LCD显示、报警装置和一4*4的数字键盘一起构成了时钟电路的硬件。
其中利用键盘(4*4)实现对时间电路的设置和校准功能。
图3.时间部分设计原理图
LCD显示、驱动部分设计:
方案1.
设计中设计到用多块LED数码管显示电路的问题,其中有年、月、日、时间几个部分的需要数码管显示,另外加上驱动电路。
整个电路如果用数码管来做的话就非常的繁杂了。
数码管实现显示部分电路:
图4.数码管方案显示电路
由以上电路我们可以很清楚的发现若采用数码管方案的话,电路无论是原理图,还是在实际的PCB制作上都将有不少的问题产生。
为此
,综合制作和设计产品实用性两方面的因素后,本电子温度计台历的显示部分用1602的LCD来实现。
方案2.
1602液晶显示是16*2的显示部分,其主要的参数如下:
图5.LCD1602部分参数表
由上表采用1602可以对电路工作结果显示,1602液晶显示通过软件的设计可以分开显示时间(年、月、日、时钟、闹钟、星期)和温度。
并且还便于系统的功能扩展,可以很方便的将计算器和游戏功能实现。
相比方案1.而言,液晶显示比数码管显示在本设计项目中的优势就大很多。
并且电路在制作中布线和电路板格局上都就得到很大程度上的优化。
此外电路原理简单,采用8155的PA口线将时间等信号经BUS的传输到八路反向驱动电路推动后送于LCD1602中,以实现显示功能。
图6.实现1602液晶显示的框图
温度部分:
温度是日常生产生活中一个比较重要的环境指标,我们经常需要对其进行测量。
传统的温度计主要是利用固体、液体的热胀冷缩来实现,常用的方案有:
方案一
由于本设计是测温电路,可以使用热敏电阻之类的器件利用其感温效应,在将随被测温度变化的电压或电流采集过来,进行A/D转换后,就可以用单片机进行数据的处理,在显示电路上,就可以将被测温度显示出来,这种设计需要用到A/D转换电路,感温电路比较麻烦。
它们的精度是很难达到要求。
并且这种温度计还无法实现在深远距离的测量。
方案二
进而考虑到用温度传感器,在单片机电路设计中,大多都是使用传感器,所以这是非常容易想到的,所以可以采用一只温度传感器
DS18B20即可实现温度传感功能。
DS18B20是集温度检测与数字数据输出为一身的传感器芯片。
具有超小的体积,超低的硬件开销,抗干扰能力强,精度高等优点。
为此DS18B20是用单片机技术进行温度相关的项目开发中的优秀的传感器。
可以很容易直接读取被测温度值,进行转换,就可以满足设计要求。
DS18B20的主要特征:
1.全数字化的温度转换及输出;
2.先进的单总线数据通信;
3.最高分辨率为12位,精度可达+0.5℃;
4.宽检测温度范围:
-55℃--+125℃;
5.内置EEPROM,有限温报警功能;
图7.DS18B20与单片机的硬件连接
基于DS18B20的如上优点,结合本设计中温度部分要达到的设计指标,可以很容易看出,方案一中涉及的环节较多、且元件数量多、电路复杂、且精度并不是很高、调试起来较难(容易受到环境的干扰)。
而方案二,电路比较简单,软件设计也比较简单,可靠性高,故本设计采用方案二。
DS18B20可以采用两种方式供电,一种是采用电源供电方式,此时DS18B20的1脚接地,2脚作为信号线,3脚接电源。
另一种是寄生电源供电方式,如图4所示单片机端口接单线总线,为保证在有效的DS18B20时钟周期内提供足够的电流,可用一个MOSFET管来完成对总线的上拉。
当DS18B20处于写存储器操作和温度A/D转换操作时,总线上必须有强的上拉,上拉开启时间最大为10us。
采用寄生电源供电方式时VDD端接地。
由于单线制只有一根线,因此发送接口必须是三态的。
至于温度部分的测量结果将通过1602液晶显示电路来显示出来,且有效数字为小数点后的两位,另外上下限温度的设置还可以通过软件编程来实现,从而实现温度报警功能。
键盘部分电路:
通过8155的PB口线来实现:
P0–P3为行,P4–P7构成列,按键的去抖动采用软件方式。
在检测到有键按下时,执行10ms延时子程序,再确认该键是否仍保持闭合状态。
若仍然保持为闭合状态,则确认为该键闭合;
若延时后,该键不处于闭合状态,则按键抖动处理,认为键没有按下。
通过软件的设计实现电路的控制(校准时间日期、闹钟的设定),另外扩展简易计算器功能时。
可以从单片机芯片中的口线中设置一个切换开关。
计算器功能:
本设计的计算器电路以89S52型8位单片机作为数据处理的核心,用8155并行扩展口构成显示/键盘电路,系统的工作原理简单,可靠性高,价格低廉。
通过软件设计,它具有完成整数加、减、乘、除四则基本运算的功能,可以作为简单的计算器使用。
并且其中的硬件电路都是温度计台历电路中共享的部件。
可以通过软件的设计和键盘电路的切换来实现,本部分的难点是在于软件部分的设计。
硬件部分只需在89S52的口线中设置一切换电路----开关控制口线接电平的高低来实现键盘功能的切换。
系统总体的设计:
该电子温度计台历分可分为时间和温度两大模块,采用自顶向下的设计方法来设计,另外再加上电源和校时等几大单元构成。
图8.系统硬件原理框图
89S52单片机为电子温度计台历系统的数据处理核心单元,并通过8155外围接口扩展芯片实现时间和温度两大功能模块,另外还扩展了简易计算器功能。
时间模块采用89S52计时再经8155扩展传输至1602(LCD)显示结果,并通过键盘对时间的校准和闹钟的设定。
另外由单片机控制闹钟和整点信号输出并经过报警电路实现闹钟和整点报时功能。
温度模块由89S52和传感器DS18B20完成温度的检测和温度信号处理。
处理结果再LCD1602显示输出,同时利用软件设定上下限温度,由公用报警电路实现温度报警功能。
本系统的电路结构简单、比较充分利用硬件资源。
在能够完成基本功能的前提下,尽量节省元器件,显示清晰,功能完成效率比较高高,价格低廉,原理覆盖也比较完善。
本设计的原理图见附录。
电子温度计台历的软件设计:
时间部分的软件设计:
采用模块程序设计的思想编写软件,整个系统的软件由一个主程序和多个子程序组成,每个子程序作为一个相对独立的模块,实现一个基本的功能,可以为多个程序共享。
这样,便于程序的编写、调试,也容易分工完成。
体现了结构化编程的优势。
其中电子温度计台历系统中的程序设计就是采用自顶向下的程序设计方法:
图9.总体程序流程图
图10.定时中断程序流程图
调用功能流程图:
按SB1按SB2
图11.调用功能流程图
温度部分的软件设计:
温度部分系统程序主要包括主程序,读出温度子程序,温度转换命令子程序,计算温度子程序,显示数据刷新子程序等。
主程序
主程序的主要功能是负责温度的实时显示、读出并处理DS18B20的测量的当前温度值,温度测量每1s进行一次。
这样可以在一秒之内测量一次被测温度,其程序流程见图所示:
主程序流程图温度流程图
读出温度子程序
读出温度子程序的主要功能是读出RAM中的9字节,在读出时需进行CRC校验,校验有错时不进行温度数据的改写。
其程序流程图如下:
温度转换流程图
温度转换命令子程序
温度转换命令子程序主要是发温度转换开始命令,当采用12位分辨率时转换时间约为750ms,在本程序设计中采用1s显示程序延时法等待转换的完成。
温度转换命令子程序流程图如上图,图9所示
计算温度子程序
计算温度子程序将RAM中读取值进行BCD码的转换运算,并进行温度值正负的判定,其程序流程图如图10所示。
计算温度流程图 显示数据刷新流程图
显示数据刷新子程序
显示数据刷新子程序主要是对显示缓冲器中的显示数据进行刷新操作,当最高显示位为0时将符号显示位移入下一位。
计算器软件设计:
数字键盘输入系统的整个软件由主程序和显示子程序、键盘扫描子程序、显示移位子程序、BCD码压缩子程序、BCD码转换为二进制数子程序、二进制数转换为压缩型BCD码子程序、压缩型BCD码拆分子程序、加法运算子程序、减法运算子程序、乘法运算子程序、除法运算子程序、延时子程序等多个子程序组成。
程序流程图
电子温度计台历系统所需元件列表:
DS89S52
1片
键盘
4*4键盘
电容
1000UF*2、470UF、
10UF、30PF*2
电阻
5.1K*4、1K、470
4.7K、2K、6K、33
8155
1片
蜂鸣器
1个
按钮开关
1个
7805
1602LCD
SMC1602
变压器(9V)
9014
IN4148
5个
晶振
6MHZ
纽扣充电电池
(6V)
CD4001
电位器
10K*1
DS18B20
八路反向放大芯片
心得与体会:
该电子温度计台历的设计综合了多方面的知识,采用单片机主体控制实现计时和温度检测功能及其两部分的相关功能,另外通过键盘可以对时间部分操作。
拓展了闹钟、报警、简易计算器功能。
该系统的设计是我们运用单片机、数、模电路等基础课程知识的结晶。
这是我们理论联系实际的一次很好的机会,在这个过程中我们发现很多的问题,但是我们也解决了很多的问题,所以经历过这个项目的设计后我们长进了很多。
给与了我们很多挑战困难的勇气和信心。
从这次的课程设计中,我真真正正的意识到,在以后的学习中,要理论联系实际,把我们所学的理论知识用到实际当中,学习单机片机更是如此,程序只有在经常的写与读的过程中才能提高,这就是我在这次课程设计中的最大收获。
参考文献:
[1]李广弟.单片机基础.北京航空航天大学出版社,2001
[2]阎石.数字电子技术基础(第四版).高等教育出版社,1998
[3]李华.MCS-51系列单片机实用接口技术.北京航空航天大学出版社,1993
[4]何立民张迎新杜小平樊桂花雷道振编著.单片机初级教程[M].北京:
北京航空航天大学出版社2000
[5]谢自美.电子线路设计.实验.测试(第三版).华中科技大学出版
2006
[6]谢嘉奎.电子线路(第四版).高等教育出版社,2000
[7]王彦.全国大学生电子设计竞赛训练教程,电子工业出版社,2005
[8]高鹏.电路设计与制版Protel99入门与提高.人民邮电出版社,2000
附电路原理图:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 肖志平 电子 温度计 台历 论文