课程设计基于AT89S52的数字温度计(DS18B20)设计实验.doc_第1页
课程设计基于AT89S52的数字温度计(DS18B20)设计实验.doc_第2页
课程设计基于AT89S52的数字温度计(DS18B20)设计实验.doc_第3页
课程设计基于AT89S52的数字温度计(DS18B20)设计实验.doc_第4页
课程设计基于AT89S52的数字温度计(DS18B20)设计实验.doc_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

信息学院信息学院 电子系统设计电子系统设计 设计报告设计报告 完成日期 完成日期 专 业 通信工程 班 级 092 设计题目 数字温度计设计 学生姓名 张庆余 陈子杰 王洪亮 指导教师 张铮 目目 录录 一 设计任务和性能指标 1 1 1 设计任务 1 1 2 性能指标 1 二 设计方案 1 三 系统硬件设计 3 3 1 主控制器 AT89C52 3 3 2 温度采集装置 DS18B20 4 3 3 显示电路的设计 7 3 4 温度调节设置按键电路 8 3 5 复位电路 8 3 6 时钟电路 8 3 7 报警电路 9 四 系统软件设计 9 4 1 主程序设计 9 4 2 温度检测装置设计 10 4 3 中断设定子程序设计 12 4 4 报警模块设计 14 五 调试及性能分析 14 5 1 调试步骤 14 5 2 性能分析 15 六 心得体会 15 参考文献 16 附录 1 系统硬件电路图 16 附录 2 程序清单 17 一 设计任务和性能指标一 设计任务和性能指标 1 1 设计任务 设计以智能集成温度传感器 DS18B20 89S52 单片机为控制器构成数字温 度测量装置 它与传统的温度计相比 具有读数方便 测温范围广 测温准确 输出温度采用数字显示 要求用 Protel 画出系统的电路原理图 要求以最少组件 实现系统设计所 要求的功能 印刷电路板 要求布局合理 线路清晰 绘出程序流程图 并 给出程序清单 要求思路清晰 尽量简洁 主程序和子程序分开 使程序有较 强的可读性 1 2 性能指标 1 实时显示环境温度值 2 通过按键可以设定报警温度的上下限值 3 当环境温度大于报警温度上限值 通过红灯闪烁和蜂鸣器报警 当环境温度 小于报警温度下限值 通过绿灯闪烁和蜂鸣器报警 二二 设计方案设计方案 按照系统设计的功能的要求 初步确定设计系统主要由温度测量和数据采 集两部分电路组成 电路系统构成框图如图 1 1 所示 方案采用数字温度芯片 DS18B20 测量温度 输出信号全数字化 便于单片机处理及控制 省去传统的 测温方法的很多外围电路 且该芯片的物理化学性很稳定 它能用做工业测温 元件 此元件线形较好 在 0 100 摄氏度时 最大线形偏差小于 1 摄氏度 DS18B20 的最大特点之一采用了单总线的数据传输 由数字温度计 DS18B20 和 微控制器 AT89S52 构成的温度测量装置 它直接输出温度的数字信号 可直接与 计算机连接 这样 测温系统的结构就比较简单 体积也不大 采用 51 单片机控 制 软件编程的自由度大 可通过编程实现各种各样的算术算法和逻辑控制 而且体积小 硬件实现简单 安装方便 既可以单独对多 DS18B20 控制工作 还可以与 PC 机通信上传数据 另外 AT89S52 在工业控制上也有着广泛的应用 编程技术及外围功能电路的配合使用都很成熟 该系统利用 AT89S52 芯片控制 温度传感器 DS18B20 进行实时温度检测并显示 能够实现快速测量环境温度 并可以根据需要设定上下限报警温度 图 2 1 DS18B20 温度测温系统框图 显示模块采用采用了四位数码管 通过温度传感器和单片机交换数据 把 当前环境下的温度数据适时传输给数码管 键盘采用线性连接 连接方式相对 简单 使用查询法实现调整功能 独立键盘 输入 DS18B20 温度采集 警示电路 部分 AT89S52 单片机 数码显 示 时间复位 电路 三 系统硬件设计三 系统硬件设计 3 1 单片机单片机的选择的选择 采用 AT89C52 单片机为中心控制芯片 AT89C52 是美国 ATMEL 公司生产的低电 压 高性能 CMOS8 位单片机 片内含 8K bytes 的可反复擦写的 PEROM 和 256bytes 的 RAM 以及通用 8 位中央处理器和 Flash 存储单元 AT89C52 功能强 大 可充分满足该控制器存储等各方面的需求 AT89C52 提供以下标准功能 8K 字节 Flash 闪速存储器 256 字节内部 RAM 32 个 I O 口线 3 个 16 位定时器 计时器 一个 6 位向量级中断结构 一 个全双工串通信口 片内振荡器及时钟电路 同时 AT89C52 可降至 的 静态逻辑操作 并支持两种软件的可选节电工作方式 空闲方式停止 的 工作 但允许 RAM 的内容 但振荡器停止工作并禁止其它所有部件工作直到下 一个硬件复位 图 3 1 AT89C52 引脚图 AT89C52AT89C52 的参数了解 的参数了解 工作温度 55 125 储藏温度 65 150 任一引脚对地电压 1 7 最高工作电压 6 6 直流输出电流 15 3 2 温度采集装置 由于传统的热敏电阻等测温元件测出的一般都是电压 再转换成对应的温 度 需要比较多的外部元件支持 且硬件电路复杂 制作成本相对较高 这里 采用 DALLAS 公司的数字温度传感器 DS18B20 作为测温元件 DALLAS 最新单线数字温度传感器 DS18B20 是一种新型的 一线器件 其体积更小 更适用于多种场合 且适用电压更宽 更经济 DALLAS 半导体公 司的数字化温度传感器 DS18B20 是世界上第一片支持 一线总线 接口的温度 传感器 温度测量范围为 55 125 摄氏度 可编程为 9 位 12 位转换精度 测温分辨率可达 0 0625 摄氏度 分辨率设定参数以及用户设定的报警温度存储 在 EEPROM 中 掉电后依然保存 被测温度用符号扩展的 16 位数字量方式串行 输出 其工作电源既可以在远端引入 也可以采用寄生电源方式产生 多个 DS18B20 可以并联到 3 根或 2 根线上 CPU 只需一根端口线就能与诸多 DS18B20 通信 占用微处理器的端口较少 可节省大量的引线和逻辑电路 因此用它来 组成一个测温系统 具有线路简单 在一根通信线 可以挂很多这样的数字温 度计 十分方便 DS18B20 的性能特点如下 独特的单线接口方式 DS18B20 在与微处理器连接时仅需要一条 口线即可实现微处理器与 DS18B20 的双向通讯 DS18B20 支持多点组网功能 多个 DS18B20 可以并联在唯一的三 线上 实现组网多点测温 DS18B20 在使用中不需要任何外围元件 全部传感元件及转换电 路集成在形如一只三极管的集成电路内 适应电压范围更宽 电压范围 3 0 5 5V 在寄生电源方式下可 由数据线供电 温范围 55 125 在 10 85 时精度为 0 5 零待机功耗 可编程的分辨率为 9 12 位 对应的可分辨温度分别为 0 5 0 25 0 125 和 0 0625 可实现高精度测温 在 9 位分辨率时最多在 93 75ms 内把温度转换为数字 12 位分辨 率时最多在 750ms 内把温度值转换为数字 速度更快 用户可定义报警设置 报警搜索命令识别并标志超过程序限定温度 温度报警条件 的 器件 测量结果直接输出数字温度信号 以 一线总线 串行传送给 CPU 同时可传送 CRC 校验码 具有极强的抗干扰纠错能力 负电压特性 电源极性接反时 温度计不会因发热而烧毁 但不 能正常工作 11 以上特点使 DS18B20 非常适用与多点 远距离温度检测系统 DS18B20 内部结构主要由四部分组成 64 位光刻 ROM 温度传感器 非挥 发的温度报警触发器 TH 和 TL 配置寄存器 DS18B20 的管脚排列 各种封装形 式如图 3 2 所示 DQ 为数据输入 输出引脚 开漏单总线接口引脚 当被用着 在寄生电源下 也可以向器件提供电源 GND 为地信号 VDD 为可选择的 VDD 引 脚 当工作于寄生电源时 此引脚必须接地 图 3 2 外部封装形式 图 图 3 3 所示图为引脚图 64 位 ROM 单 片 机 存储器和控制逻辑 高 速 缓 存 温度传感器 高温触发 TH 低温触发 TL 配置寄存器 8 位 CRC 发生 器 图 3 4 DS18B20 内部结构框图 3 3 显示电路的设计 百位 12 十位 9 个位 8 十分位 6 A 11 B 7 C 4 D 2 E 1 F 10 G 5 DP 3 DS18B20 采集的温度数据经单片机分析在该数码管上显示 3 4 温度调节设置按键电路 通过四个外围按键与单片机 AT89C52 直接相连 用户可根据需要设置自己 想要控制的正常范围内任意想要温度 3 5 复位电路 进行复位工作是单片机进入工作的状态的初始化操作 是 CPU 和系统中的其它 部件都处于一个确定初始状态 并从这个状态开始工作 另外当程序运行错误 或由于错误操作而是单片机进入锁死状态的时侯 也可以通过复位操作进行的 从新启动的操作 等到复位以后 单片机的计算机初始值被初始化 图 3 5 复位电路 3 6 时钟电路 对于每个系统工程的时钟电路 都是用于单片机工作所需要的时钟信号 单片 机只有在时钟信号的控制下 其各部件之间才能协调一致工作 时钟信号控制 着计算机的工作节奏 在单片机的 TXAL1 TXAL12 之间跨接晶体振荡器和微调电容 可以喝单 片机内部的振荡器构成一个稳定的自激振荡器 这就是单片机的时钟电路 这 种方式称之为内部的时钟源方式 电容 C4 和 C5 的主要作用是帮助振荡器起振 且振荡器大小对振荡频率有微调作用 在 80C51 系列中电容的大小 20 微法 另 外 振荡器的频率只要由石英晶振的频率来决定本次设计选用 12MHz 图 3 6 时钟电路 3 7 温度报警电路 本设计采软件处理报警 利用有源蜂鸣器进行报警输出 采用直流供电 当所测温度超过获低于所预设的温度时 数据口相应拉高电平 报警输出 报 警电路硬件连接见图 3 7 图 3 7 蜂鸣器电路连接图 四 系统软件设计四 系统软件设计 4 1 主程序设计 主程序模块主程序需要调用 4 个子程序 分别为数码管显示程序 温 度测试及处理子程序 报警子程序 中断设定子程序 各模块程序功能如下 数码管显示程序 向数码的显示送数 控制系统的显示部分 温度测试及处理程序 对温度芯片送过来的数据进行处理 进行判断 和显示 报警子程序 进行温度上下限判断及报警输出 中断设定程序 实现设定上下限报警功能 主程序流程图见图 4 1 图 4 2 DS18B20 初始化流程图 图 4 1 主程序流程图 4 2 温度检测装置设计 温度检测流程 DS18B20 在单片机控制下分三个阶段 18B20 初始化 初始化流程图见 4 2 读 18B20 时序 读 DS18B20 流程见图 4 3 写 18B20 时序 写 18B20 流程见图 4 4 发出 DS18B20 复位命令 发跳过 ROM 命令 发出度温度命令 读取操作 CRC 命令 9 字节完 CRC 效验 正确 移入温度暂存器 结束 图 4 3 读 DS18B20 流程图 DS18B20 写开始 设置串行位数为 8 DQ 清零 将 DQ 总线电平拉低 延时 15us 写入一位数据 延时 15us DQ 置 1 设置为恢复状态 8 为数据送完否 DS18B20 写入结束 图 4 4 写 DS18B20 流程图 4 3 中断设定子程序设计 中断模块采用了外中断和内中断套用方法 当设计需要实现上下限报警时 利用 INT0 口进行中断 set 键进行上下限报警温度设定 进入温度设定状态后 按一下温度设定键 首先会提示显示 UP 字母 表示要用户设定高温报 警温度 按 S3 键 表示本位数字 1 按 S4 表示移向下一位 如 果 4 位高温 设定完毕 则显示 DO 表示要用户设定低温报警温度 4 位低温设定完毕 如果用户设置的高温比设定的低温高的话则显示 ERRO 表示错误提示 同时 会有蜂鸣器及时报警提示 然后自动显示 UP 让用户重新进行温度设定 中断设定子程序流程图见下图 关于外部中断开内部中断 显示 UP SB S1 跳到下一 位 四位设定 完 显示 DO S3 S4 跳到下一 位 四位设定 完 设置温度比较 高温 低温 开外部中断关内部中断 显示 LED 图 4 5 中断设定子程序流程图 4 4 报警模块设计 报报警警程程序序 读读取取出出温温度度值值C 清清除除报报警警标标志志位位 C MAX C MIN 置置上上限限报报警警标标志志 置置下下限限报报警警标标志志 报报警警装装置置运运行行 是是否否有有参参数数报报警警 返返回回 Y Y N N Y 图 4 6 报警模块子程序流程图 五 调试及性能分析五 调试及性能分析 5 1 调试步骤调试步骤 调试分为硬件调试和软件调试 硬件调试主要是检测硬件电路是否有短路 断路 虚焊等 具体步骤及测试结 果如下 1 检查电源与地线是否全部连接上 用万用表对照电路原理图测试各导线是 否完全连接 测试结果所有连接线都已连接好 2 检验单片机的晶振是否起振 用示波器观察波形 测试结果波形都很好 3 检查各芯片的功能是否正常 检测按键的导通情况 测试结果正常 软件调试主要是程序调试 将整个温度计显示程序按照实现功能分为各子模块 进行调试 首先都要在实验台上进行调试 具体步骤如下 1 显示程序调试 在单片机实验课中我们已经做过 LED 显示实验 所以这部 分相对简单 很快便调试无误了 我们设计的硬件显示部分与实验台虽然并不 相同 但相差并不多 经改动后在单路板上也调试通过了 2 主程序 读出温度子程序 温度转换命令子程序 计算温度子程序和显示 数据刷新子程序等的调试 由于 DS18B20 与单片机采用串行数据传送 因此 对 DS18B20 进行读 写编程时 必须严格的保证读 写时序 否则将无法读取测 量结果 5 2 性能分析性能分析 省略 六 心得体会六 心得体会 通过本次课程设计

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论