




已阅读5页,还剩66页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
河南科技大学本科毕业设计 论文 I 河南科技大学毕业设计 论文 开题报告河南科技大学毕业设计 论文 开题报告 学生填表 学院 电子信息工程学院 2008 年 月 日 课题名称数字温湿度计的设计 学生姓名常中仪专业班级信科 041课题类型硬件设计 指导教师王新勇职称工程师课题来源生产 1 设计 或研究 的依据与意义 温度与湿度与人们的生活息息相关 在工农业生产 气象 环保 国防 科研等部门 经常需要对环境温度与湿度进行测量及控制 准确测量温湿度对于 生物制药 食品加工 造纸等行业更是至关重要的 传统的温度计是用水银柱来 显示的 虽然结构简单 价格便宜 但是它的精确度不高 不易读数 传统的湿 度计用的是干湿球显示法 不仅复杂而且测量精度不高 而采用单片机对温湿度 进行控制 不仅具有控制方便 简单和灵活等优点 而且可以大幅度提高温度控 制的技术指标 用 LED 来显示温湿度的数字看起来更加直观 采用 DHT 9x 数字温湿度传感器作为检测元件 能够同时测试温度和湿度 这类传感器不仅易于焊接 而且只有四针管脚减少了外围电路的设计 DHT 9x 传感器包括一个电容式聚合体测湿元件和一个能隙式测温元件 并与一个 14 位 的 A D 器以及串行接口电路在同一芯片上实现无缝链接 从而具有超快响应 抗 干扰能力强 性价比极高等优点 用单片机来控制温湿度可以完成温湿度的制动控制 通过单片机的串口与 计算机相连 把采集到的参数送到计算机 让计算机来对这些采集到的参数进行 河南科技大学本科毕业设计 论文 II 处理 再向单片机发送指令 从而完成对温湿度的制动控制 总之 无论在日常生活中还是在工业 农业方面都离不开对周围环境温湿 度的测量 因此 研究温湿度的控制和测量具有非常重要的意义 河南科技大学本科毕业设计 论文 III 2 国内外同类设计 或同类研究 的概况综述 测量温湿度的关键是温湿度传感器 过去测量温度与湿度是分开的 随着技 术的进步和人们生活的需要出现了温湿度共测的传感器 温度传感器的发展经历 了 3 个阶段 传统的分立式温度传感器 模拟集成温度传感器 智能集成温度传 感器 目前 国际上新型温度传感器正从模拟式向数字式 从集成化向智能化 网络化的方向发展 湿度传感器也是经历了这样一个阶段逐渐走向数字智能化 现今国内外用的最多的温湿度传感器是 SHTxx 系列 不过很多客户都反应 SHT 不方便手工焊接 很容易在焊接的时候 由于温度过高造成传感器直接损害 因此利用 SHT 传感器重新在国内封装得到了 DHT 9x 系列 SHTxx 系列单芯片传 感器是一款含有已校准数字信号输出的温湿度复合传感器 它应用专利的工业 COMS 过程微加工技术 CM OSensR 确保产品具有极高的可靠性与卓越的长期 稳定性 传感器包括一个电容式聚合体测湿元件和一个能隙式测温元件 并与一 个 14 位的 A D 器以及串行接口电路在同一芯片上实现无缝链接 从而具有超快 响应 抗干扰能力强 性价比极高等优点 采用 DHT 9x 数字温湿度传感器与单片机 AT89C52 相连比较容易 而且电 路比较简单 软件设计也比较简单 所以 本设计以 DHT 9x 数字温湿度传感 器为例 介绍基于 DHT 9x 数字温湿度传感器的设计 该设计适用于人们的日常 生活及工农业生产中用于温湿度的检测及控制 河南科技大学本科毕业设计 论文 IV 3 课题设计 或研究 的内容 使用单片机和 DHT 9x 数字温湿度传感器测量出环境的温度 并用 LED 数 码管显示数值 使用设定键设定报警温湿度 此温度和湿度要在 LED 数码管显示 如果测量温 度或湿度高于设定值 则发出报警信号 4 设计 或研究 方法 按照系统设计功能的要求 确定系统有 5 个模块组成 主控制器 数字温 湿度传感器 DHT 9x 报警电路 按键预置温度值和湿度值电路及显示电路 控 制器使用 AT89C52 DHT 9x 数字温湿度传感器 用 8 位共阴 LED 数码管以动态扫 描法实现温度显示 系统程序主要包括主程序 温度控制子程序及显示子程序等 等 5 实施计划 3 月 30 日前 查阅相关资料 收集信息 4 月 1 日 4 月 30 日 绘制原理图 绘制电路板图 5 月 1 日 5 月 31 日 编写程序和调试 6 月份 开始写论文 准备毕业设计答辩 指导教师意见 指导教师签字 年 月 日 河南科技大学本科毕业设计 论文 V 系意见 系主任签字 年 月 日 河南科技大学本科毕业设计 论文 VI 数字温湿度计的设计 摘 要 温度和湿度是两个最基本的环境参数 人们生活与温湿度息息相关 在工农 业生产 气象 环保 国防 科研等部门 经常需要对环境温度与湿度进行测量 和控制 准确测量温湿度在生物制药 食品加工 造纸等行业更是至关重要的 因此研究温湿度的测量方法和控制具有重要的意义 本论文介绍了一种以单片机 AT89C52 为主要控制器件 以 DHT91 为数字温 湿度传感器的新型数字温湿度计 本设计主要包括硬件电路的设计和系统软件的 设计 硬件电路主要包括主控制器 测温湿控制电路和显示电路等 主控制器采 用单片机 AT89C52 温湿度传感器采用盛世瑞恩半导体公司生产的 DHT91 显示 电路采用 8 位共阳极 LED 数码管 驱动电路用八个 PNP 型的小电压大电流三极 管 S9012 测温湿控制电路由温湿度传感器和预置温湿度值比较报警电路组 成 当实际测量温湿度值大于预置温湿度值时 发出报警信号 发光二极管点亮 软件部分主要包括主程序 测温湿度子程序 显示子程序和按键子程序等 本次设计采用的 DHT91 数字温湿度传感器包括一个电容式聚合体测湿元件和 一个能隙式测温元件 并与一个 14 位的 A D 器以及串行接口电路在同一芯片上 实现无缝链接 从而具有超快响应 抗干扰能力强 性价比高等优点 用 DHT91 与 AT89C52 做的数字温湿度计不仅外围电路简单 而且测量精度比较高 关键词 温度测量 湿度测量 AT89C52 DHT91 THE DESIGN OF DIGITAL 河南科技大学本科毕业设计 论文 VII THERMOMETERS AND HYGROMETER ABSTRACT Temperature and humidity are two basic environmental parameters people s lives are closely related to temperature and humidity In the industrial and agricultural production meteorology environmental protection national defense scientific research and other departments we often need to ambient temperature and humidity measurements and control Accurate measurement of temperature and humidity in the pharmaceutical food processing paper making and other sectors is essential So the temperature and humidity control and measurement method is of great significance This paper presents a new design of digital thermometers and hygrometer It includes a main control device microcontroller AT89C52 and a digital temperature and humidity sensor This design includes hardware and system software The hardware design includes a main controller circuit Temperature and Humidity measurement and control circuits and show circuit Main controller uses SCM AT89C52 temperature and humidity sensor uses DHT91 which is yielded by Sensirion a Semiconductor Corp Show circuit is a total of eight circuits using digital LED of the anode Driver show circuit uses eight of the PNP small voltage high current transistor S9012 Temperature and Humidity control circuit includes the temperature and humidity sensor and preset temperature and humidity values compared alarm circuit When the actual measurement of temperature or humidity values is greater than the preset temperature or humidity values the alarm signal Light emitting diode is lit is sent The major software includes the main routines temperature and humidity routines show routines and keys routines The digital temperature and humidity sensor DHT91 in this design includes a capacitive polymer sensing element for power consumption makes it the ultimate choice for even relative humidity and a band gap temperature sensor Both the most demanding applications are seamlessly coupled to a 14bit analog to digital converter with a 14 and the A D as well as serial interface circuits in the same chip on the realization of a Gap 河南科技大学本科毕业设计 论文 VIII link to a super fast response anti interference capability and cost effective advantages The design of digital thermometers and hygrometer with AT89C52 and DHT91 not only has a simple external circuit but also has a high precision measurement KEY WORDS temperature measurement humidity measurements AT89C52 DHT91 河南科技大学本科毕业设计 论文 1 目 录 前 言 1 第一章 设计任务要求和温湿度计的发展史 2 1 1 设计任务及要求 2 1 2 设计数字温湿度计的依据和意义 2 1 3 温度计的发展史 3 1 4 湿度计的由来 4 1 5 露点意义 4 第二章 设计任务分析及方案论证 5 2 1 设计总体方案及方案论证 5 2 2 元器件的选择 6 2 2 1 主控制器芯片 6 2 2 2 数字温湿度传感器 7 2 2 3 驱动显示电路 8 2 3 温湿度测量的方法及分析 9 第三章 硬件电路的设计 10 3 1 主控制电路和测温湿控制电路 10 3 2 驱动显示电路 11 第四章 软件设计及分析 13 4 1 DHT91 传输时序和指令集 7 13 4 1 1 通讯复位时序 13 4 1 2 启动传输时序 13 4 1 3 数据传输和指令集 14 4 1 4 湿度的测量时序 15 4 1 5 输出转换为物理量 15 4 1 6 DHT91 的 DC 特性 16 4 2 程序流程图 17 河南科技大学本科毕业设计 论文 2 4 3 程序的设计 18 4 3 1 通讯复位子程序 18 4 3 2 传输启动子程序 18 4 3 3 写一个字节子程序 19 4 3 4 读一个字节子程序 20 4 3 5 数据处理子程序 20 4 3 6 显示子程序 21 4 3 7 按键子程序 23 4 3 8 中断刷新显示数码管子程序 26 4 3 9 软件在硬件上的调试分析 27 结 论 29 参考文献 30 致 谢 31 附 录 32 河南科技大学本科毕业设计 论文 1 前 言 温度与湿度与人们的生活息息相关 在工农业生产 气象 环保 国防 科 研等部门 经常需要对环境温度与湿度进行测量及控制 准确测量温湿度在生物 制药 食品加工 造纸等行业更是至关重要的 传统的温度计是用水银柱来显示 的 虽然结构简单 价格便宜 但是它的精确度不高 不易读数 传统湿度计采 用干湿球显示法 不仅复杂而且测量精度不高 而采用单片机对温湿度进行测量 控制 不仅具有控制方便 简单和灵活等优点 而且可以大幅度提高温度控制的 技术指标 用 LED 数码管来显示温湿度的数值 看起来更加直观 测量温湿度的关键是温湿度传感器 过去测量温度与湿度是分开的 随着技 术的进步和人们生活的需要出现了温湿度传感器 温度传感器的发展经历了 3 个 阶段 传统的分立式温度传感器 模拟集成温度传感器 智能集成温度传感器 目前 国际上新型温度传感器正从模拟式向数字式 从集成化向智能化 网络化 的方向发展 湿度传感器也是经历了这样一个阶段逐渐走向数字智能化 现今国内外用的最多的温湿度传感器是 SHTxx 系列 不过很多客户都反应 SHTxx 不方便手工焊接 很容易在焊接的时候 由于温度过高造成传感器直接损 害 因此利用 SHTxx 传感器重新在国内封装得到了 DHT 9x 系列 SHTxx 系列单芯 片传感器是一款含有已校准数字信号输出的温湿度复合传感器 它应用专利的工 业 COMS 过程微加工技术 CMOSens 确保产品具有极高的可靠性与卓越的长期 稳定性 传感器包括一个电容式聚合体测湿元件和一个能隙式测温元件 并与一 个 14 位的 A D 器以及串行接口电路在同一芯片上实现无缝链接 从而具有超快 响应 抗干扰能力强 性价比高等优点 采用 DHT91 数字温湿度传感器与单片机 AT89C52 相连外围电路比较简单 所以 本次设计以 DHT91 数字温湿度传感器为例 介绍基于单片机的数字温湿度 计的设计 第一章 设计任务要求和温湿度计的发展史 河南科技大学本科毕业设计 论文 2 1 1 设计任务及要求 设计一个以单片机为核心的温湿度测量系统 可实现的功能为 1 测量温度值精度为 1 测量湿度值精确1 2 系统允许的误差范围为 1 和 1 以内 3 系统可由用户预设温度值和湿度值 测温范围 40 125 测 湿范围 0 100 4 超出预设值时系统会自动报警 即发光二极管亮 5 系统采用数码管显示 能显示设定温湿度值和测得的实际温湿度值 1 2 设计数字温湿度计的依据和意义 温度与湿度与人们的生活息息相关 在工农业生产 气象 环保 国防 科 研等部门 经常需要对环境温度与湿度进行测量及控制 准确测量温湿度在生物 制药 食品加工 造纸等行业更是至关重要的 传统的温度计是用水银柱来显示 的 虽然结构简单 价格便宜 但是它的精确度不高 不易读数 传统的湿度计 采用干湿球显示法 不仅复杂而且测量精度不高 而采用单片机对温湿度进行控 制 不仅具有控制方便 简单和灵活等优点 而且可以大幅度提高温度控制的技 术指标 用 LED 来显示温湿度的数字看起来更加直观 采用 DHT91 数字温湿度传感器作为检测元件 能够同时测试温度和湿度 这 类传感器不仅易于焊接 而且只有四针管脚 减少了外围电路的设计 DHT91 传 感器包括一个电容式聚合体测湿元件和一个能隙式测温元件 并与一个 14 位的 A D 器以及串行接口电路在同一芯片上实现无缝链接 从而具有超快响应 抗干 扰能力强 性价比高等优点 DHT91 传感器可以直接读出被测的温湿度值 同时 单片机可以把测量出的数据通过串口传到计算机上 来完成工业中的自动控制 给工业生产带来了极大的便利 用单片机控制的温湿度计不仅硬件电路简单 而 且测量精度比较高 用数码管显示测量值看起来比较美观 总之 无论在日常生活中还是在工业 农业方面都离不开对周围环境进行温 湿度的测量 因此 研究温湿度的控制和测量具有非常重要的意义 1 3 温度计的发展史 温度计是测温仪器的总称 根据所用测温物质的不同和测温范围的不同 有 煤油温度计 酒精温度计 水银温度计 气体温度计 电阻温度计 温差电偶温 度计 辐射温度计和光测温度计等 最早的温度计是在 1593 年由意大利科学家伽利略 1564 1642 发明的 他 河南科技大学本科毕业设计 论文 3 的第一只温度计是一根一端敞口的玻璃管 另一端带有核桃大的玻璃泡 使用时 先给玻璃泡加热 然后把玻璃管插入水中 随着温度的变化 玻璃管中的水面就 会上下移动 根据移动的多少就可以判定温度的变化和温度的高低 这种温度计 受外界大气压强等环境因素的影响较大 所以测量误差大 后来伽利略的学生和其他科学家 在这个基础上反复改进 如把玻璃管倒过 来 把液体放在管内 把玻璃管封闭等 比较突出的是法国人布利奥在 1659 年 制造的温度计 他把玻璃泡的体积缩小 并把测温物质改为水银 这样的温度计 已具备了现在温度计的雏形 以后荷兰人华伦海特在 1709 年利用酒精 在 1714 年又利用水银作为测量物质 制造了更精确的温度计 他观察了水的沸腾温度 水和冰混合时的温度 盐水和冰混合时的温度 经过反复实验与核准 最后把一 定浓度的盐水凝固时的温度定为 0 把纯水凝固时的温度定为 32 把标准大 气压下水沸腾的温度定为 212 用 代表华氏温度 这就是华氏温度计 在华氏温度计出现的同时 法国人列缪尔 1683 1757 也设计制造了一种温 度计 他认为水银的膨胀系数太小 不宜做测温物质 他专心研究用酒精作为测 温物质的优点 他反复实践发现 含有 1 5 水的酒精 在水的结冰温度和沸腾温 度之间 其体积的膨胀是从 1000 个体积单位增大到 1080 个体积单位 因此他把 冰点和沸点之间分成 80 份 定为自己温度计的温度分度 这就是列氏温度计 华氏温度计制成后又经过 30 多年 瑞典人摄尔修斯于 1742 年改进了华伦海 特温度计的刻度 他把水的沸点定为零度 把水的冰点定为 100 度 后来他的同 事施勒默尔把两个温度点的数值又倒过来 就成了现在的百分温度 即摄氏温度 用 表示 华氏温度与摄氏温度的关系为 9 5 32 或 5 9 32 现在英 美国家多用华氏温度 德国多用列氏温度 而世界科技界和工农业 生产中 以及我国 法国等大多数国家则多用摄氏温度 随着科学技术的发展和 现代工业技术的需要 测温技术也不断地改进和提高 由于测温范围越来越广 根据不同的要求 又制造出不同需要的测温仪器 1 4 湿度计的由来 湿度计是测量空气内含水分多少的仪器 史记 天官书 中即有测湿的记 载 我国汉朝初年就已出现湿度计 它是利用天平来测量空气干燥或潮湿的 天 平湿度计的使用方法 是把两个重量相等而吸湿性不同的物体 例如灰和铁 分 别挂在天平两端 当空气湿度发生变化时 由于两个物体吸入的分水不同 重量 河南科技大学本科毕业设计 论文 4 也就起了变化 于是天平发生偏差 从而指示出空气潮湿的程度 这就是湿度 计的由来 1 5 露点意义 气温愈低 饱和水气压就愈小 所以对于含有一定量水汽的空气 在气压不 变的情况下降低温度 使饱和水汽压降至与当时实际的水汽压相等时的温度 称 为露点 Dew point 露点温度是指空气在水汽含量和气压都不改变的条件下 冷却到饱和时的温 度 形象地说 就是空气中的水蒸气变为露珠时候的温度叫露点温度 露点温度 本是个温度值 可为什么用它来表示湿度呢 这是因为 当空气中水汽已达到饱 和时 气温与露点温度相同 当水汽未达到饱和时 气温一定高于露点温度 所 以露点与气温的差值可以表示空气中的水汽距离饱和的程度 在 100 的相对湿度 时 周围环境的温度就是露点温度 露点温度越小于周围环境的温度 结露的可 能性就越小 也就意味着空气越干燥 露点不受温度影响 但受压力影响 湿 球温度的定义是在定压绝热的情况下 空气与水直接接触 达到稳定热湿平衡时 的绝热饱和温度 第二章 设计任务分析及方案论证 2 1 设计总体方案及方案论证 按照系统设计功能的要求 确定系统由 5 个模块组成 主控制器 数字温湿 度传感器 报警电路 按键电路及驱动显示电路 河南科技大学本科毕业设计 论文 5 驱动显示模块 模块 报警电路 按键电路 温湿度传感器 主 控 制 器 图 2 1 总体电路框图 主控制器的功能有单片机来完成 主要负责处理由数字温湿度传感器送来数 据 并把处理好的数据送向显示模块 数字温湿传感器主要用来采集周围环境参 数 并把所采集来的参数送向主控制器 按键电路主要用来完成单片机的复位操 作和温湿度初始值的设定 这里需要四个按键 一个用来完成单片机的复位操作 一个用来切换显示的数据 是设定值还是实际测得的值 另外两个分别用来设 定初始温度和初始湿度的个位和十位 报警电路就是用一个发光二极管来实现的 用来判断周围环境的温度或者湿度是否超出设定值了 任何一个超出设定值发光 二极管就会被点亮 驱动显示电路主要用来驱动八位数码管发光的 由于单片机 的输出电流太小 只有几 mA 不能驱使数码管发光 所以这里必须增加一个驱动 显示模块 2 2 元器件的选择 2 2 1 主控制器芯片 主控制器模块选用单片机 AT89C52 AT89C52 是美国 ATMEL 公司生产的低 电平 高性能 CMOS 8 位单片机 片内含 8k bytes 的可反复擦写的只读程序存储 器 PEROM 和 256 bytes 的随机存取数据存储器 RAM 器件采用 ATMEL 公司的 高密度 非易失性存储技术生产 与标准 MCS 51 指令系统及 8052 产品引脚兼 河南科技大学本科毕业设计 论文 6 容 片内置通用 8 位中央处理器 CPU 和 Flash 存储单元 32 个可编程 I O 口线 3 个 16 位定时 计数器 低功耗空闲和掉电模式 功能强大的 AT89C52 单片机适 合于许多较为复杂控制应用场合 AT89C52 共有 6 个中断向量 两个外中断 INT0 和 INT1 3 个定时器中断 定时器 0 1 2 串行口中断和四个双向 I 0 口 P0 口 P0 口是一组 8 位漏极开路型双向 I O 口 也即地址 数据总线复用口 作为输出口用时 每位能吸收电流的方式驱动 8 个 TTL 逻辑门电路 对端口 P0 写 1 时可作为高阻抗输入端用 在访问外部数据存储器或程序存储器时 这组口线分时转换地址 低 8 位 和 数据总线复位 应为输出驱动级的漏极开路 所以必须外接上拉电阻 否则不能 正常工作 P1 口 P1 是一个带内部上拉电阻的 8 位双向 I O 口 P1 的输出缓冲级可驱动 吸收或输出电流 4 个 TTE 逻辑门电路 对端口写 1 通过内部的上拉电阻把 端口拉到高电平 此时可作输入口 作输入口使用时 因为内部存在上拉电阻 某个引脚被外部信号拉低时会输出一个电流 ILL 与 AT89C51 不同之处是 P1 0 和 P1 1 还可分别作为定时 计数器 2 的外部计 数输入 P 1 0 T2 和输入 P 1 1 T2EX 功能特性如下表 2 1 所示 表 2 1 P1 0 和 P1 1 的第二功能 P2 口 P2 是一个带有内部上拉电阻的 8 位双向 I O 口 P2 的输出缓冲级可驱 动 吸收或输出电流 4 个 TTL 逻辑门电路 对端口 P2 写 1 通过内部的上拉电 阻把端口拉到高电平 此时可作输入口 作输入口使用时 因为内部存在上拉电 阻 某个引脚被外部信号拉低时会输出一个电流 ILL P3 口 P3 口是一组带有内部上拉电阻的 8 位双向 I O 口 P3 口输出缓冲级可 驱动 吸收或输出电流 4 个 TTL 逻辑门电路 对 P3 口写入 1 时 它们被内部 上拉电阻拉高并可作为输入端口 此时 被外部拉低的 P3 口将用上拉电阻输出 电流 ILL 河南科技大学本科毕业设计 论文 7 P3 口除了作为一般的 I O 口线外 更重要的用途是它的第二功能 如表 2 2 所示 表 2 2 AT89C52 的 P3 口的第二功能 2 2 2 数字温湿度传感器 测温湿模块选用数字温湿度传感器 DHT91 现今国内外用的最多的温湿度传 感器是 SHTxx 系列 不过很多客户都反应 SHTxx 不方便手工焊接 很容易在焊接 的时候 由于温度过高造成传感器直接损害 因此利用 SHTxx 传感器重新在国内 封装得到了 DHT 9x 系列 SHTxx 系列单芯片传感器是一款含有已校准数字信号输 出的温湿度复合传感器 它应用专利的工业 COMS 过程微加工技术 CMOSens 具有极高的可靠性与卓越的长期稳定性 传感器包括一个电容式聚合体测湿元件 和一个能隙式测温元件 并与一个 14 位的 A D 器以及串行接口电路在同一芯片 上实现无缝链接 从而具有超快响应 抗干扰能力强 性价比高等优点 其内部 机构图如下图 2 2 所示 河南科技大学本科毕业设计 论文 8 图 2 2 DHT91 结构图 7 2 2 3 驱动显示电路 驱动显示模块选用八位共阳极数码管和八个小功率放大三极管 S9012 由于 单片机的端口输出电流太小 这里必须由外界电路来驱动数码管显示 S9012 就 是用来驱动这八位数码管显示的 LED 数码管也称半导体数码管 是目前数字电路中最常用的显示器件 它是 以发光二极管作段并按共阴极方式或共阳极方式连接后封装而成的 图 2 2 所示 是两种 LED 数码管的外形与内部结构 分别表示公共阳极和公共阴极 a g 是 7 个段电极 DP 为小数点 LED 数码管型号较多 规格尺寸也各异 显示 颜色有红 绿 橙等 LED 数码管的主要特点如下 1 能在低电压 小电流条件下驱动发光 能与 CMOS ITL 电路兼容 2 发光响应时间极短 小于 0 1 s 高频特性好 单色性好 亮度高 3 体积小 重量轻 抗冲击性能好 4 寿命长 使用寿命在 10 万小时以上 甚至可达 100 万小时 成本低 因此它被广泛用作数字仪器仪表 数控装置 计算机的数显器件 河南科技大学本科毕业设计 论文 9 图 2 3 LED 数码管外形和内部结构图 小电压大电流的小功率放大三极管 S9012 的放大倍数共分六级 D 级 64 91 E 级 78 112 F 级 96 135 G 级 112 166 H 级 144 220 I 级 190 300 2 3 温湿度测量的方法及分析 DHT91 是一个两线串行接口的数字温湿度传感器 一个接口是时钟线 一个 接口是数据线 支持双向传输 它是四针单排封装 一个接电源 一个接地线 另两个直接和单片机的 P0 5 和 P0 6 相连 不过数据线和时钟线上需要接两个 10K 的上拉电阻 因为 AT89C52 的 P0 口内部没有上拉电阻 单片机通过 P0 5 和 P0 6 向 DHT91 发送命令 DHT91 接收到命令后做出相应的应答 由于 DHT91 内部 包含一个 14 位 A D 转换器 所以单片机接收到就是数字信号 只需要做相应的 处理就能得到所需要的数据 这里减少了很多外部的电路的连接 用起来比较方 便 河南科技大学本科毕业设计 论文 10 第三章 硬件电路的设计 3 1 主控制电路和测温湿控制电路 本次硬件设计的核心就是 TA89C52 其他部件都是围绕它设计的 数字温 2 湿度传感器 DHT91的 DATA 口和 SCK 口分别与 TA89C52 的 P0 5 口和 P0 6 口相连 7 因为 P0 口内部没有上拉电阻 所以这里在 DATA 和 SCK 传输线上分别加了一个 10K 的上拉电阻 预置数电路就是三个按键分别与 TA89C52 的 P0 1 P0 2 和 P0 3 口相连 为了降低 AT89C52 的功耗在按键和单片机的端口间加了个 10K 的限流电 阻 当有按键按下时单片机收到有效的信号 S1 键用来切换显示的模式 分别显 示实际所测得的温湿度 预置的温度值和预置的湿度值 S2 键用来设置初始温 度或者湿度的十位 S3 键用来设置初始温度或者湿度的个位 报警电路就是把个 发光二极管和 TA89C52 的 P0 4 口相连 当 P0 4 口为低电平时放光二极管被点亮 发光二极管的压降一般为 1 5 2 0 V 其工作电流一般取 10 20 mA 为宜 使用 LED 作指示电路时 应该串接限流电阻 该电阻的阻值大小应根据不同的使用电 压和 LED 所需工作电流来选择 I 5V 2V 200 15mA 这个电流能使放光二极管正常放光 如果电流小于 10mA 放光二极管的亮度 会减弱 如果电流大于 20mA 发光二极管亮度会更强 但是会有损发光二级管的 寿命有时候甚至会直接烧毁发光二极管 单片机复位有两种 一种是上电复位 一种是按键复位 下图用的就是按键 复位 当按键按下时单片机的 RST 口从低电平变为高电平 从而进入复位状态 当按键松开后 VCC 给电容 C3 充电 从而把 RST 口拉至电平 单片机进入工作状 态 只要把下图的 RESET 按键和 R2 电阻去掉就成了上电复位了 AT89C52 中有一个用于构成内部振荡器的高增益反相放大器 引脚 XTAL1 和 XTAL2 分别是该放大器的输入端和输出端 这个放大器与作为反馈元件的片外石 英晶体或陶瓷谐振器构成自激振荡器 外接石英晶体 或陶瓷谐振器 及电容 C1 C2 接在放大器的反馈回路中构成并联振荡电路 对外接电容 C1 C2 虽然没 有十分严格的要求 但电容容量的大小会轻微影响振荡频率的高低 振荡器工作 的稳定性 起振的难易程度及温度稳定性 如果使用石英晶体 我们推荐电容使 用 30pF 士 10pF 而如果使用陶瓷谐振器 建议选择 40pF 士 l0pF 这里用到的 河南科技大学本科毕业设计 论文 11 是 12M 的石英晶体振荡器和两个 30pF 的电容 具体原理图如下图 3 1 所示 图 3 1 主控制电路和测温湿电路原理图 3 2 驱动显示电路 数码管的显示有两种方法 一种是静态显示 一种是动态扫描显示 静态显 示就是数码管的段选端一对一与单片机的 I O 相连 位选端则根据数码管的极型 来接地 GND 或者是高电平 VCC 静态显示实现起来比较简单 但是浪费了 单片机的 I O 口资源 动态扫描显示就是几个数码管的段选端可以同时接到单片 机的 I O 口 位选端一对一的接到单片机的其它 I O 口 当位选信号选中某个数 码管时 那个数码管就被点亮 而其它数码管不亮 动态扫描显示节省了单片机 的 I O 资源 采用动态显示方案 设计中使用八个共阴极数码管作为显示载体 通过八路 并口传输 共使用了十六个 I O 口 显示时采用循环移位法 即八位数码管依次 循环点亮 利用人眼睛的视觉暂留效果达到连续显示 主程序每运行一遍便调用 一次显示子程序 将数据显示出来 显示部分为八位共阳极数码管 四位一组 数码管的段端 A B C D E F G 和 DP 与 TA89C52 的 P1 口相连 顺序可以根据硬件 接线方便而定 数码管的字段通过八个 PNP 型的小功率放大三极管 S9012 与 河南科技大学本科毕业设计 论文 12 TA89C52 的 P2 口相连 因为 AT89C52 的端口输出电流太小 只有几 mA 不能点 亮这八位数码管 所以这里用了八个 S9012 来驱动它们 具体原理图如下图 3 2 所示 这里用的是 S9012H331 放大倍数 150 倍左右 下图数码管的段选端与单片机 的 I O 间还有一个 470 的电阻 5V 0 7V 4 7K 0 915mA EB I 150 137mA ECMAX I EB I 5V 0 3V 2V 470 8 46mA 足以点亮数码管了 ECMAX I 图 3 2 驱动显示电路原理图 第四章 软件设计及分析 河南科技大学本科毕业设计 论文 13 4 1 DHT91 传输时序和指令集 7 4 1 1 通讯复位时序 串行时钟输入 SCK 用于微处理器与 DTH91 之间的通讯同步 由于接口包含 了完全静态逻辑 因而不存在最小 SCK 频率 串行数据 DATA 三态门用于数据 的读取 DATA 在 SCK 时钟下降沿到来之后改变状态 并仅在 SCK 时钟上升沿有 效 数据传输期间 在 SCK 时钟高电平时 DATA 必须保持稳定 为避免信号冲 突 微处理器应驱动 DATA 在低电平 需要一个外部的上拉电阻 例如 10k 将信号提拉至高电平 如果与 DTH91 通讯中断 下列信号时序可以复位串口 当 DATA 保持高电平 时 触发 SCK 时钟 9 次或更多 这些时序只复位串口 状态寄存器内容仍然保 留 图 4 1 通讯复位时序 4 1 2 启动传输时序 用一组 启动传输 时序 来表示数据传输的初始化 它包括 当 SCK 时钟 高电平时 DATA 翻转为低电平 紧接着 SCK 变为低电平 随后是在 SCK 时钟高电 平时 DATA 翻转为高电平 在下一次指令前 发送一个 传输启动 时序 启动 传输时序如下图 4 2 所示 图 4 2 启动传输时序 4 1 3 数据传输和指令集 后续命令包含三个地址位 目前只支持 000 和五个命令位 DTH 91 会 以下述方式表示已正确地接收到指令 在第 8 个 SCK 时钟的下降沿之后 将 河南科技大学本科毕业设计 论文 14 DATA 下拉为低电平 ACK 位 在第 9 个 SCK 时钟的下降之后 释放 DATA 恢 复高电平 发布一组测量命令 00000101 表示相对湿度 RH 00000011 表示温度 T 后 控制器要等待测量结束 这个过程需要大约 20 80 320ms 分 别对应 8 12 14bit 测量 确切时间随内部晶振速度的变化而变化 最多可能有 30 的变化 DTH91 通过下拉 DATA 至低电平并进入空闲模式 表示测量的结束 控制器在再次触发 SCK 时钟前 必须等待这个 数据备妥 信号来读出数据 检 测数据可以先被存储 这样控制器可以继续执行其它任务在需要时再读出数据 接着传输 2 个字节的测量数据和 1 个字节的 CRC 奇偶校验 uC 需要通过下拉 DATA 为低电平 以确认每个字节 所有的数据从 MSB 开始 右值有效 例如 对于 12bit 数据 从第 5 个 SCK 时钟起算作 MSB 而对于 8bit 数据 首字节则 无意义 用 CRC 数据的确认位 表明通讯结束 如果不使用 CRC 8 校验 控制器可 以在测量值 LSB 后 通过保持确认位 ack 高电平 来中止通讯 在测量和通讯 结束后 DTH91 自动转入休眠模式 DTH91 的指令集如下表 4 1 所示 表 4 1 命令集 4 1 4 湿度的测量时序 河南科技大学本科毕业设计 论文 15 图 4 3 测量湿度的时序 4 1 5 输出转换为物理量 由能隙材料 PTAT 正比于绝对温度 研发的温度传感器具有极好的线性 可 用如下公式将数字输出转换为温度值 Temperature d1 d2 SOT d1 和 d2 的值如下表 4 2 所示 表 4 2 温度转换系数 为了补偿湿度传感器的非线性以获取准确数据 建议使用如下公式 1 修正输 出数值 RHlinear c1 c2 SORH c3 SORH 2 c1 c2 和 c3 值如下表 4 3 所示 表 4 3 湿度转换系数 河南科技大学本科毕业设计 论文 16 湿度传感器相对湿度的温度补偿实际测量温度与 25 77 相差较大时 应考虑湿度传感器的温度修正系数 RHtrue T C 25 t1 t2 SORH RHlinear t1 和 t2 的值如下表 4 4 所示 表 4 4 温度补偿系数 RHtrue 就是测量的湿度值 4 1 6 DHT91 的 DC 特性 DHT91 的 DC 特性如下表 4 5 所示 表 4 5 DHT91 的 DC 特性 河南科技大学本科毕业设计 论文 17 4 2 程序流程图 开始 通讯复位 启动传输 定时器初始化 写湿度指令 成功 error 0 失败 error 1 读湿度值 成功 error 0 失败 error 1 写温度指令 成功 error 0 失败 error 1 读温度值 成功 error 0 失败 error 1 Error 1 Y Y数据处理 显示处理 通讯复位 启动传输 N N 定时器时间到 中断其它程序 设置初始值 刷新数码管 回到中断点 图 4 4 程序流程图 河南科技大学本科毕业设计 论文 18 4 3 程序的设计 4 3 1 通讯复位子程序 void s connectionreset void unsigned char i DATA 1 SCK 0 for i 0 i0 i 2 if i else DATA 0 SCK 1 nop nop nop SCK 0 DATA 1 SCK 1 error DATA SCK 0 return error 可以通过写一个字节子程序对传感器进行写指令操作 若想读出湿度值就向 传感器写入 00000101 如想读出温度值就向传感器写入 00000011 河南科技大学本科毕业设计 论文 20 4 3 4 读一个字节子程序 char s read byte unsigned char ack unsigned char i val 0 DATA 1 for i 0 x80 i 0 i 2 SCK 1 if DATA val val i SCK 0 DATA ack SCK 1 nop nop nop SCK 0 DATA 1 return val 通过读一个字节子程序从传感器读出温度值或湿度值 把相应的数据送到单 片机的寄存器中 4 3 5 数据处理子程序 void calc sth11 float p humidity float p temperature const float C1 4 0 const float C2 0 0405 const float C3 0 0000028 河南科技大学本科毕业设计 论文 21 const float T1 0 01 const float T2 0 00008 float rh p humidity float t p temperature float rh lin float rh true float t c t c t 0 01 40 rh lin C3 rh rh C2 rh C1 rh true t c 25 T1 T2 rh rh lin if rh true 0 1 rh true 0 1 p temperature t c p humidity rh true 把从传感器读出的二进制数转换成相应的十进制数 4 3 6 显示子程序 void display float humi float temp int humi1 temp1 humi1 humi 10 temp1 temp 10 if temp1humiset temp tempset P0 4 0 else P0 4 Z else if cnt 1 if temph 9 dispbuf 0 10 else dispbuf 0 11 dispbuf 1 temph 10 dispbuf 2 templ 10 河南科技大学本科毕业设计 论文 23 dispbuf 3 11 dispbuf 4 11 dispbuf 5 11 dispbuf 6 11 dispbuf 7 11 else dispbuf 0 11 dispbuf 1 11 dispbuf 2 11 dispbuf 3 11 dispbuf 4 11 dispbuf 5 humih 10 dispbuf 6 humil 10 dispbuf 7 11 当 cnt 0 时数码管显示实际的温湿度值 当 cnt 1 时数码管显示设定温度值 当 cnt 2 时数码管显示设定湿度值 4 3 7 按键子程序 void key if P0 0 0 for i 5 i 0 i for j 248 j 0 j if P0 0 0 cnt 河南科技大学本科毕业设计 论文 24 if cnt 2 cnt 0 while P0 0 0 if cnt 1 if P0 1 0 for i 5 i 0 i for j 248 j 0 j if P0 1 0 temph if temph 15 temph 0 while P0 1 0 if P0 2 0 for i 5 i 0 i for j 248 j 0 j if P0 2 0 templ if templ 10 河南科技大学本科毕业设计 论文 25 templ 0 while P0 2 0 else if cnt 2 if P0 1 0 for i 5 i 0 i for j 248 j 0 j if P0 1 0 humih if humih 10 humih 0 while P0 1 0 if P0 2 0 for i 5 i 0 i for j 248 j 0 j if P0 2 0 humil 河南科技大学本科毕业设计 论文 26 if humil 10 humil 0 while P0 2 0 if temph2 时 cnt 0 当 cnt 1 时每按一次 S2 键 temph 加 1 当 temph 14 时 temph 0 当 temph 为 10 11 12 13 14 时分别对应的是 1 2 3 4 每按一次 S3 键 templ 加 1 当 templ 9 时 templ 0 当 cnt 2 时 S2 S3 键调 的是 humih 和 humil
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 盘龙区模拟中考数学试卷
- 青海招教小学数学试卷
- 学生创意手工活动方案策划(3篇)
- 手工制造活动方案策划(3篇)
- 佛山凉亭施工方案(3篇)
- phc桩基施工方案(3篇)
- 锅炉证考试题库及答案
- 微课参赛课件制作教学
- 安徽省马鞍山市和县2023-2024学年高三下学期高考第三次模拟考试数学题目及答案
- 2025年一季度我国电子商务发展情况
- 国旗法课件教学课件
- 食管内镜支架植入护理配合
- 老年人防诈骗课件
- 《煤矿重大事故隐患判定标准》
- 2025巴中市国企招聘考试题目及答案
- GB/T 45411.1-2025光学和光子学瞄准望远镜规范第1部分:普通性能仪器
- 外销出口流程培训
- 房屋建筑工程竣工验收技术资料统一用表(2024 版)
- 《企业研发费用税前加计扣除政策解读与应用课件》
- 寿险公司IT系统架构
- 《马斯克英文介绍》课件
评论
0/150
提交评论