基于DS18B20数字温度计设计.doc_第1页
基于DS18B20数字温度计设计.doc_第2页
基于DS18B20数字温度计设计.doc_第3页
基于DS18B20数字温度计设计.doc_第4页
基于DS18B20数字温度计设计.doc_第5页
免费预览已结束,剩余15页可下载查看

下载本文档

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

文档简介

武汉理工大学华夏学院 信信息息工工程程课课程程设设计计报报告告书书 课课 程程 名名 称称 电子测量技术电子测量技术 课程设计总评成绩课程设计总评成绩 学生姓名 学学生姓名 学 号号 学学 生生 专专 业业 班级班级 指指 导导 教教 师师 姓名姓名 课程设计起止日期课程设计起止日期 课程设计基本要求课程设计基本要求 课程设计是工科学生十分重要的实践教学环节 通过课程设计 培养学生综 合运用先修课程的理论知识和专业技能 解决工程领域某一方面实际问题的能力 课程设计报告是科学论文写作的基础 不仅可以培养和训练学生的逻辑归纳能力 综合分析能力和文字表达能力 也是规范课程设计教学要求 反映课程设计教学 水平的重要依据 为了加强课程设计教学管理 提高课程设计教学质量 特拟定 如下基本要求 1 课程设计教学一般可分为设计项目的选题 项目设计方案论证 项目设 计结果分析 答辩等 4 个环节 每个环节都应有一定的考核要求和考核成绩 2 课程设计项目的选题要符合本课程设计教学大纲的要求 该项目应能突 出学生实践能力 设计能力和创新能力的培养 该项目有一定的实用性 且学生 通过努力在规定的时间内是可以完成的 课程设计项目名称 目的及技术要求记 录于课程设计报告书一 二项中 课程设计项目的选题考核成绩占 10 左右 3 项目设计方案论证主要包括可行性设计方案论证 从可行性方案中确定 最佳方案 实施最佳方案的软件程序 硬件电路原理图和 PCB 图 项目设计方案 论证内容记录于课程设计报告书第三项中 项目设计方案论证主要考核设计方案 的正确性 可行性和创新性 考核成绩占 30 左右 4 项目设计结果分析主要包括项目设计与制作结果的工艺水平 项目测试 性能指标的正确性和完整性 项目测试中出现故障或错误原因的分析和处理方法 项目设计结果分析记录于课程设计报告书第四项中 考核成绩占 25 左右 5 学生在课程设计过程中应认真阅读与本课程设计项目相关的文献 培养 自己的阅读兴趣和习惯 借以启发自己的思维 提高综合分和理解能力 文献阅 读摘要记录于课程设计报告书第五项中 考核成绩占 10 左右 6 答辩是课程设计中十分重要的环节 由课程设计指导教师向答辩学生提 出 2 3 个问题 通过答辩可进一步了解学生对课程设计中理论知识和实际技能 掌握的程度 以及对问题的理解 分析和判断能力 答辩考核成绩占 25 左右 7 学生应在课程设计周内认真参加项目设计的各个环节 按时完成课程设计 报告书交给课程设计指导教师评阅 课程设计指导教师应认真指导学生课程设计 全过程 认真评阅学生的每一份课程设计报告 给出课程设计综合评阅意见和每 一个环节的评分成绩 百分制 最后将百分制评分成绩转换为五级分制 优秀 良好 中等 及格 不及格 总评成绩 8 课程设计报告书是实践教学水平评估的重要资料 应按课程 班级集成 存档交实验室统一管理 一 课程设计项目名称 基于 DS18B20 数字温度计设计 二 项目设计目的及技术要求 设计目的 利用 DS18B20 温度传感器 以单片机实验开发板作为数据的采集 处理 设计一个温度显示及调节系统 系统能及时显示当前温度 技术要求 1 温度检测范围 50 150 2 三位半数码管显示 三 项目设计方案论证 可行性方案 最佳方案 软件程序 硬件电路 原理图和 PCB 图 1 1 设计原理 设计原理 温度控制系统采用 AT89C52 八位机作为微处理单元进行控制 采用 4X4 键盘把 设定温度的最高值和最低值存入单片机的数据存储器 还可以通过键盘完成温度检 测功能的转换 温度传感器把采集的信号与单片机里的数据相比较来控制温度控制 器 系统框图如图 1 1 温度传感器 显示器 及电源电路等 图 1 1 系统框图 根据系统的设计要求 选择 DS18B20 作为本系统的温度传感器 选择单片机 AT89C52 为测控系统的核心来完成数据采集 处理 显示 功能 选用数字温度传 感器 DS18B20 省却了采样 保持电路 运放 数 模转换电路以及进行长距离传 输时的串 并转换电路 简化了电路 缩短了系统的工作时间 降低了系统的硬件 成本 该系统的总体设计思路如下 温度传感器 DS18B20 把所测得的温度发送到 AT89C52 单片机上 经过 51 单片机处理 将把温度在显示电路上显示 本系统显示器为 LCD 12864 液晶模块 中央微处理器 AT89C52RD STC89 系列单片机是 MCS 51 系列单片机的派生产品 它 们在指令系统 硬件结构和片内资源上与标准 8052 单片机完全兼容 DIP40 封装系 列与 8051 为 pin to pin 兼容 STC89 系列单片机高速 最高时钟频率 90MHz 低功 耗 在系统 在应用可编程 ISP IAP 不占用户资源 此外 AT89C52 设计和配置了振荡频率 空闲模式下 CPU 暂停工作 而 RAM 定时计 数器 串行口 外中断系统可继续工作 掉电模式冻结振荡器而保存 RAM 的数据 单片机 AT89C52 显示电路 温度传感器 DS18B20 键 盘 设 定 停止芯片其它功能直至外中断激活或硬件复位 同时该芯片还具有 PDIP TQFP 和 PLCC 等三种封装形式 AT89C52 单片机综合了微型处理器的基本功能 按照实际需 要 同时也考虑到设计成本与整个系统的精巧性 所以在本系统中就选用价格较低 工作稳定的 AT89C52 单片机作为整个系统的控制器 2 2 设计方案 设计方案 因为设计要求中明确阐述了元器件的选用 所以在这里方案的设计就比较唯一 了 不需要再做选择了 所以本设计中 选用实验室中具备的 mini 80E 单片机开发 板和 DS18B2 温度传感器来做设计 采用数字单片智能温度传感器 要实现温度显示 温度控制基于 AT89C51 单片 机 用键盘把设定温度的最高值和最低值存入单片机的数据存储器 还可以通过键 盘完成温度检测功能的转换 采用温度传感器 DS18B20 把采集的信号与单片机里的 数据相比较来控制温度控制器 3 3 硬件电路 硬件电路 本温度计大体分三个工作过程 首先 由 DS18B20 温度传感器芯片测量当前的 温度 并将结果送入单片机 然后 通过 AT89C51 单片机芯片对送来的测量温度读 数进行计算和转换 并将此结果送入 LED 显示模块 最后 数码管显示温度数据 本电路主要由 DS18820 温度传感器芯片 数码管显示模块和 AT89C51 单片机芯片组 成 其中 DS18B20 温度传感器芯片采用 一线制 与单片机相连 它独立地完成 温度测量以及将温度测量结果送到单片机的工作 3 13 1 AT89C51AT89C51 AT89C51 是一种低功耗 高性能 CMOS8 位微控制器 具有 8K 在系统可编程 Flash 存储器 使用 Atmel 公司高密度非易失性存储器技术制造 片上 Flash 允许 程序存储器在系统可编程 亦适于常规编程器 在单芯片上 拥有灵巧的 8 位 CPU 和在系统 可编程 Flash 使得 AT89C51 为众多嵌入式控制应用系统提供高灵活 超 有效的解决方案 AT89C52 具有以下标准功能 8k 字节 Flash 256 字节 RAM 32 位 I O 口线 看门狗定时器 2 个数据指针 三个 16 位 定时器 计数器 一个 6 向量 2 级中断结构 全双工串行口 片内晶振 及时钟电路 另外 AT89C51 可降至 0Hz 静态逻 辑操作 支持 2 种软件可选择节电 模式 空闲模式下 CPU 停止工作 允许 RAM 定时器 计数器 串口 中断继续工 作 掉电保护方式下 RAM 内容被保存 振荡器被冻结 单片机一切工作停止 直 到下一个中断或硬件复位为止 8 位微控制器 8K 字节在系统可编程 Flash AT89C51 3 23 2 显示电路的设计显示电路的设计 选用 LCD 根据显示内容和方式的不同可以分为 数显 LCD 点阵字符 LCD 点阵图形 LCD 在 此设计中我们采用点阵字符 LCD 这里采用常用的 20 个字的 12864 液晶模块 12864 采用标准的 20 脚接口 其中 表一 12864 接口说明 EA VP 31 X1 19 X2 18 RESET 9 RD 17 WR 16 INT0 12 INT1 13 T0 14 T1 15 P10 1 P11 2 P12 3 P13 4 P14 5 P15 6 P16 7 P17 8 P00 39 P01 38 P02 37 P03 36 P04 35 P05 34 P06 33 P07 32 P20 21 P21 22 P22 23 P23 24 P24 25 P25 26 P26 27 P27 28 PSEN 29 ALE P 30 TXD 11 RXD 10 U1 STC89C52RD P10 P26 P27 P36 P37 P00 P01 P02 P03 P04 P05 P06 P07 RD WR P10 P26 P27 P01 P02 P03 P04 P05 P06 P07 P00 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 J1 12864 LCD12864 REST REST CS1 CS2CS1 CS2 P36 P37 RD WR GND VCC VCC GND LED A LED K 图 3 1 液晶显示电路图 3 33 3 DS18B20DS18B20 的测温原理的测温原理 如图所示 图中低温度系数振荡器的振荡频率受温度影响很小 用于产生固定 频率的脉冲信号送给减法计数器 1 高温度系数振荡器随温度变化其振荡频率明显 改变 所产生的信号作为减法计数器 2 的脉冲输入 图 3 2 DS18B20 测温原理图 DALLAS 最新单线数字温度传感器 DS18B20 是一种新型的 一线器件 其体积更 小 更适用于多种场合 且适用电压更宽 更经济 其最大的特点是单总线数据传 输方式 DS18B20 的数据 I O 均由同一条线来完成 DS18B20 的电源供电方式有 2 种 外部供电方式和寄生电源方式 工作于寄生电源方式时 VDD 和 GND 均接地 他在需要远程温度探测和空间受限的场合特别有用 原理是当 1 Wire 总线的信号 线 DQ 为高电平时 窃取信号能量给 DS18B20 供电 同时一部分能量给内部电容充 电 当 DQ 为低电平时释放能量为 DS18B20 供电 但寄生电源方式需要强上拉电路 软件控制变得复杂 特别是在完成温度转换和拷贝数据到 E2PROM 时 同时芯片的 性能也有所降低 因此 在条件允许的场合 尽量采用外供电方式 无论是内部寄 生电源还是外部供电 I O 口线要接 5K 左右的上拉电 在这里采用前者方式供电 图 3 DS18B20 与单片机接口原理 在硬件上 DS18B20 与单片机的连接有两种方法 一种是 VCC 接外部电源 GND 接地 I O 与单片机的 I O 线相连 另一种是用寄生电源供电 此时 UDD GND 接地 I O 接单片机 I O 无论是内部寄生电源还是外部供电 I O 口线要接 5K 左右的 上拉电阻 我们采用的是第一种连接方法 如图示 把 DS18B20 的数据线与单片机的 13 管脚连接 再加上上拉电阻 1 2 3 4 5 6 7 8 40 13 12 V CC P10 P11 P12 P13 P14 P15 P16 P17 IN T 0 IN T 1 31E A V P 19 18 X TA L1 X TA L2 20 17 16 9R ES ET R D W R G ND 39 38 37 36 35 34 33 32 P00 P01 P02 P03 P04 P05 P06 P07 28 27 26 25 24 23 22 21P20 P21 P22 P23 P24 P25 P26 P27 29 15 14T 0 T 1 30 11 10R XT T XD A LE PRO G PSE N U 2 A T8 9S 51 Y 1 11 0 592 M C 1 22 P C 2 22 P G ND C 3 10 6 R 1 8 2K 5 V C5 1 2 3 D S1 D S1 8B 20 R 2 4 7K V C5 图 3 3 硬件搭接图 4 4 软件方面 软件方面 系统程序主要包括主程序 读出温度子程序 温度转换命令子程序 计算温度 子程序 显示数据刷新子程序等等 主程序 主程序的主要功能是负责温度的实际显示 读数并处理DS18B20的测量温度 值 温度测量每1s进行一次 流程图如下 图4 1 主程序流程图 4 14 1 读出温度子程序 读出温度子程序 读出温度子程序的主要功能是读出RAM中的9字节 在读出时需进行CRC检验 校 验有错时不进行温度数据的改写 流程图如下 图4 2 读出温度子程序流程图 4 24 2 温度转换命令子程序 温度转换命令子程序 温度转换命令子程序主要是发温度转换开始命令 当采 用12位分辨率知转换时间约750ms 在本程序设计中采用1s显示程序延时法等待转换 的完成 温度转换命令子程序流程图如图 图 4 3 温度转换命令子程序流程图 4 34 3 计算温度子程序 计算温度子程序 计算温度子程序将 RAM 中读取值进行 BCD 码的转换运算 并 进行温度值正负的判定 其程序流程图如下 图 4 4 计算温度子程序流程图 4 44 4 显示数据刷新子程序 显示数据刷新子程序 显示数据刷新子程序主要是对显示缓冲器中的显示数据 进行刷新操作 当最高显示位为 0 将符号显示位移入下一位 程序流程图如下 图 4 5 显示数据刷新子程序流程图 4 54 5 程序如下 程序如下 液晶显示应用源程序 include define uchar unsigned char define uint unsigned int sbit DQ P1 6 ds18b20 与单片机连接口 sbit RS P1 0 sbit RW P1 1 sbit EN P1 2 unsigned char code str1 temperature unsigned char code str2 uchar data disdata 5 uint tvalue 温度值 uchar tflag 温度正负标志 lcd1602 程序 void delay1ms unsigned int ms 延时 1 毫秒 不够精确的 unsigned int i j for i 0 i ms i for j 0 j0 i DQ 0 给脉冲信号 dat 1 DQ 1 给脉冲信号 if DQ dat 0 x80 delay 18B20 10 return dat void ds1820wr uchar wdata 写数据 unsigned char i 0 for i 8 i 0 i DQ 0 DQ wdata delay 18B20 10 DQ 1 wdata 1 read temp 读取温度值并转换 uchar a b ds1820rst ds1820wr 0 xcc 跳过读序列号 ds1820wr 0 x44 启动温度转换 ds1820rst ds1820wr 0 xcc 跳过读序列号 ds1820wr 0 xbe 读取温度 a ds1820rd b ds1820rd tvalue b tvalue 8 tvalue tvalue a if tvalue 0 x0fff tflag 0 else tvalue tvalue 1 tflag 1 tvalue tvalue 0 625 温度值扩大 10 倍 精确到 1 位小数 return tvalue void ds1820disp 温度值显示 uchar flagdat disdata 0 tvalue 1000 0 x30 百位数 disdata 1 tvalue 1000 100 0 x30 十位数 disdata 2 tvalue 100 10 0 x30 个位数 disdata 3 tvalue 10 0 x30 小数位 if tflag 0 flagdat 0 x20 正温度不显示符号 else flagdat 0 x2d 负温度显示负号 if disdata 0 0 x30 disdata 0 0 x20 如果百位为 0 不显示 if disdata 1 0 x30 disdata 1 0 x20 如果百位为 0 十位为 0 也不显示 wr com 0 xc0 wr dat flagdat 显示符号位 wr com 0 xc1 wr dat disdata 0 显示百位 wr com 0 xc2 wr dat disdata 1 显示十位 wr com 0 xc3 wr dat disdata 2 显示个位 wr com 0 xc4 wr dat 0 x2e 显示小数点 wr com 0 xc5 wr dat disdata 3 显示小数位 主程序 void main init play 初始化显示 while 1 read temp 读取温度 ds1820disp 显示 四 项目设计结果分析 分析试验过程中获得的数据 波形 现象或 问题的正确性和必然性 分析产生不正确结果的原因和处理方法 本设计是以 STC89C52RD 为核心 利用软硬件相结合的自动检测的典型例子 经过最近的方案论证 系统的硬件和软件的设计 系统的调试 查阅了大量的关于 传感器 单片机及其接口电路 以及检测方面的理论 经过了一番特殊的体验后 经历了失败的痛苦 也尝到了成功的喜悦 第一次靠用所学的专业知识来解决问题 检查了自己的知识水平 使我对自己有一个全新的认识 通过这次毕业设计 不仅 锻炼自己分析问题 处理问题的能力 还提高了自己的动手能力 这些培养和锻炼 对于我们这些即将走向工作岗位的大学生来说 是很重要的 这次课程设计基本的完成了任务书的要求 实现了温度的检测 通过测试表明 系统的设计是正确的 可行的 但是由于设计者的设计经验和知识水平有限 系统 还存在许多不足和缺陷 五 参考文摘 相关文摘不少于 5 篇 记录每篇文献的作者姓名 文献 名称 文献发行城市 文献出版社 出版年 文献内容摘要 每篇不少 于 100 字 1 汤建英 智能仪表综合训练设计 这是汤建英学长在其指导老师李刚的帮助下针对单片机构建温度仪表的设计 本人从中获得了大量的设计信息与思路 例如 DS18B20 与单片机的的连接原理和工 作流程等等 2 惠世科技实训平台 51 部分实验指导书 本设计中涉及到得程序编写和框图 都是从其中的实验四 DS18B20 实验中通过 改编其中所提供的原代码而获得的 3 李朝青 单片机原理及

温馨提示

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

评论

0/150

提交评论