2022年数字温度计的设计 .pdf
内 容 摘 要本文将介绍一种基于单片机控制的数字温度计,就是用单片机实现温度测量,传统的温度检测大多以热敏电阻为温度传感器,但热敏电阻的可靠性差,测量温度准确率低,而且必须经过专门的接口电路转换成数字信号才能由单片机进行处理。本次采用DS18B20 数字温度传感器来实现基于AT89S52单片机的数字温度计的设计用LCD数码管以串口传送数据, 实现温度显示 , 能准确到达以上要求,可以用于温度等非电信号的测量,主要用于对测温比较准确的场所,或科研实验室使用,能独立工作的单片机温度检测、温度控制系统已经广泛应用很多领域。索引关键词: 温度计 单片机 数字控制 DS18B20 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 1 页,共 15 页目录第一章绪论 . 11.1 前言 . 11.2 数字温度计设计方案. 11.3 总体设计框图 . 1第二章硬件电路设计 . 1主要芯片介绍 . 12.2 温度传感器 . 42.3 主板电路 . 52.4 显示电路 . 5第三章软件设计 . 63.1 主程序流程图 . 6读出温度子程序流程图. 63.3 温度转换命令子程序流程图. 73.4 计算温度子程序流程图. 83.5 显示数据刷新子程序流程图. 9第四章 Proteus仿真调试 . . 94.1 Proteus软件介绍 . . 94.2 本次设计仿真过程. 10后记 . 12参考文献 . 13精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 2 页,共 15 页-1- 数字温度计设计第一章绪论1.1 前言随着人们生活水平的不断提高, 单片机控制无疑是人们追求的目标之一,它所给人带来的方便也是不可否认的,其中数字温度计就是一个典型的例子,但人们对它的要求越来越高,要为现代人工作、科研、生活、提供更好的更方便的设施就需要从数单片机技术入手,一切向着数字化控制,智能化控制方向发展。随着时代的进步和发展,单片机技术已经普及到我们生活,工作,科研,各个领域,已经成为一种比较成熟的技术, 单片机已经在测控领域中获得了广泛的应用本设计所介绍的数字温度计与传统的温度计相比,具有读数方便,测温范围广,测温准确,其输出温度采用数字显示,该设计控制器使用单片机AT89C51 ,测温传感器使用DS18B20 ,用 LCD数码管以串口传送数据 , 实现温度显示 , 能准确到达以上要求。1.2 数字温度计设计方案在单片机电路设计中,大多都是使用传感器,所以这是非常容易想到的,所以可以采用一只温度传感器DS18B20 ,此传感器,可以很容易直接读取被测温度值,进行转换,就可以满足设计要求。1.3 总体设计框图温度计电路设计总体设计方框图如图1-1 所示,控制器采用单片机AT89C51 ,温度传感器采用 DS18B20 ,用 LCD液晶显示屏以串口传送数据实现温度显示:图 1-1 第二章硬件电路设计主要芯片介绍一 AT89C51的介绍选用的 AT89C51 在功能上最突出是的可以实现在线的编程。用于实现系统的总的控制。其主要功能特性列举如下:与 MCS-51 兼容精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 3 页,共 15 页-2- 4K 字节可编程FLASH存储器寿命: 1000 写 / 擦循环数据保留时间:10 年全静态工作:0Hz-24MHz 三级程序存储器锁定1288 位内部RAM 32 可编程I/O 线两个16 位定时器5 个中断源可编程串行通道低功耗的闲置和掉电模式片内振荡器和时钟电路二 AT89C51各引脚功能介绍VCC :供 电电 压。GND :接 地。P0 口: P0 口为一 个 8 位漏 级开 路双 向 I/O 口, 每脚 可吸 收 8TTL 门电 流。 当P0 口的 管脚 第一 次 写 1 时 ,被 定义 为高阻输 入。P1 口: P1 口是一 个内部 提供 上拉 电阻 的 8 位 双向 I/O 口 , P1 口缓 冲器 能接收输 出 4TTL 门 电流 。P1 口管脚 写 入 1 后, 被内 部上 拉为 高 ,可 用作 输入 ,P1 口被外 部下 拉为 低电 平 时, 将输 出电 流, 这 是由 于内 部上 拉的 缘 故。 在 FLASH编程和校 验时 , P1口 作为第 八位 地址 接收 。P2 口: P2 口为一 个内部 上拉 电阻 的 8 位 双向 I/O 口 ,P2 口缓 冲器 可接 收,输 出 4 个 TTL 门电 流 ,当 P2口 被写 “1”时, 其管 脚被 内部 上 拉电 阻拉 高, 且作为输 入。 并因 此作 为 输入 时, P2 口的 管 脚被 外部 拉低 ,将 输 出电 流。 这是 由于内部 上拉 的缘 故。 P2 口当 用于 外部 程序 存储 器或 16 位地址 外部 数据 存储 器进 行存取 时, P2 口输 出地址 的高 八位 。在 给 出地 址 “1”时, 它利用 内部 上拉 优势 ,当对 外部 八位 地址 数 据存 储器 进行 读写 时 , P2 口 输出 其特 殊 功能 寄存 器的 内容 。P2 口在 FLASH编 程和 校验 时接 收高 八 位地 址信 号和 控制 信 号。P3 口: P3 口管脚 是 8 个带 内部 上拉 电阻 的双 向 I/O 口, 可接 收输 出 4 个 TTL门电 流。 当 P3 口写 入“1”后, 它们 被内部 上拉 为高 电平 , 并用 作输 入。 作为 输入, 由于 外部 下拉 为 低电 平, P3 口将 输 出电 流 ILL 这 是由于 上拉 的缘 故。P3 口也 可作 为 AT89C51的一 些特 殊功 能 口, 如下 表所 示:口管 脚备选 功能P3.0 RXD串行 输入 口P3.1 TXD 串行 输出 口精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 4 页,共 15 页-3- P3.2 /INT0外 部中 断 0P3.3 /INT1外 部中 断 1P3.4 T0 记 时器 0 外部 输入 P3.5 T1 记 时器 1 外部 输入 P3.6 /WR 外部 数据 存储 器写 选通 P3.7 /RD 外部 数据 存储 器读 选通 P3 口同 时为 闪烁 编程和 编程 校验 接收 一些控 制信 号。RST :复 位输 入。 当振荡 器复 位器 件时 , 要保 持 RST脚两 个机 器周 期的 高电平时 间。ALE/PROG : 当访 问外 部存 储器 时, 地址 锁存允 许的 输出 电平 用于锁 存地 址的地 位字 节。 在 FLASH编程 期间 ,此 引 脚用 于输 入编 程脉 冲 。在 平时 , ALE端以不变 的频 率周 期输 出 正脉 冲信 号, 此频 率 为振 荡器 频率 的 1/6 。因 此它 可用 作对外部 输出 的脉 冲或 用 于定 时目 的。 然而 要 注意 的是 :每 当用 作 外部 数据 存储 器时, 将跳 过一 个 ALE脉冲 。如 想禁 止 ALE的输 出可 在 SFR8EH地址 上置 0。 此时 , ALE 只有 在执 行 MOVX ,MOVC 指 令 是 ALE才起 作用 。另 外, 该引 脚被 略微 拉高。 如果 微处 理器 在 外部 执行 状态 ALE禁 止, 置位 无效 。/PSEN: 外部 程序 存储器 的选 通信 号。 在 由外 部程 序存 储器 取 指期 间, 每个机器 周期 两次 /PSEN有效 。但 在访 问外 部 数据 存储 器时 ,这 两 次有 效的 /PSEN信号将 不出 现。/EA/VPP:当 /EA 保持 低电 平时 ,则 在此 期 间外 部程 序存 储器 0000H-FFFFH ,不 管是 否 有内 部程 序存 储器 。 注意 加密 方式 1 时, /EA 将内部 锁定 为RESET ;当 /EA 端保 持 高电 平时 , 此 间内 部 程序 存储 器。 在 FLASH编程 期间 ,此引脚 也用 于施 加 12V编程 电源 VPP 。XTAL1: 反向 振荡 放大器 的输 入及 内部 时 钟工 作电 路的 输入 。XTAL2: 来自 反向 振荡器 的输 出。图 2-1 振荡器特性 : XTAL1 和 XTAL2分别 为反 向 放大 器的 输入 和输 出 。该 反向 放大精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 5 页,共 15 页-4- 器可 以配 置为 片内 振 荡器 。2.2 温度传感器一 DS18B20介绍DS18B20 是 Dallas 公司推出的数字温度测控器件。 2.7 5.0V供电电压,测量温度范围为 - 55+125 ,9 位数字量表示温度值,分辨率为0.5。在 0+70精确度为0.5, - 400和+70+85 精确度为 1, -55- 40和+85 +125精确度为 2。 TH和 TL寄存器中的温度报警限设定值存放在非易失性存储器中,掉电后不会丧失。通过三线串行接口,完成温度值的读取和TH 、TL的设定。 DS18B20 的外围接线简单,使用灵活。使用时请注意它的测量范围及精度能否满足要求。用作热继电器使用时必须写入控制寄存器操作模式和TH 、TL寄存器的温度设定值。二 DS18B20 引脚功能说明图 2-2 DS1620采用 8 脚 DIP 封装或 8 脚 SOIC封装。引脚排列如图2-2 所示,引脚功能说明如下所列。DS18B20 引脚功能说明1DQ 三线制的数据输入 / 输出2CLK/CONV 三线制的时钟输入和标准转换输入3RST 三线制的复位输入4GND 地5TCOM 温度高/ 低限触发输出6TLOW 温度低限触发输出7THIGH 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 6 页,共 15 页-5- 温度高限触发输出8VDD 3 5V电源2.3 主板电路系统整体硬件电路包括,传感器数据采集电路,温度显示电路,单片机主板电路等,如图 2-3 所示:图 2-3 2.4 显示电路显示电路是使用的串口显示,这种显示最大的优点就是使用口资源比较少,只用p2口串口的发送和接收, LCD液晶显示屏显示,显示比较清晰。温度显示电路如图2-4 所示:图 2-4 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 7 页,共 15 页-6- 第三章软件设计3.1 主程序流程图主程序的主要功能是负责温度的实时显示、读出并处理DS1620的测量的当前温度值,温度测量每1s 进行一次。这样可以在一秒之内测量一次被测温度,其程序流程见图3-1 示:图 3-1 读出温度子程序流程图初始化调用显示子程序1S到?初次上电读出温度值温度计算处理显示数据刷新发温度转换开始命令N Y N Y 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 8 页,共 15 页-7- 图 3-2 读出温度子程序的主要功能是读出RAM 中的 9 字节,在读出时需进行CRC 校验,校验有错时不进行温度数据的改写。其程序流程图如图3-2 所示:3.3 温度转换命令子程序流程图温度转换命令子程序主要是发温度转换开始命令,当采用12 位分辨率时转换时间约为 750ms ,在本程序设计中采用1s 显示程序延时法等待转换的完成。温度转换命令子程序流程图如上图,图3-3 所示:Y 发 DS18B20复位命令发跳过 ROM命令发读取温度命令读取操作, CRC 校验9 字节完?CRC校验正确?移入温度暂存器结束N N Y 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 9 页,共 15 页-8- 图 3-3 3.4 计算温度子程序流程图计算温度子程序将RAM 中读取值进行 BCD 码的转换运算,并进行温度值正负的判定,其程序流程图如图3-4 所示:图 3-4 开始温度零下 ? 温度值取补码置“”标志计算小数位温度 BCD值计算整数位温度 BCD值结束置“+”标志N Y 发DS18B20复位命令发跳过 ROM命令发温度转换开始命令结束精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 10 页,共 15 页-9- 3.5 显示数据刷新子程序流程图显示数据刷新子程序主要是对显示缓冲器中的显示数据进行刷新操作,当最高显示位为 0 时将符号显示位移入下一位。程序流程图如图3-5 所示:图 3-5 第四章Proteus仿真调试4.1 Proteus 软件介绍一 Proteus软件具有其它EDA工具软件的功能。这些功能是:1原理布图2PCB自动或人工布线3SPICE 电路仿真二革命性的特点1互动的电路仿真用户甚至可以实时采用诸如RAM , ROM ,键盘,马达,LED, LCD ,AD/DA,部分 SPI 器件,部分IIC器件。2仿真处理器及其外围电路可以仿真51 系列、 AVR 、PIC、ARM 、等常用主流单片机。还可以直接在基于原理图的虚拟原型以上编程,再配合显示及输出,能看到运行后输入输出的效果。温度数据移入显示寄存器十位数 0?百位数0?十位数显示符号百位数不显示百位数显示数据不显示符号结束N N Y Y 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 11 页,共 15 页-10- 4.2 本次设计仿真过程一 创建原理图启动 Proteus软件,单击挑选元件按钮,在元件库中选出所需元器件,出现如图4-1所示:图 4-1 二 绘制的仿真原理图如4-2 所示:图 4-2三 系统调试精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 12 页,共 15 页-11- 双击单片机出现以下图所示画面图4-3,在 Program File一栏中选取仿真项目的源程序代码,点击OK 。图 4-3 四 开始仿真单击 Play 按钮,进入仿真状态,出现以下图4-4 所示图 4-4 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 13 页,共 15 页-12- 后记经过将近几周的毕业设计,终于完成了我的数字温度计的设计,虽然没有完全到达设计要求,但从心底里说,还是高兴的,毕竟这次设计把仿真成功做了出来,高兴之余不得不深思呀!在本次设计的过程中,我发现很多的问题,虽然以前还做过这样的设计但这次设计真的让我长进了很多,单片机毕业设计重点就在于软件算法的设计,需要有很巧妙的程序算法,。此外,本次毕业设计也使我对单片机技术有了更进一步的了解,实际操作和课本上的知识有很大的联系,又高于课本,一个看似很简单的电路,要动手做出来就比较困难了,因为是设计让我们在以后的学习中要注意这点,要把课本上所学的知识跟实际联系起来。有好多的东西,只有我们去试着做了,才能真正的掌握,只学习理论有些东西是很难理解的,更谈不上掌握,同时本次电路的设计稳固了所学知识,也使我们把理论与实际从真正的意义上结合起来了,增强了学习的兴趣,考验了我们借助书店、互联网搜索、查阅相关资料,以及综合能力。从这次的毕业设计中,我真真正正的意识到,在以后的学习中,要理论联系实际,把我们所学的理论知识用到实际当中,学习单机片机更是如此,程序只有在经常的写与读的过程中才能提高,这就是我在这次毕业设计中的最大收获。毕业设计是对大学三年所学知识的一次综合运用和检阅,同时也对自学能力提出很高的要求。虽然本次设计顺利完成了,但我觉得自己的理论知识掌握的不够扎实,有很多不足和欠缺的地方,希望老师多多批评指正。在以后的实践学习中我会时刻提醒自己做到认真学习不求最好只求更好。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 14 页,共 15 页-13- 参考文献1 戴军,袁惠新 . 膜技术在含油废水处理中的应用J. 膜科学与技术, 2002,222:59-64 2 毛侠,孙云 . 和谐图案的自动生成研究A. 第一届中国情感计算及智能交互学术会议论文集 C. 北京:中国科学院自动化研究所,2003:277-279. 3 王湛. 膜别离技术基础 M. 北京: 化学工业出版社, 2000:14-21,30. 4 张志祥 . 间断动力系统的随机扰动及其在守恒律方程中的应用D. 北京: 北京大学数学学院 ,1998. 5 河北绿洲生态环境科技 . 一种荒漠化地区生态植被综合培育种植方法P: 中国,01129210.5P/OL. 2001-10-24 6 GB/T16159-1996,汉语拼音证词法基本规则 S. 北京:中国标准出版社, 1996. 7 毛侠. 情感工学破解“舒服之谜”N. 光明日报, 2004-04-17 B1. 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 15 页,共 15 页