基于51单片机的数字温湿度计设计与实现毕业论文.docx
- 文档编号:13212166
- 上传时间:2023-06-12
- 格式:DOCX
- 页数:54
- 大小:1.30MB
基于51单片机的数字温湿度计设计与实现毕业论文.docx
《基于51单片机的数字温湿度计设计与实现毕业论文.docx》由会员分享,可在线阅读,更多相关《基于51单片机的数字温湿度计设计与实现毕业论文.docx(54页珍藏版)》请在冰点文库上搜索。
基于51单片机的数字温湿度计设计与实现毕业论文
摘要:
温度和湿度是两个最基本的环境参数,人们生活与温湿度息息相关。
在日常生活、工业、医学、环境保护、化工、石油等领域,经常需要对环境温度和湿度进行测量和控制。
准确测量温湿度在生物制药、食品加工、造纸等行业更是至关重要。
因此研究温湿度的测量方法和装置具有重要的意义。
随着科技的不断发展,单片机技术已经普及到我们生活、工作、科研等各个领域,已经成为一种比较成熟的技术。
由于单片机集成度高、功能强、可靠性高、体积小、功耗低、使用方便、价格低廉等一系列有点,目前已经渗入到人们工作和生活的方方面面。
本论文介绍了一种以单片机AT89C51为主要控制器件,以DHT11为数字温湿度传感器的新型数字温湿度计。
本设计主要包括硬件电路的设计和系统软件的设计、硬件电路主要包括主控制器,测量温湿度控制电路和显示电路等。
关键词:
温湿度传感器;LCD1602;protel;keil软件
DigitalThermometerandhumidityBasedon
SingleChipMicrocomputer
Abstract:
Temperatureandhumidityarethetwomostbasicenvironmentalparameters,whicharecloselyrelatedtopeople'slivesandthetemperatureandhumidity.Temperatureandhumiditymeasurementandcontrolareoftenneededtoambientinthefieldofdailylife,industry,medicine,environmentalprotection,chemical,petroleum,etc.,.Accuratemeasurementoftemperatureandhumidityinthepharmaceutical,foodprocessing,paperindustryisessential.Therefore,studyingthetemperatureandhumiditymeasurementmethodsanddevicesisofgreatsignificance.
ThispaperdescribesamicrocontrollerAT89S52controldevices,digitaltemperatureandhumiditysensorstoDHT11newdigitalhygrometer.Thedesignincludesthedesignofhardwarecircuitsandsystemsoftwaredesign,hardwarecircuitincludesamastercontroller,themeasurementoftemperatureandhumiditycontrolcircuitanddisplaycircuit.DHT11isacompositeSensorcontainsacalibrateddigitalsignaloutputofthetemperatureandhumidity.Applicationofadedicateddigitalmodulescollectiontechnologyandthetemperatureandhumiditysensingtechnology,toensurethattheproducthasaSonghighreliabilityandexcellentlong-termstability.DisplaycircuitLCD1602LCDdisplay,8-bitmicroprocessorinterface,mappedbytheinternal80×8-bitDDRAM2linex16characterdisplay,convenientandintuitive.Thesoftwarepartincludesthemainprogram,themeasuredtemperatureandhumiditysubroutinetodisplaysubroutine.ThedigitalhygrometerwithDHT11withAT89S52notonlyhasthesimpleexternalcircuit,butalsofacilitatedebuggingandsimulation.
Keywords:
Temperatureandhumiditysensor;theLCD1602;protell;keilsoftware
1绪论
1.1选题意义
随着科技的不断发展,现代社会对各种信息参数的准确度和精确度的要求都有了几何级的增长,而如何准确而迅速的获得这些参数就需要受制于现代信息基础的发展水平、在三大信息采集、信息传输和信息处理中,传感器属于信息技术的前沿尖端产品,尤其是温湿度传感器技术,在我国各领域已经引用的非常广泛,可以说是渗透到社会的每一个领域。
人民的生活与环境息息相关,在工业生产过程中需要实时测量温度,在农业生产中也离不开温湿度的测量。
由于传感器能将各种物理量、化学量和生物量等信号转变为电信号,使得人们可以利用计算机实现自动测量、信息处理和自动控制。
传感器主要用于测量和控制系统,它的性能好坏直接影响系统的性能。
因此我们必须掌握各种传感器的结构、原理及其性能指标,通过对传感器实例的分析了解,才能将传感器和信息通信和信息处理结合起来,适应传感器的生产、研制和开发及应用。
温湿度传感器发展速度快,应用领域也很广泛,如纺织行业、农业、食品生产、石油化工、日常生活等,并且还有很大发展潜力,为了提高对传感器的认识和了解,尤其是对温湿度传感器的深入研究,基于实时、准确和广泛的原则进行了本次设计。
1.2国内外发展趋势
最常见到得测量温度的工具是各种各样的温度计,例如:
水银玻璃温度计,酒精温度计,热电偶或热电阻温度计等。
它们常常以刻度的形式表示温度的高低,虽然结构简单、价格便宜,但是它的精确度不高,不易读数。
传统的湿度采用干湿球法,不仅复杂而且测量精度不高。
而利用单片机和温、湿度传感器构成的电子式智能温度计就可以直接测量温、湿度,得到温、湿度的数字值,既简单方便,又直观准确。
测量温湿度的关键是温湿度传感器。
过去测量温度与湿度是分开的。
随着技术的进步和人们生活的需要出现了温湿度传感器。
温度传感器的发展经过了3个阶段:
传统的分立式温度传感器、模拟集成温度传感器、智能集成温度传感器。
目前,国际上新型温度传感器正从模拟式向数字化、从集成化向智能化、网络化的方向发展。
湿度传感器也是经历了这样一个阶段逐渐走向数字智能化。
温度控制系统在国内各行各业的应用虽然已经十分广泛,但从国内生产的温度控制器来讲,总体发展水平仍然不高,同日本、美国、德国等先进国家相比,仍然有着较大的差距。
成熟的温控产品主要以“点位”控制及常规的PID控制器为主,它们只能适应一般温度系统控制,而用于较高控制场合的智能化、自适应控制仪表,国内技术还不十分成熟,形成商品化并广泛应用的控制仪表较少。
进入21世纪后,特别在我国加入WTO后,国内产品面临巨大挑战。
各行业特别是传统产业都急切需要应用电子技术、自动控制技术进行改造和提升。
例如纺织行业,温湿度是影响纺织品质量的重要因素,但纺织企业对温湿度的测控手段仍很粗糙,十分落后,绝大多数仍在使用干湿球湿度计,采用人工观测,人工调节阀门、风机的方法,其控制效果可想而知。
制药行业里也基本如此。
而在食品行业里,则基本上凭经验,很少有人使用湿度传感器。
本设计使用单片机作为核心进行控制。
单片机具有集成度高,通用性好,功能强,特别是体积小,重量轻,耗能低,可靠性高,抗干扰能力强和使用方便等独特优点,在数字、智能化方面有广泛的用途。
2温湿度计的发展
2.1温度计的发展史
最早的温度计是在1593年由意大利科学家伽利略(1564~1642)发明的。
他的第一只温度计是一根一端敞口的玻璃管,另一端带有核桃大的玻璃泡。
使用时先给玻璃泡加热,然后把玻璃管插入水中。
随着温度的变化,玻璃管中的水面就会上下移,根据移动的多少就可以判定温度的变化和温度的高低。
这种温度计,受外界大气压强等环境因素的影响较大,所以测量误差大。
伽利略发明的第一个温度计后来伽利略的学生和其他科学家,在这个基础上反复改进,如把玻璃管倒过来,把液体放在管内,把玻璃管封闭等。
比较突出的是法国人布利奥在1659年制造的温度计,他把玻璃泡的体积缩小,并把测温物质改为水银,这样的温度计已具备了现在温度计的雏形。
以后荷兰人华伦海特在1709年利用酒精,在1714年又利用水银作为测量物质,制造了更精确的温度计。
他观察了水的沸腾温度、水和冰混合时的温度、盐水和冰混合时的温度;经过反复实验与核准,最后把一定浓度的盐水凝固时的温度定为0℉,把纯水凝固时的温度定为32℉,把标准大气压下水沸腾的温度定为212℉,用℉代表华氏温度,这就是华氏温度计。
在华氏温度计出现的同时,法国人列缪尔(1683~1757)也设计制造了一种温度计。
他认为水银的膨胀系数太小,不宜做测温物质。
他专心研究用酒精作为测温物质的优点。
他反复实践发现,含有1/5水的酒精,在水的结冰温度和沸腾温度之间,其体积的膨胀是从1000个体积单位增大到1080个体积单位。
因此他把冰点和沸点之间分成80份,定为自己温度计的温度分度,这就是列氏温度计。
华氏温度计制成后又经过30多年,瑞典人摄尔修斯于1742年改进了华伦海特温度计的刻度,他把水的沸点定为零度,把水的冰点定为100度。
后来他的同事施勒默尔把两个温度点的数值又倒过来,就成了现在的百分温度,即摄氏温度,用℃表示。
随着科学技术的发展和现代工业技术的需要,测温技术也不断地改进和提高。
由于测温范围越来越广,根据不同的要求,又制造出不同需要的测温仪器。
2.2湿度测量方法
湿度测量始终是世界计量领域中著名的难题之一。
现代湿度测量方案最主要的有两种:
干湿球测湿法,电子式湿度传感器测湿法。
下面对这两种方案进行比较。
干湿球测湿法的维护相当简单,在实际使用中,只需定期给湿球加水及更换湿球纱布即可。
与电子式湿度传感器相比,干湿球测湿法不会产生老化,精度下降等问题。
所以干湿球测湿方法更适合于在高温及恶劣环境的场合使用。
电子式湿度传感器的特点:
电子式湿度传感器是近几十年,特别是近20年才迅速发展起来的。
湿度传感器生产厂在产品出厂前都要采用标准湿度发生器来逐支标定,电子式湿度传感器的准确度可以达到2%一3%RH。
在实际使用中,由于尘土、油污及有害气体的影响,使用时间一长,会产生老化,精度下降,湿度传感器年漂移量一般都在±2%左右,甚至更高。
一般情况下,生产厂商会标明1次标定的有效使用时间为1年或2年,到期需重新标定。
电子式湿度传感器的精度水平要结合其长期稳定性去判断,一般说来,电子式湿度传感器的长期稳定性和使用寿命不如干湿球湿度传感器。
湿度传感器是采用半导体技术,因此对使用的环境温度有要求,超过其规定的使用温度将对传感器造成损坏。
所以电子式湿度传感器测湿方法更适合于在洁净及常温的场合使用。
3开发工具keil和protel
3.1KeilC51
3.1.1keil软件简介
KeilC51是KeilSoftware公司推出的51系列单片机兼容汇编语言和C语言的软件开发工具。
它提供了基于Windows的集成开发环境uVision2,拥有丰富的库函数和功能强大的集成开发调试工具,同时具备功能强大的软件仿真和硬件仿真功能;另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到KeilC51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。
在开发大型软件时更能体现高级语言的优势。
使用C语言肯定要使用到C编译器,以便把写好的C程序编译为机器码,这样单片机才能执行编写好的程序。
KEILuVISION2是众多单片机应用开发软件中优秀的软件之一,它支持众多不同公司的MCS51架构的芯片,它集编辑,编译,仿真等于一体,同时还支持,PLM,汇编和C语言的程序设计,它的界面和常用的微软VC++的界面相似,在调试程序,软件仿真方面有很强大的功能。
因此很多开发51应用的工程师或普通的单片机爱好者,都对它十分喜欢。
与汇编语言相比,C语言在功能、结构、可读性和可维护性上有明显的优势,因而易学易用。
KeilC51生成的目标代码效率非常高,多数语句生成的汇编代码紧凑,容易理解。
在开发大型软件时更能体现高级语言的优势。
KeilC51编译器是一个完全支持ANSI标准的C语言编译器,除少数关键地方外,KeilC51和标准ANSIC语言是基本相似的;但是由于51单片机结构的特殊性,KeilC51在ANSIC的基础上进行了一些扩展,使其能够更有效的利用单片机的各种资源。
深入理解并应用C51对ANSIC的扩展,是学习C51的关键之一,因为大多数扩展功能都是直接针对C51系列单片机硬件设计的。
常用的KeilC51的扩展主要包括;数据类型;存储类型;存储模型;指针;中断函数;再入函数。
3.1.2建立一个C项目
应用Keil进行软件仿真开发的主要步骤为:
(1)运行KEILuVISION2界面如下图3-1。
图3-1KEILuVISION2界面图
(2)点击Project菜单,选择弹出的下拉式菜单中的NewProject,如图3-2。
接着弹出一个标准Windows文件对话窗口,如下图3-3,在“文件名”中输入您的第一个C程序项目名称,这里我用“test”,只要符合Windows文件规则的文件名都行。
“保存”后的文件扩展名为uv2,这是KEILuVision2项目文件扩展名,以后我们可以直接点击此文件以打开先前做的项目。
图3-2NewProject菜单图
图3-3文件窗口
(3)选择所要的单片机,这里我们选择常用的Ateml公司的AT89C51。
此时屏幕如图3-4所示。
完成上面步骤后,我们就可以进行程序的编写了。
图3-4选取芯片
(4)接下来要在项目中创建新的程序文件或加入旧程序文件。
如果没有现成的程序,那么就要新建一个程序文件。
点击图3-5中新建文件的快捷按钮或者点击File菜单下的New,中出现一个新的文字编辑窗口,这个操作也可以通过快捷键Ctrl+N来实现。
好了,现在可以编写程序了,光标已出现在文本编辑窗口中,等待我们的输入了如图3-6。
图3-5新建文件
图3-6程序编辑窗口
(5)程序写好后点击保存按钮保存新建的程序,也可以用菜单File-Save或快捷键Ctrl+S进行保存。
因是新文件所以保存时会弹出文件操作窗口,这里我把把第一个程序命名为test1.c,保存在项目所在的目录中,这时会发现程序单词有了不同的颜色,说明KEIL的C语法检查生效了。
如图3-7。
图3-7保存文件程序
(6)如图3-8鼠标在屏幕左边的SourceGroup1文件夹图标上右击弹出菜单,在这里可以做在项目中增加减少文件等操作。
我们选“AddFiletoGroup‘SourceGroup1’”弹出文件窗口,选择刚刚保存的文件,按ADD按钮,关闭文件窗,程序文件已加到项目中了。
这时在SourceGroup1文件夹图标左边出现了一个小+号说明,文件组中有了文件,点击它可以展开查看。
图3-8把文件加入到项目文件组中
(7)C程序文件已被我们加到了项目中了,下面就剩下编译运行了。
使用软件默认的编译设置,它不会生成用于芯片烧写的HEX文件。
图3-9中1、2、3都是编译按钮,不同是1是用于编译单个文件。
2是编译当前项目,如果先前编译过一次之后文件没有做动编辑改动,这时再点击是不会再次重新编译的。
3是重新编译,每点击一次均会再次编译链接一次,不管程序是否有改动。
在3右边的是停止编译按钮,只有点击了前三个中的任一个,停止按钮才会生效。
在4中可以看到编译的错误信息和使用的系统资源情况等,要查错就靠它了。
5是123在菜单中的位置,这个项目只有一个文件,按123中的任何一个都可以编译。
图3-9编译程序
3.1.3如何生成.HEX文件
可以用KEILuVISION2来编译生成用于烧写芯片的HEX文件。
HEX文件格式是Intel公司提出的按地址排列的数据信息,数据宽度为字节,所有数据使用16进制数字表示,常用来保存单片机或其他处理器的目标程序代码。
它保存物理程序存储区中的目标代码映象。
一般的编程器都支持这种格式。
打开刚才的程序,打开它的所在目录,找到test.Uv2的文件就可以打开先前的项目了。
然后右击图3-10中的项目文件夹,弹出项目功能菜单,选OptionsforTarget’Target1’,弹出项目选项设置窗口,同样先选中项目文件夹图标,这时在Project菜单中也有一样的菜单可选。
打开项目选项窗口,转到Output选项页图3-11所示,图中1是选择编译输出的路径,2是设置编译输出生成的文件名,3则是决定是否要创建HEX文件,选中它就可以输出HEX文件到指定的路径中。
再将它重新编译一次,很快在编译信息窗口中就显示HEX文件创建到指定的路径中了,如图3-12。
这样我们就可用自己的编程器所附带的软件去读取并烧到芯片了。
图3-10项目功能菜单
图3-11项目选项窗口
图3-12编译信息窗口
3.2protel软件
3.2.1软件简介
Protel是Altium公司在80年代末推出的EDA软件,在电子行业的CAD软件中,它当之无愧地排在众多EDA软件的前面,是电子设计者的首选软件,它较早就在国内开始使用,在国内的普及率也最高,有些高校的电子专业还专门开设了课程来学习它,几乎所有的电子公司都要用到它,许多大公司在招聘电子设计人才时在其条件栏上常会写着要求会使用Protel。
Protel99采用全新的管理方式,即数据库的管理方式。
Protel99是在桌面环境下第一个以独特的设计管理和团队合作技术为核心的全方位的印制板设计系统。
所有Protel99设计文件都被存储在唯一的综合设计数据库中,并显示在唯一的综合设计编辑窗口。
Protel99软件沿袭了Protel以前版本方便易学的特点,内部界面与Protel98大体相同,新增加了一些功能模块。
Protel公司引进了德国INCASES公司的先进技术,在Protel99中集成了信号完整性工具,精确的模型和板分析,帮助你在设计周期里利用信号完整性分析可获得一次性成功和消除盲目性。
Protel99容易使用的特性就是新的“这是什么”帮助。
按下任何对话框右上角的小问号,然后选择你所要的信息。
现在可以很快地看到特性的功能,然后用到设计中,按下状态栏末端的按钮,使用自然语言帮助顾问。
3.2.2功能特点
Protel99SE共分5个模块,分别是原理图设计、PCB设计(包含信号完整性分析)、自动布线器、原理图混合信号仿真、PLD设计。
以下介绍一些Protel99SE的部分最新功能:
◆可生成30多种格式的电气连接网络表;
◆强大的全局编辑功能;
◆在原理图中选择一级器件,PCB中同样的器件也将被选中;
◆同时运行原理图和PCB,在打开的原理图和PCB图间允许双向交叉查找元器件、引脚、网络
◆既可以进行正向注释元器件标号(由原理图到PCB),也可以进行反向注释(由PCB到原理图),以保持电气原理图和PCB在设计上的一致性;
◆满足国际化设计要求(包括国标标题栏输出,GB4728国标库);*方便易用的数模混合仿真(兼容SPICE3f5);
◆支持用CUPL语言和原理图设计PLD,生成标准的JED下载文件;*PCB可设计32个信号层,16个电源-地层和16个机加工层;
◆强大的“规则驱动”设计环境,符合在线的和批处理的设计规则检查;
◆智能覆铜功能,覆铀可以自动重铺;
◆提供大量的工业化标准电路板做为设计模版;
◆放置汉字功能;
◆可以输入和输出DXF、DWG格式文件,实现和AutoCAD等软件的数据交换;
◆智能封装导航(对于建立复杂的PGA、BGA封装很有用);
◆方便的打印预览功能,不用修改PCB文件就可以直接控制打印结果;
◆独特的3D显示可以在制板之前看到装配事物的效果;
◆强大的CAM处理使您轻松实现输出光绘文件、材料清单、钻孔文件、贴片机文件、测试点报告等;
◆经过充分验证的传输线特性和仿真精确计算的算法,信号完整性分析直接从PCB启动;
◆反射和串扰仿真的波形显示结果与便利的测量工具相结合。
3.2.3设计环境
Protel99SE程序提供了一个设计、管理的整合环境,它有三个特点:
1.将所有设计环境集合在一个用户界面中,包括:
电路图编辑器、混合信号电路仿真器、PLD编译器、印刷电路板编辑器等;
2.所有的设计文件集合在一个设计库文件文件(*ddb)中,包括电路图、印刷电路板图文件、元件库文件以及元件报表(BOM);
3.能管理其他用户使用自己项目中的文件,也就是让多个设计者通过网络对同一设计进行单独设计,再通过工作组管理功能将各个部分集成到设计管理器中。
在此次的毕业设计中,整个电路图的设计是基于Protel99SE的开发环境,它具有简单、方便、快速的特点,在设计中起到了重要的作用。
3.2.4电路原理图设计流程
电路原理图设计不仅是整个电路设计的第一步,也是电路设计的根本。
由于后面的印刷电路板设计等工作都是以此为基础的,因此电路原理图设计的好坏直接影响到印刷电路板设计等工作,其设计流程如图3-13所示。
图3-13电路原理图设计流程
3.2.5protel基本操作
1新建一个设计库
(1)启动Protel99,出现以下启动界面,如图3-14所示,启动后出现的窗口如下图3-15所示。
图3-14 启动界面
图3-15 启动后的窗口
(2)选取菜单File/New来新建一个设计库,出现如下图3-16对话框。
DatabaseFileName处可输入设计库存盘文件名,点击Browse...改变存盘目录。
如果想用口令保护设计文件,可点击Password选项卡,再选Yes并输入口令,点击OK按钮后,出现如图3-17主设计窗口。
图3-16 新建设计库对话框
图3-17 主设计窗口
(3)选取File/New...打开NewDocument对话框,如图3-18,选取SchematicDocument建立一个新的原理图文档。
图3-18 新建文档对话框
2添加元件库
在放置元件之前,必须先将该元件所在的元件库载入内存才行。
如果一次载入过多的元件库,将会占用较多的系统资源,同时也会降低应用程序的执行效率。
所以,通常只载入必要而常用的元件库,其它特殊的元件库当需要时再载入。
添加元件库的步骤如下:
(1)双击设计管理器中的Sheet1.Sch原理图文档图标,打开原理图编辑器。
(2)点击设计管理器中的BrowseSch选项
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 51 单片机 数字 温湿度 设计 实现 毕业论文
![提示](https://static.bingdoc.com/images/bang_tan.gif)