51单片机控制并显示室内温湿度
更新时间:2024-01-23 19:23:01 阅读量: 教育文库 文档下载
- 单片机控制数码管显示推荐度:
- 相关推荐
南京工程学院毕业设计说明书(论文)
摘 要
温湿度在生产生活中起着越来越重要的作用,在生活生产中常用温湿度作为主要被控参数。温湿度是一个基本的物理量,几乎所有的科研和生产过程都和温湿度密切相关。因而,准确地测量和控制温湿度,对于获得正确的科研数据和保证产品质量都是十分重要的。
而目前很多室内的温湿度还依然靠开关门窗来调节,这种方法不仅费时费力,效率低,准确度也不高,随机性大,当然也就不够科学。因此,需要研制一种结构简单、价格低廉的测控系统来达到自动调节温湿度的目的。
本课题采用AT89C52做为核心芯片,通过单片机发送指令DHT11对
现场进行温湿度采集,并将采集到的温湿度传输给单片机,单片机对得到的数字量温湿度值进行处理,利用LED动态的显示测量的温湿度,同时可以用按键设定理想的温湿度值,通过对设定温湿度和现场温湿度的比较,利用单片机控制现场进行“加热加湿”或“制冷干燥”等处理,使得温湿度保持在一定的范围之内。
关键词 :单片机、温湿度控制、DHT11
- 1 -
南京工程学院毕业设计说明书(论文)
ABSTRACT
In production life temperature and humidity plays a more and more important role, production as the main accused in the common parameters of the temperature and humidity. temperature and humidity is a basic physical quantity, almost all of the research and production process and temperature and humidity. Thus, to accurately measure and control temperature and humidity, for the correct scientific data and ensure product quality are very important.
At present a lot of storage temperature and humidity are still yet to adjust by switchingwindows and doors,this method not only time consuming, inefficient, accuracy is not high, random big, of course, also not scientific enough. Therefore, the need to develop a simple,inexpensive monitoring system to automatically adjust the temperature and humidity to achieve the purpose.
As the core of the issue using AT89C52 chips ,Through the SCM to send commands DHT11 collecting temperature and humidity on the scene, and collected temperature and humidity transfer to the SCM, SCM on the temperature and humidity are the digital values for processing, LED dynamic display using temperature and humidity measurements, keys can also set the ideal temperature and humidity values. Set the temperature and humidity and on.site comparison of temperature and humidity.SCM site using \ heat\ng dry \and other processing, making thetemperature is kept within a certain range.
Key words: SCM, temperature control, DHT11
- 2 -
南京工程学院毕业设计说明书(论文)
目录
摘要 ...................................................................... 1 第一章 绪论 .............................................................. 5 1.1选题背景 ........................................................... 5 1.2选题意义 ........................................................... 5 1.3研究任务 ........................................................... 6 1.4研究思路 ........................................................... 7 1.5论文结构 ........................................................... 7
第二章 系统的硬件电路设计 ................................................. 9 2.1系统硬件电路构成 .................................................... 9 2.2主控电路设计 ....................................................... 10 2.2.1 AT89C52 ....................................................... 10 2.2.2 晶振 .......................................................... 12 2.2.3 电路图设计环境 ................................................ 13 2.2.4 PROTEL DXP简介 ................................................ 13 2.2.5 设计理念 ...................................................... 13 2.2.6 元件硬件 ...................................................... 14 2.2.7 作图流程 ...................................................... 17 2.3显示电路设计 ....................................................... 17 2.4复位电路计...............................................................................................................................19 2.5按键电路设计 ....................................................... 19 2.6控制电路设计 ....................................................... 19 2.7检测电路设计 ....................................................... 20 2.7.1传感器性能说明 ................................................. 22 2.7.2 接口说明 ...................................................... 23 2.7.3 电源引脚 ...................................................... 24 2.7.4 串行接口 ...................................................... 24 2.7.5 测量分辨率 .................................................... 26 2.7.6 应用信息 ...................................................... 26 2.7.7 电气特性 ...................................................... 26 2.7.8 DHT11引脚说明 ................................................. 27
第三章 软件设计与编程 .................................................... 28 3.1 单片机C语言....................................................... 28 3.2 KEIL C51开发环境 .................................................. 29
- 3 -
南京工程学院毕业设计说明书(论文)
3.3系统的主程序设计 ................................................... 35 3.3.1按键说明 ....................................................... 35 3.3.2 编程流程 ...................................................... 36 3.3.3 程序内容 ...................................................... 36
第四章 结论 .............................................................. 39 4.1 总结 ............................................................. 39 4.2 设计特色与创新 ................................................... 39 4.3 感想心得 ......................................................... 40
致谢 ..................................................................... 41
参考文献 ................................................................. 42
附录A 硬件设计原理图 .................................................... 43
附录B 硬件设计PCB图 .................................................... 45
附录C 实物零件分布 ...................................................... 46
附录D 源程序 ............................................................ 47
附录B 英文资料 .......................................................... 57
附录B 外文资料译文 ...................................................... 65
- 4 -
南京工程学院毕业设计说明书(论文)
第一章 绪 论
1.1 选题背景
在人类生活环境中,温湿度扮演着极其重要的角色,人类身体的舒适感就与这两个量息息相关。无论你生活在哪里,从事什么工作,无时无刻不在于温湿度打交道。温湿度的变化给我们的生活、工作、生产等带来重大的影响,因此对温湿度的测量至关重要。测量温湿度的基本方法是使用温湿度计直接测取温湿度,但这种测量有许多弊端。利用单片机和温湿度传感器构成的电子式智能温湿度计就可以直接测量温湿度,得到温湿度的数值并显示出来,既简单方便,有直观准确。
单片机以其功能强、体积小、可靠性高、造价低和开发周期短等优点,为自动化和各个测控领域中广泛应用的器件。特别是采用单片机来对温湿度进行控制,不仅具有控制方便、简单和灵活性大、高精度等优点,而且可以大幅度提高被控温湿度的技术指标,从而能够大大提高产品的质量和数量。尤其在当前节能降耗的大背景下,通过对温湿度进行测量、监控可以改善各种设备和系统的能源消耗不合理的状况,减少能源的浪费。随着科技的进步及发展,温湿度传感器就有测量精度高、功能多样化等特点。而温湿度传感器正从原有的模拟化、集成化朝着数字化,智能化方向跨越式发展。伴随着“温室效应”的发展,相信温湿度控制的作用将会越加明显[1]。
温湿度传感器的发展趋势。
进入21世纪后,温湿度传感器正朝着高精度、多功能、总线标准化、高可靠性及安全性研制单片测温系统等高科技的方向迅速发展。目前市场主要存在模拟和数字两种温湿度传感器。在不同场合各有优点。本课题中考虑到成本和精度的适中,所以选择了DHT11数字温湿度传感器。
1.2 选题意义
- 5 -
南京工程学院毕业设计说明书(论文)
随着单片机和传感技术的快速发展,自动测控系统也随着有了长足的发展,并逐步取代传统温湿度控制。DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器。它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性与卓越的长期稳定性。该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。广泛应用于医疗,温湿度调节器,自动控制等领域。
这种设计采用单片机最小系统,配合上DHT11的数字式,实现了温湿度实时测量、显示和控制。利用此设计实现了抗干扰能力强,测量精度高等优点,不需要任何固定网络的支持,安装简单方便,性价比高,并且可维护性好,实现对温湿度的实时控制。
1.3 研究任务
本次毕业设计课题是基于单片机室内温湿度湿度的检测与控制系统的设计,主要完成控制电路的硬件设计安装、元器件的选择、软件程序的编写等。
具体研究内容如下:
1、控制器总体功能的设计; 2、控制器主机电路设计; 3、LED显示及按键电路设计;
4、单片机与数字温湿度传感器DHT11的连接及温湿度采集; 5、元器件的选择; 6、电路板图设计; 具体研究目标:
1、利用一个单片机能够进行温湿度的测量与控制; 2、高精度;
3、反应迅速,便于更改; 4、功能完善;
(a)系统能通过多个按键组合使用来设定并保存预设外部设备的启动与关闭温湿度。
- 6 -
南京工程学院毕业设计说明书(论文)
(b)预置外部通讯端口,便于功能扩展。
1.4 研究思路
系统的整体设计方案如图1.1所示。在系统的整体设计中,以AT89C52为控制核心,实现温湿度的恒温、恒湿和自动控制。整体系统中的前级为信号传感。放大和采集电路,后级为功率控制电路;还可以通过按键进行初步的系统温湿度设定,系统对加载在制冷芯片两端的正弦波进行控制。
图1.1 系统的整体设计方案
1.5 论文结构
论文主要包括4个部分:
第一章, 绪论:介绍本次毕业设计的背景、意义、任务及思路。 第二章, 系统硬件电路设计:介绍本次系统的原理、所用个模
块结构和功能。
第三章, 原理图的绘制与编程:介绍绘图工具的使用方法
- 7 -
南京工程学院毕业设计说明书(论文)
第四章, 结论:对本次毕业设计给予总结,展望本次设计的未
来发展趋势,提出进一步研究的方向。
- 8 -
南京工程学院毕业设计说明书(论文)
第二章 系统硬件电路的设计
2.1 系统硬件电路的构成
本设计利用单片机作为技术核心,以数字温湿度传感器DHT11
作为元件,设计成温湿度的采集、处理、显示、自动控制的控制系统。智能温湿度传感器DHT11既能对温湿度进行测量,方便又易于显示。由于该温湿度控制采用数字输出形式,因此不需要转换器。单片机主要是对温湿度传感器DHT11进行编程,由于AT89C52系列单片机与一系列单片机兼容,所以,本系统中预留通讯端口可以把数据送到计算机,起到传输数据的作用。系统还有数码管显示电路、按键电路等构成。
本系统共包括六部分:主控电路、控制电路、按键电路、复位电路、显示电路及检测电路。系统的总体结构如图2.1所示。
图2.1 系统的总体结构
- 9 -
南京工程学院毕业设计说明书(论文)
2.2 主控电路设计
此部分由AT89C52、12MHz晶体振荡器和电阻等元件构成。AT89C52单片机具有CPU系统、存储器系统及I/O口和其他功能单元。
如图2.2 所示
图 2.2 晶振电路
2.2.1 AT89C52
AT89C52是美国ATMEL公司生产的低电压、高性能CMOS 8位单片机, 片内含8k bytes的可反复擦写的只读程序存储器(EPROM)和256bytes的随机数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS.51指令系统,内置通用8位中央处理器(CPU)和Flash存储单元,内部集成了微处理器、RAM、ROM、I/O接口、定时/
计数器等,再加上中断单元,功能强大的AT89C52单片机可灵活应用于各种控制领域。
①AT89C52的特点
·AT89C52与MCS.51系列单片机在指令系统和引脚上完全兼容; ·片内有8K字节在线可重复编程快擦写程序存储器; ·全静态工作,工作范围:0Hz~24MHz; ·256×8位内部RAM; ·32位双向输入输出线;
- 10 -
南京工程学院毕业设计说明书(论文)
·8个中断源;
·一个全双工的异步串行口; ·间歇和掉电工作模式。 ②AT89C52的功能描述
AT89C52是一种低损耗、高性能、CMOS八位微处理器,片内有4k字节的在线可重复编程,快速擦除快速写入程序的存储器,能重复写入/擦除1000次。它与MCS.51系列单片机在指令系统和引脚上完全兼容,不仅可完全代替MCS.51系列单片机,而且能使系统有许多MCS.51系列产品没有的功能。
AT89C51可构成真正的单片机最小应用系统,缩小系统体积,增加系统的可靠性,降低系统的成本。只要程序长度小于8K,4个I/O口全部提供给用户。可用5V电压编程,而且擦写时间仅需10毫秒,仅为8751/87C51的擦写时间的百分之一,与8751/87C51的12V电压擦写相比,不易损坏器件,没有两种电源的要求,改写是不拔下芯片,适合许多嵌入式控制领域。工作频率宽在0Hz~24Hz之间,比8751/87C51等51系列的6Hz~12Hz更具有灵活性,系统能快能慢。AT89C52芯片提供三级程序存储加密,提供了方便灵活而可靠的硬加密手段,能完全保证程序或系统不被仿制。P0口是三态双向口,通称数据总线口,因为只有该口能直接用于对外部存储器的读/写。
③AT89C52引脚 如图2.3所示
- 11 -
南京工程学院毕业设计说明书(论文)
图2.3 AT89C52引脚
2.2.2 晶振(如图2.4)
图2.4晶振实体图
晶振全称为晶体振荡器,其作用在于产生原始的时钟频率,这个频率经过频率发生器的放大或缩小后就成了电脑中各种不同的总线频率。以声卡为例,要实现对模拟信号44.1kHz或48kHz的采样,频率发生器就必须提供一个44.1kHz或48kHz的时钟频率。如果需要对这两种音频同时支持的话,声卡就需要有两颗晶振。但是娱乐级声卡为了降低成本,通常都采用SRC将输出的采样频率固定在48kHz,但是SRC会对音质带来损害,而且现在的娱乐级声卡都没有很好地解决这个问题。 晶振一般叫做晶体谐振器,是一种机电器件,
- 12 -
南京工程学院毕业设计说明书(论文)
是用电损耗很小的石英晶体经精密切割磨削并镀上电极焊上引线做成。这种晶体有一个很重要的特性,如果给它通电,它就会产生机械振荡,反之,如果给它机械力,它又会产生电,这种特性叫机电效应。他们有一个很重要的特点,其振荡频率与他们的形状,材料,切割方向等密切相关。由于石英晶体化学性能非常稳定,热膨胀系数非常小,其振荡频率也非常稳定,由于控制几何尺寸可以做到很精密,因此,其谐振频率也很准确。根据石英晶体的机电效应,我们可以把它等效为一个电磁振荡回路,即谐振回路。他们的机电效应是机.电.机.电..的不断转换,由电感和电容组成的谐振回路是电场.磁场的不断转换。在电路中的应用实际上是把它当作一个高Q值的电磁谐振回路。由于石英晶体的损耗非常小,即Q值非常高,做振荡器用时,可以产生非常稳定的振荡,作滤波器用,可以获得非常稳定和陡削的带通或带阻曲线。
2.2.3 电路图设计环境
本课题使用了Altium Designer作为电路图设计软件。 Altium公司作为EDA领域里的一个领先公司,在原来Protel 99SE的基础上,应用最先进的软件设计方法,率先推出了一款基于Windows2000和Windows XP操作系统的EDA设计软件Protel DXP。
2.2.4 Protel DXP简介
Protel DXP在前版本的基础上增加了许多新的功能。新的可定制设计环境功能包括双显示器支持,可固定、浮动以及弹出面板,强大的过滤和对象定位功能及增强的用户界面等。Protel DXP是第一个将所有设计工具集于一身的板级设计系统,电子设计者从最初的项目模块规划到最终形成生产数据都可以按照自己的设计方式实现。Protel DXP运行在优化的设计浏览器平台上,并且具备当今所有先进的设计特点,能够处理各种复杂的PCB设计过程。通过设计输入仿真、PCB绘制编辑、拓扑自动布线、信号完整性分析和设计输出等技术融合,Protel DXP提供了全面的设计解决方案[4]。
2.2.5 设计理念
- 13 -
南京工程学院毕业设计说明书(论文)
Protel DXP2004是Altium公司于2004年推出的最新版本的电路设计软件,该软件能实现从概念设计,顶层设计直到输出生产数据以及这之间的所有分析验证和设计数据的管理。当前比较流行的Protel 98、Protel 99 SE,就是它的前期版本。
Protel DXP 2004已不是单纯的PCB(印制电路板)设计工具,而是由多个模块组成的系统工具,分别是SCH(原理图)设计、SCH(原理图)仿真、PCB(印制电路板)设计、Auto Router(自动布线器)和FPGA设计等,覆盖了以PCB为核心的整个物理设计。该软件将项目管理方式、原理图和PCB图的双向同步技术、多通道设计、拓朴自动布线以及电路仿真等技术结合在一起,为电路设计提供了强大的支持。
与较早的版本——Protel99相比,Protel DXP 2004不仅在外观上显得更加豪华、人性化,而且极大地强化了电路设计的同步化,同时整合了VHDL和FPGA设计系统,其功能大大加强了。
2.2.6 元件硬件
1. 整合式的元件与元件库
在Protel DXP 2004中采用整合式的元件,在一个元件里连结了元件符号(Symbol)、元件包装(Footprint)、SPICE元件模型(电路仿真所使用的)、SI元件模型(电路板信号分析所使用的)。 2. 版本控制
可直接由Protel设计管理器转换到其他设计系统,这样设计者可方便地将Protel DXP 2004中的设计与其他软件共享。如可以输入和输出DXP、DWG格式文件,实现和Auto CAD等软件的数据交换,也可以输出格式为Hyperlynx的文件,用于板级信号仿真。 3. 多重组态的设计
Protel DXP 2004支持单一设计多重组态。对于同一个设计文件可指定要使用其中的某些元件或不使用其中的某些元件,然后产生网络表等文件。 4. 重复式设计
- 14 -
南京工程学院毕业设计说明书(论文)
Protel DXP 2004提供重复式设计,类似重复层次式电路设计,只要设计其中一部分电路图,即可以多次使用该电路图,就象有很多相同电路图一样。这项功能也支持电路板设计,包括由电路板反标注到电路图。 5. 新的文件管理模式
Protel DXP 2004提供三种文件管理模式。可将各文件存入入单一数据库文件,即Protel 99SE的ddb,也可以存为Windows文件,即一般的分离文件,而不需要数据库管理系统(ODBC),就可以存取该文件,此外新增了一个混合模式,也就是在数据库外存为独立的Windows文件[5]。 6. 多屏幕显示模式
对于同一个文件,设计者可打开多个窗口在不同的屏幕上显示。 7. 设计整合
Protel DXP 2004强化了Schematic和PCB板的双向同步设计功能。
8. 超强的比较功能
Protel DXP 2004新增了超强的比较功能,能对两个相同格式的文件进行比较,以得到其版本的差异性,也可以对不同格式的文件进行比较,例如电路板文件与网络报表文件等。 9. 强化的变更设计功能
在Protel DXP 2004中,进行比较后,所产生的报表文件可作为变更设计的依据,让设计完全同步。 10. 可定义电路板设计规则
在原理图设计时,定义电路板设计规则是非常实际的。虽在先前版本的Schematic中就已提供定义电路板的功能,可是都没有实际的作用。而在Protel DXP中落实了这项功能,让用户能在画电路图时就定义设计规则。 11. 强化设计验证
在Protel DXP 2004中强化了设计验证的功能,让电路图与电路板之间的转换更准确,同时对交互参考的操作也更容易。
- 15 -
南京工程学院毕业设计说明书(论文)
12. 设计者可定义元件与参数
Protel DXP 2004提供了无限制的设计者定义元件及元件引脚参数,所定义的参数能存入元件及原理图里。 13. 尺寸线工具
Protel DXP 2004提供了一组超强的画尺寸线工具,在移动时会自动修正尺寸,这对于PCB中一些层的定义有很大的帮助。 14. 改善加强板层分割功能
Protel DXP 2004提供了加强的板层分割功能,对于板层的分割自动以不同颜色来表示,让设计者更容易辨别与管理。 15. 加强焊点堆栈的定义
Protel DXP 2004板增强了焊点堆栈的定义与管理,设计者可以存储所定义的焊点堆栈以供日后再使用。 16. 改良焊点连接线
Protel DXP 2004提供自动修剪焊点连接线的功能,使自动布线后焊点连接更恰当。 17. 波形资料的输出与输入
在Protel DXP 2004中可将仿真波形上各种资料输出为电子表格格式,以供其他程序的使用,也可以输入其他程序所产生的波形资料。
18. 加强绘图功能
Protel DXP 2004增强了波形窗口的绘图功能,例如放置标题栏、标记画线等,同时Windows的编辑功能在此也可以应用。 19. 不同波形的重叠
设计者可以将不同的波形放置在一起,也可以同时使用多个不同的Y轴坐标。
20. 直接在电路板里分析
设计者可以直接在PCB编辑器里进行信号分析,这样信号分析更加方便。 21. 强化模型整合
- 16 -
南京工程学院毕业设计说明书(论文)
在Protel DXP 2004中提供了高速整合的元件,元件包括信号分析的模型(SI Model),设计者不必再为元件问题而烦恼了[8]。
2.2.7 作图流程
绘制原理图(如图2.5所示).....﹥电气特性检查.....﹥购买元器件.....﹥绘制元器件
封装.....﹥更新PCB文件.....﹥自动/手工布线.....﹥委托工厂加工 .....﹥焊接并调试项目[8]
图2.5 总原理图
- 17 -
南京工程学院毕业设计说明书(论文)
2.3 显示电路设计
共阴 LED数码管作为温湿度显示。本系统采用动态显示方式,4个
数码管由位控制依次轮流显示,同一时刻只有一个数码管显示数字,其余三个灭,快速地轮流显示。由于存在视觉暂留现象,感觉上如同4个数码管同时显示不同的数字。
如图2.6所示。
图2.6 显示电路设计
- 18 -
南京工程学院毕业设计说明书(论文)
2.4 复位电路设计
复位电路图如图2.7所示。
图2.7 复位电路图
2.5 按键电路设计
利用组合按键控制,具体组合根据程序而定。程序见附录B。
2.6 控制电路设计
当温湿度超过上下限时,通过继电器对温湿度进行反馈控制,继电器和单片机 的P1.5,P1.6口进行通讯。
控制电路如图2.8所示
- 19 -
南京工程学院毕业设计说明书(论文)
图2.8 控制电路
2.7 检测电路设计
温湿度传感器是本系统的重要组成部分,采用数字温湿度传感 DHT11.DHT11 数字温湿度是一款含有已校准数字信号输出的温湿度复合传感器。
它应用专用的数字模块采集技术和温湿度传感技术 ,确保产品具有极高的 可靠性与卓越的长期稳定性。传感器包括一个电阻式感湿元件和一个NTC 测温元件,并与一个 高性能 8 位单片机相 连接。因此该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。每个 DHT11 传感器都在极为精确的湿度校验室中进行校准。校准系数以程序的形式储存在 OTP内存中,传感器内部在检测信号的处理过程中要调用这些校准系数。单线制串行接口,使系统集成变得简易快捷。超小的体积、极低的功耗,信号传输距离可
- 20 -
南京工程学院毕业设计说明书(论文)
达 20 米以上,使其成为各类应用甚至最为苛刻的应用场合的最佳选则。产品 为 4 针单排引脚封装。连接方便,特殊封装形式可根据用户需求而提供。 检测电路如图2.9
图2.9 检测电路
- 21 -
南京工程学院毕业设计说明书(论文)
2.7.1 传感器性能说明[9]
实物图如图2.10所示
图2.10 DHT11实物图
图2.11 DHT11传感器整体尺寸图
- 22 -
南京工程学院毕业设计说明书(论文)
DHT11传感器性能见表2.2 表2.2 传感器性能
\\
2.7.2 接口说明
建议连接线长度短于 20 米时用 5K 上拉电阻 , 大于 20 米时根据实际情况使用合适的上拉电阻,如图2.9。
图2.12 DHT11接口图
- 23 -
南京工程学院毕业设计说明书(论文)
2.7.3 电源引脚
DHT11的供电电压为3.3-5.5V。传感器上电后,要等待1s以越过不稳定状态在此期间无需发送任何指令,电源引脚NDD,GND)之间可增加一个100nF的电容,用以去拙滤波。
2.7.4 串行接口
DATA用于微处理器与DHT11之间的通讯和同步,采用单总线数据传输 格式,一次通讯时间4ms左右,数据分小数部分和整数部分,具体格式在下而说明,当前小数部分用于以后扩展,现读出为零.操作流程如图2.10.2.:
图2.13 通讯过程
图 2.14 数字0信号表示方法
- 24 -
南京工程学院毕业设计说明书(论文)
图 2.15 数字1信号表示方法
2.7.5 测量分辨率
测量分辨率分别为8bit(温湿度)、8bit(湿度)。
2.7.6 应用信息 2.7.6.1 工作与贮存条件
超出建议的工作范围可能导致高达3%RH的临时性漂移信号。返回正常工
作条后,传感器会缓慢地向校准状态恢复。要加速恢复进程可参阅7. 3小节的“恢复处理”。在非正常工作条件下长时间使用会加速产品的老化过程。
2.7.6.2 暴露在化学物质中
电阻式湿度传感器的感应层会受到化学蒸汽的干扰,化学物质在感应层中
的扩散可能导致测量值漂移和灵敏度下降。在一个纯净的环境中,污染物质镊慢慢地释放出去。下文所述的恢复处理将加速实现这一过程。高浓度的化学污染导致传感器感应尽的彻底揭坏。
2.7.6.3 恢复处理
置于极限工作条件下或化学蒸汽中的传感器,通过如下处理程序,可使其恢复到校准时的状态。在50.60 0C和<10%RH的湿度条件下保持2小时(烘干);随后在20.30 0C和>70%RH的湿度条件下保持5小时以上。
2.7.6.4 温度影响
- 25 -
南京工程学院毕业设计说明书(论文)
气体的相对湿度,在很大程度上依赖于温度。因此在测量湿度时,应尽可能保证湿度传感器在同一温度下工作。如果与释放热量的电子元件共用一个印趾路板,在安装时应尽可能将DHT11远离电子元件,并安装在热源下方,同时保持外壳的良好通风。为降低热传导,DHT11与印刷电路板其它部分的铜镀层应尽可能最小,并在两者之间留出一道缝隙。
2.7.6.5 光线
长时间暴露在太阳光下或强烈的紫外线辐射中,会使性能降低。
2.7.6.6 配线注意事项
DATA信号线材质量会影响通讯距离和通讯质量,推荐使用高质量屏蔽线。
2.7.7 电气特性 电气特性见表2.2
表2.2 电气特性
- 26 -
南京工程学院毕业设计说明书(论文)
2.7.8 DHT11引脚说明
引脚特性见表2.3
表2.3 DHT11 引脚说明
- 27 -
南京工程学院毕业设计说明书(论文)
第三章 软件设计与编程
3.1 单片机的 C语言
单片机的 C语言是一种编译型程序设计语言,它兼顾了多种高级语言的特点,并具备汇编语言的功能。C语言具有功能丰富的库函数,运算速度快,编译效率高,有良好的可移植性,而且可以实现直接对系统硬件的控制。此外,C语言程序具有完整的程序模块结构,从而为软件开发中采用模块化程序设计方法提供了有力的保障。与汇编相比,有如下优点[2]:
(1)对单片机的指令系统不要求了解,仅要求对 51的存储器结构有初步了解,至于寄存器分配、不同存储器的寻址及数据类型等细节均由编译器管理。
(2)程序有规范的结构,可分为不同的函数。这种方式可使程序结构化,将可变的选择与特殊操作组合在一起,改善了程序的可读性。
(3)编程及程序调试时间显著缩短,从而提高效率。 提供的库包含许多标准子程序,具有较强的数据处理能将已编好程序可容易的植入新程序,因为它具有方便的模块化编程技术。 单片机 C语言作为一种非常方便的语言而得到广泛的支持,C语言程序本身并不依赖于机器硬件系统,基本上不做修改就可根据单片机的不同较快地移植过来。 综上所述,单片机的四种编程语言各有各的优缺点,作为单片机初学者,笔者认为还是应该先学习汇编语言,不一定要学得很精很熟悉,但要有一定的了解。因为汇编语言程序除了具有简洁明快、跳跃性强、占 ROM资源少等优点以外,还因它和单片机底层硬件紧密联系,可以让初学者更加了解单片机硬件系统各种资源,熟悉各个功能模块的作用,从而为编出更高效率的程序打好扎实的基础。 用单片机汇编语言编写的程序代码效率高,但学习起来相对
- 28 -
南京工程学院毕业设计说明书(论文)
难度较大,而且对于一个大型项目,如果完全采用汇编语言来编程,就显得很繁琐,尤其是遇到算法方面的问题时,汇编语言根本就应付不了。况且现在单片机的主频在不断的提高,在高频率时钟的作用下,我们完全不需要那么高效率的代码;另外,单片机的 ROM和 RAM空间也在不断的增加,足够装得下你用 C语言写的任何程序代码,单片机 C语言相关的资料又多又好找,可移植性非常好,比如只需要改变一个 IO口写个温度传感器的程序在任何一个单片机上都能使用。由此可见用单片机 C语言进行程序设计,已成为单片机软件开发的一个主流,作为一个技术全面并涉足较大规模的软件系统开发的单片机开发人员最好能够掌握基本的 C语言编程。
当然,有时候用单片机 C语言也不能够实现所有要编写程序的功能,比如当想编写一个精确控制的定时程序时,用起汇编语言来还是比较方便的。因此想成为一个优秀的单片机编程技术员,最好就是能懂得单片机 C语言和汇编语言的混合编程。
3.2 KEIL C51开发环境
第一部分 8051开发工具
KEILC51标准C编译器为8051微控制器的软件开发提供了C语言环境,同时保留了汇编代码高效,快速的特点。C51编译器的功能不断增强,使你可以更加贴近CPU本身,及其它的衍生产品。C51已被完全集成到uVision2的集成开发环境中,这个集成开发环境包含:编译器,汇编器,实时操作系统,项目管理器,调试器。uVision2 IDE可为它们提供单一而灵活的开发环境。C51 V7版本是目前最高效、灵活的8051开发平台。它可以支持所有8051的衍生产品,也可以支持所有兼容的仿真器,同时支持其它第三方开发工具。因此,C51 V7版本无疑是8051开发用户的最佳选择[6]。 第二部分 uVision2集成开发环境
一、项目管理
工程(project)是由源文件、开发工具选项以及编程说明三部分组成的。 一个单一的uVision2工程能够产生一个或多个目标程序。
- 29 -
南京工程学院毕业设计说明书(论文)
产生目标程序的源文件构成“组”。开发工具选项可以对应目标,组或单个文件。uVision2包含一个器件数据库(device database),可以自动设置汇编器、编译器、连接定位器及调试器选项,来满足用户充分利用特定微控制器的要求。此数据库包含:片上存储器和外围设备的信息,扩展数据指针(extra data pointer)或者加速器(math accelerator)的特性。uVision2可以为片外存储器产生必要的连接选项:确定起始地址和规模。
二、集成功能
uVision2的强大功能有助于用户按期完工。
1.集成源极浏览器利用符号数据库使用户可以快速浏览源文件。用详细的符号信息来优化用户变数存储器。
2.文件寻找功能:在特定文件中执行全局文件搜索。 3.工具菜单:允许在V2集成开发环境下启动用户功能。 4.可配置SVCS接口:提供对版本控制系统的入口。 5.PC-LINT接口:对应用程序代码进行深层语法分析。 6.Infineon的EasyCase接口:集成块集代码产生。
7.Infineon的DAVE功能:协助用户的CPU和外部程序。DAVE工程可被直接输入uVision2 第三部分 编辑器和调试器
一、源代码编辑器
uVision2编辑器包含了所有用户熟悉的特性。彩色语法显像和文件辩识都对C源代码进行和优化。可以在编辑器内调试程序,它能提供一种自然的调试环境,使你更快速地检查和修改程序。
二、断点
uVision2允许用户在编辑时设置程序断点(甚至在源代码未经编译和汇编之前)。用户启动V2调试器之后,断点即被激活。断点可设置为条件表达式,变量或存储器访问,断点被触发后,调试器命令或调试功能即可执行。在属性框(attributes column)中可以快速浏览断点设置情况和源程序行的位置。代码覆盖率信息可以让你区分程序中已执行和未执行的部分。
- 30 -
南京工程学院毕业设计说明书(论文)
三、调试函数语言
uVision2中,你可以编写或使用类似C的数语言进行调试。 1.内部函数:如printf, memset, rand及其它功能的函数。 2.信号函数:模拟产生CPU的模拟信号和脉冲信号(simulate analog and digital inputs to CPU)。
3.用户函数:扩展指令范围,合并重复动作。 四、变量和存储器
用户可以在编辑器中选中变呈来观察其取值。双层窗口显示,可进行以下调整:
1.当前函数的局部变量
2.用户在两个不同watch窗口页面上的自定义变量
3.堆栈调用(call stack)页面上的调用记录(树)(call tree) 4.不同格式的四个存储区 第四部分 C51编译器
KEIL C51编译器在遵循ANSI标准的同时,为8051微控制器系列特别设计。语言上的扩展能让用户使用应用中的所有资源。
一、存储器和特殊功能寄存器的存取
C51编译器可以实现对8051系列所有资源的操作。SFR的存取由sfr和sbit两个关键字来提供。变量可旋转到任一个地址空间。用关键字-at还能把变量放入固定的存储器.存储模式(大,中,小)决定了变量的存储类型。连接定位器支持的代码区可达32个,这就允许用户在原有64K ROM的8015基础上扩展程序。在V2的编译器和许多高性能仿真器中,可以支持应用程序的调试。
二、中断功能
C51允许用户使用C语言编写中断服务程序,快速进、出代码和寄存器区的转换功能使C语言中断功能更加高效。
可再入功能是用关键字来定义的。多任务,中断或非中断的代码要求必须具备可再入功能。
三、灵活的指针
C51提供了灵活高效的指针。
- 31 -
南京工程学院毕业设计说明书(论文)
通用指针用3个字节来存储存储器类型及目标地址,可以在8051的任意存储区内存取任何变量。特殊指针在声明的同时已指定了存储器类型,指向某一特定的存储区域。由于地址的存储只需1-2字节,因此,指针存取非常迅速。 第五部分代码优化
一、通用代码优化
1.常量重叠(constant folding)
2.通用子表达式删除(common subexpression elimination) 3.长度缩减速(reduction)
4.控制流优化(control flow optimization) 5.寄存器变量使用(register variable usage)
6.寄存器间参数传递(parameter passing in register) 7.循环(loop rotation)
8.死码删除(dead code elimination) 9.通用Tail Merging
10.通用子程序块打包(block subroutine packing) 二、8051特殊优化
1.孔颈优化(peephole optimization)
2.跳转-分支优化(switch.case optimization) 3.中断函数优化(interrupt function optimization) 4.数字覆盖(overlaying)
5.扩展入口优化(extended access optimization) 三、寄存器优化
C51为函数参数和局域变量分配了9个CPU寄存器。寄存器间最多可传递三个参数。P全局寄存器优化可删除不必要代码,优化CPU寄存器设备。
四、C语言实时库
C51实时库含100多种功能,其中大多数是可再入的。库支持所有的ANSI C的程序,与嵌入式应用程序的限制相符。 固有程序为硬件提供特殊指令,如:nop, testbit, rol, ror。
- 32 -
南京工程学院毕业设计说明书(论文)
五,A51宏汇编
A51宏汇编支持标准宏和MPL宏。要实现快速产生汇编程序SHELL,就直接使用C51编译器的SRC。在新的A51 V7版本中,允许用户C包含的头文件来定义常量和SFR。如今,一个单一头文件可被应用到X程序和汇编程序中。 第六部分 RTX51实时核模块
TX51多任务实时内核可以简化那些过程复杂,时间紧迫的软件项目。RTX51是无版税的,完全集成到KeilC51工具链上,支持C语言和汇 编语言程序,也完全支持代码区的应用程序。RTX51完全支持:
1.标准任务(用一个共享寄存器区) 2.快速任务(用一个专用寄存器区) 3.CAN
4.邮箱(为内部任务通信) 5.存储池(memory pools)
RTX51 Tiny是简化后的内核,适于单片机系统。
RTX51和RTX51 Tiny都可使用户创建和撤消任务,发送和接收信号,也可执行其它操作系统管理。
一、上下文切换(任务切换)
1.轮询方式:(round.robin)每个任务在一个规定的时间段内运行,当一个任务的时间段结束时,另一个任务随之开始。
2.抢占方式(preemptive):优先级最高的任务最先执行,直到被一个具有更高优先级的任务打断,或是为等待某个事件而主动放弃控制权。
二、事件与中断 RTX 51支持下列事件
1.Timeouts: 延迟到特定定时点 4.Messages: 在任务间互传信息
2.Intervals: 延迟一段时间间隔 5.Interrupts: 处理硬件中断
- 33 -
南京工程学院毕业设计说明书(论文)
3.Signals: 协调内部任务操作 6.Semaphores: 共享有限资源RTX51同时支持中断功能,可以向任务中发送或从任务中接收信号和信息。
第七部分 测试程序
uVision2调试器具备所有常规源极调试,符号调试特性以及历史跟踪,代码覆盖,复杂断点等功能.DDE界面和shift语言支持自动程序测试.
一、CPU和外设模拟装置
uVision2为8051及衍生产品提供了高速CPU模拟功能和片上扩展口.在对话框内可直接观察和修改I/O值,也可以用预装的C.LIKE宏指令书写符号函数来提供动态输入。
二、目标监控器
uVision2含一个可配置的监控器,可测试目标器件上的软件体。监控器用uVision2的调试器直接工作,可支持代码区。它要求目标系统具备6字节堆栈空间,6KB的代码ROM和256字节Xdata RAM。
三、MCB517/251启动工具包
在开始一项8051工程时,MCB启动工具会对你有很大帮助。每一个启动工具包括一套2K字节的开发工具和许多可快速运行的举例程序。用户可在检测8051性能的同时,查看开发工具的可行性。
MCB517AC板含高性能InfineonC517A单片机,它提供标准8052外围设备和A/D转换器,PWM,搜索/比较,8位数据指针,一个高速运算单元。同时包含对81C90CAN控制器和代码区的支持。
第八部分 C51 V7版增强功能介绍
C51 V7版提供了很多新的和增强的功能,使开发8051嵌入式应用比以前更加简单。C51 V7版新功能包括:新版编译器和连接器更加优化,可以缩短程序的大小; 能完全模拟支持的器件更多,如Philips 80C51MX, Dallas 80C390和Analog Devices
MicroConverters;新的ISD51系统内调试器,允许在不变的目标硬件上调试程序;可更好地支持Philips 51MX的24位地址。
- 34 -
南京工程学院毕业设计说明书(论文)
3.3 系统的主程序设计
主程序是系统的监控程序,在程序运行的过程中必须先经过初始化,包括键盘程序,中断程序,以及各个控制端口的初始化工作。流程图如图10所示。系统在初始化完成后就进入温湿度测量程序,实时的测量当前的温湿度并通过显示电路在LCD上显示。程序中以中断的方式来重新设定温湿度的上下限。根据硬件设计完成对温湿度的控制。
3.3.1 按键说明
开机按K1:进入温度设定模式
在温度设定模式下同时按K1+K2,设定温度加 在温度设定模式下同时按K1+K3,设定温度减 K4:退出并保存设定值
开机按K2:进入湿度设定模式
在湿度设定模式下同时按K2+K1,设定湿度加
在湿度设定模式下同时按K2+K3,设定湿度减(如图3.1)
图3.1 按键位置
- 35 -
南京工程学院毕业设计说明书(论文)
3.3.2 编程流程(如图3.2)
图3.2 编程流程图 3.3.3 程序内容
1. LED显示
dis_7[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
//共阴LED段码表 \
2.传感器数据采集与对比
U8temp=(U8T_data_H_temp+U8T_data_L_temp+U8RH_data_H_temp+U8RH_data_L_temp);
- 36 -
南京工程学院毕业设计说明书(论文)
if(U8temp==U8checkdata_temp) {
U8RH_data_H=U8RH_data_H_temp;
U8RH_data_L=U8RH_data_L_temp; U8T_data_H=U8T_data_H_temp; U8T_data_L=U8T_data_L_temp; U8checkdata=U8checkdata_temp; }
3.按键设定
void disp_set()
{
P2=0xfe;
P0=dis_7[set_temp2]; Delay1(50); P2=0xfd;
P0=dis_7[set_temp1]; Delay1(50); P2=0xfb;
P0=dis_7[set_humi2]; Delay1(50); P2=0xf7;
P0=dis_7[set_humi1]; Delay1(50); P2=0XFF; P0=0XFF; }
4.控制继电器
if(set_temp>U8T_data_H)
{JDQ_TEMP=0; LED_TEMP=0;}
- 37 -
南京工程学院毕业设计说明书(论文)
else
{JDQ_TEMP=1; LED_TEMP=1;} if(set_humi>U8RH_data_H) {JDQ_HUMI=0; LED_HUMI=0;} else
{JDQ_HUMI=1; LED_HUMI=1;} }
- 38 -
南京工程学院毕业设计说明书(论文)
第四章 结论
4.1 总结
本文以AT89C52单片机系统作为核心,通过分析对比各种不同的温度传感器,选定DHT11温湿度传感器,这种单总线数字温湿度传感器的通信方式比较独特,用其构建的系统有很多优点:硬件用线简单,省去了使用了模拟传感器要进行放大、A/D转换等工作,由于它的级联功能,一条总线可挂接多个传感器测量不同位置的温湿度,根据DHT11唯一的序列号识别不同传感器在各自位置的温度。
本系统对AT89C52中片机在仓库温湿度控制中的应用进行了设计研究,该系统还可力便接入其他模拟量传感器,功能扩展性好。液晶模块显示和键盘操作设置系统参数,人机交互界面好检测数据准确可靠,线性度好,降低了系统成本,增强了系统的通用性软件设计采用C语言,叫一移植性好,结构严谨,开发速度快,大大减少了软件开发的时间,具有一定的实用价值
通过本次毕业设计,对51系列单片机和DHT11温湿度传感器的硬件结构和指令系统有了进一步的了解,对单片机常用外围电子元器件进行了深层次的应用。与此同时,对画图软件Altium Designer更有深入的了解。
4.2 设计特色与创新
1.以AT89C52单片机为核心,外扩显示、键盘扫描等外部接口电路; 2.利用数字温湿度传感器代替温度和湿度传感器,简化电路。 3.采用单片机最小系统,配合DHT11数字式整个系统结构更加简单,成本低,精度高。
4.硬件设计上,保留了单片机下载的端口,可以很方便地通过ISP下载电缆更新 下位机系统软件。
- 39 -
南京工程学院毕业设计说明书(论文)
5.由于供货原因,在实际安装时用STC89C52代替了AT89C52,因为它们的特性基本相同。但是由于时间仓促,考虑到成本用覆铜板焊接了电路,而没有加工成PCB。
4.3 感想心得
四年的大学生活转瞬就将结束,而经过了对四年所学知识的整合
与运用,即将完成本次毕业设计。在不断修改,调试,总结与安装的过程中,自身的综合能力得到了考验和打磨。
在做毕业设计之前,感觉51单片机就这么小的一个内存,不可能有很大的用处。但经过做毕业设计时查资料和自己学习实验,发现我之前的想法完全是错误的。51单片机可谓是“麻雀虽小五脏俱全”,在实现繁杂的功能时,全显得轻巧简便。化繁为简可以说是我对其最深刻的理解。当我们合理的安排充分利用了那貌似不起眼的几K的存储空间后,会发现就像得到了一片小天地。再配合C语言强悍的移植性,可以让51单片机成为智能的,简便的代表。
本课题表面看来很简单,但实现起来并非如此,既要考虑接受到的信号还要迅速的做出控制。这需要合理的利用中断和时钟功能。
并且经过举一反三,为以后用其他高端的单片机打下了基础。同时通过自己的实践大大增强了动手和动脑的能力。
通过毕业设计知识得到了结晶,四年的汗水也得到了回报。
- 40 -
南京工程学院毕业设计说明书(论文)
致谢
本论文设计能够顺利的完成,得到了南京工程学院领导及教师的大力支持和帮助,尤其是我的指导教师佘勃讲师。在百忙之中抽出宝贵的休息时间,仔细耐心为我指导。论文设计过程中,佘老师帮我分析遇到的种种困难,帮我搜集材料,并在不足中提出教讳,孜孜不倦,并且十分强调我们的动手能力。佘老师治学严谨,在工作中兢兢业业,辅导学生时循循善诱、平易近人、极其认真耐心,让我深刻地体会到真正的为人师表的风范。进而使设计得以顺利的完成。在开发的同时,和同学们之间的相互探讨也使我获益匪浅。并且在有些值得借鉴的方面让自己少走了很多弯路,思路更加清晰。
在此,对佘老师和各位和我一起做毕业设计的同学表示由衷的感谢,在毕业设计中我不仅锻炼了自己的动手能力,更重要的是学习了应该怎样做事做人。我所取得的进步和与传授我知识的教师谆谆教导和悉心指导是分不开的,在这里我真诚地感谢电子信息技术日新月异地飞速发展,人们总是处在不断学习阶段,再加上我水平有限,所以本设计肯定存在许多不尽如人意的地方,欢迎广大教师和同学批评指正。最后,要感谢所有帮助我的教师和同学,他们精心的栽培为我以后的学习工作打下了坚实的基础。为踏上社会储备了资本。
衷心的感谢在百忙之中评阅论文和参加答辩的各位专家、教授。
- 41 -
南京工程学院毕业设计说明书(论文)
参考文献
[1]谢维成等.单片机原理与应用及C51程序设计[M].北京.清华大学出版社,2006.8
[2]郭天祥.新概念51单片机C语言教程[M].北京 .电子工业出版社 [3]Atmel公司.AT89S52器件手册[Z].
[4]赵晶.Protel 99入门与提高[M].北京.人民邮电出版社.2000.11 [5]高鹏等.Protel 99高级应用[M].北京.人民邮电出版社.2000.2 [6]谭浩强.C语言程序设计(第三版)[M].北京.清华大学出版社.2005.7
[7]郭永贞等.数字电子技术[M].南京.东南大学出版社.2007.9 [8]邵群涛编著.电器制图与电子线路CAD[M].机械工业出版社. [9]佚名.DHT11说明书[J]
- 42 -
南京工程学院毕业设计说明书(论文)
附录A:硬件设计原理图
图A.1 LED显示部分
- 43 -
南京工程学院毕业设计说明书(论文)
图A.2 主控电源
图A.3 控制外部设备部分
- 44 -
南京工程学院毕业设计说明书(论文)
图A.4 USB与外接电源部分
附录B:硬件设计PCB图
- 45 -
正在阅读:
51单片机控制并显示室内温湿度01-23
高支模专项施工方案04-30
龙津溪地之旅作文800字07-16
化工厂自备热电站节能技改项目立项环境影响评估 - 图文01-01
AHP分析法的详细计算过程05-19
了不起的陌生人作文600字06-26
展览参展合同协议书范本12-01
散户补仓的五大原则03-17
市场营销部岗位职责及任职要求08-15
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 温湿度
- 单片机
- 室内
- 控制
- 显示
- 小学二年级阅读理解专项练习28篇
- 政治生活期末试题精选
- 管理学 题库
- 岗位安全技术操作规程
- 生态学之内蒙古生态屏障的构筑
- creo自顶向下设计方法 - 图文
- 普通地质学 题库
- 提升机的制动与安全保护装置教案 - 图文
- 奥鹏中石油2014秋公文写作在线作业第二阶段答案1
- 省公司党风廉政建设及内控合规检查组汇报材料
- 课堂因提问而变得更精彩
- 集美大学2016水产学院研究生课程表
- 压水堆核电厂二回路热力系统初步设计说明书
- 6#交通洞施工方案
- 幼儿音乐教育
- DataStage - FAQ
- 清洁生产审核报告 - 图文
- Unit 8 Knowledge and Wisdom课文翻译综合教程三
- 2013秋福师《语言学概论》在线作业二答案
- 《汉字五千年》(解说词) 第八集 芳华永驻