单片机设计数字温度计设计

上传人:lizhe****0001 文档编号:44884550 上传时间:2018-06-14 格式:DOC 页数:19 大小:453KB
返回 下载 相关 举报
单片机设计数字温度计设计_第1页
第1页 / 共19页
单片机设计数字温度计设计_第2页
第2页 / 共19页
单片机设计数字温度计设计_第3页
第3页 / 共19页
单片机设计数字温度计设计_第4页
第4页 / 共19页
单片机设计数字温度计设计_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《单片机设计数字温度计设计》由会员分享,可在线阅读,更多相关《单片机设计数字温度计设计(19页珍藏版)》请在金锄头文库上搜索。

1、单片机设计数字温度计摘要摘要温度是日常生活中无时不在的物理量,温度的控制在各个领域都有积极的意义。很多行业中都有大量的用电加热设备,如用于热处理的加热炉,用于融化金属的坩锅电阻炉及各种不同用途的温度箱等,采用单片机对它们进行控制不仅具有控制方便、简单、灵活性大等特点,而且还可以大幅度提高被控温度的技术指标,从而能够大大提高产品的质量。因此,智能化温度控制技术正被广泛地采用。随着现代信息化技术的飞速发展和传统工业改造的逐步实现,能独立工作的温度检测系统已广泛应用于各种不同的领域。本文介绍了一个基于STC89C52 单片机和数字温度传感器 DS18B20 的测温系统,并用 LED 数码管显示温度值

2、,易于读数。系统电路简单、操作简便,能任意设定报警温度并可查询最近的 10 个温度值,系统具有可靠性高、成本低、功耗小等优点。本设计以 STC89C52RC 单片机为控制核心,由实时时钟芯片 DS1302 和数字温度传感器 DS18B20 构成了一个高温和低温时,分别对相应的器件进行控制的系统。详细地介绍了整个系统的硬件组成结构、工作原理和系统的软件程序设计,重点阐述了时钟模块、显示模块、温度检测模块及相关控制模块等的模块化设计思路与制作。系统采用液晶 LCD1602 作为显示器,具有实时时间显示、环境温度显示,显示系统连续工作前 24 小时整点的温度值。在本设计中,软件程序均采用 C 语言编

3、写,便于移植与升级。关键词:单片机 数字温度传感器 温度计1目录一、设计要求.1 1.1 基本要求.1 1.2 扩展功能 .1 二、 总体方案设计.1 2.1 方案论证 .1 2.1.1 方案一.1 2.1.2 方案二.1 2.2 总体设计框图 .1 三、 硬件设计.2 3.1 单片机系统 .2 3.2 数字温度传感器模块 .3 3.2.1 DS18B20 性能 .3 3.2.2 DS18B20 外形及引脚说明 .4 3.2.3 DS18B20 接线原理图 .4 3.2.4 DS18B20 时序图 .4 3.2.5 数据处理.6 3.3 显示电路 .7 3.4 声光报警电路 .7 3.5 键盘

4、输入电路 .8 四、软件设计.8 4.1 主程序模块 .8 4.2 读温度值模块 .9 4.3 中断模块 .11 4.4 温度查询模块 .12 4.5 温度设定、报警模块 .13 4.6 数码管驱动模块 .15 五、总结.16 参考文献:.171一、一、设计要求设计要求1.11.1 基本要求基本要求实现实时温度显示,测温范围 0500C,误差 50C 以内。1 1.2.2 扩展功能扩展功能温度报警,能任意设定温度范围实现声光报警;每隔 10 分钟记录一次温度数据, 至少能查询过去 10 个时刻的温度情况。二、二、 总体方案设计总体方案设计2 2.1.1 方案论证方案论证2 2.1.1.1.1

5、方案一方案一由于本设计是测温电路,可以使用热敏电阻之类的器件,将随被测温度变 化的电压或电流采样,进行 A/D 转换后就可以用单片机进行数据处理,实现温 度显示。这种设计需要用到 A/D 转换电路,增大了电路的复杂性,而且要做到 高精度也比较困难。2 2.1.2.1.2 方案二方案二考虑到在单片机属于数字系统,容易想到数字温度传感器,可选用 DS18B20 数字温度传感器,此传感器为单总线数字温度传感器,起体积小、构成的系统 结构简单,它可直接将温度转化成串行数字信号给单片机处理,即可实现温度 显示。另外 DS18B20 具有 3 引脚的小体积封装,测温范围为-55+125 摄氏度, 测温分辨

6、率可达 0.0625 摄氏度,其测量范围与精度都能符合设计要求。 以上两种方案相比较,第二种方案的电路、软件设计更简单,此方案设计 的系统在功耗、测量精度、范围等方面都能很好地达到要求,故本设计采用方 案二。2 2.2.2 总体设计框图总体设计框图本方案设计的系统由单片机系统、数字温度传感器、LED 显示模块、按键控 制模块、温度报警模块组成,其总体架构如下图 1。2图 1 系统总体方框图三、三、 硬件设计硬件设计3 3.1.1 单片机系统单片机系统1. 本设计采用 STC89C52 单片机作为控制器,完成所有功能的控制,包括:DS18B20 数字温度传感器的初始化和读取温度值 LED 数码管

7、显示驱动与控制 按键识别和响应控制 温度设置和报警 温度值的存储和读取 2. 单片机系统电路原理图:单单 片片 机机测温电路按键输入电路时钟、复位电路驱动电路显示电路报警电路3图 2 单片机系统原理图3 3.2.2 数字温度传感器模块数字温度传感器模块3 3.2.1.2.1 DS18B20DS18B20 性能性能独特的单线接口仅需一个端口引脚进行通信 简单的多点分布应用 无需外部器件 可通过数据线供电 零待机功耗 测温范围-55+125,以 0.5递增 可编程的分辨率为 912 位,对应的可分辨温度分别为 0.5、 0.25、0.125和 0.0625 温度数字量转换时间 200ms,12 位

8、分辨率时最多在 750ms 内把温度 转换为数字 应用包括温度控制、工业系统、消费品、温度计和任何热感测系统 负压特性:电源极性接反时,传感器不会因发热而烧毁,但不能正 常工作43 3.2.2.2.2 DS18B20DS18B20 外形及引脚说明外形及引脚说明图 3 DS18B20 外形及引脚GND:地 DQ:单线运用的数据输入/输出引脚 VD:可选的电源引脚3 3.2.3.2.3 DS18B20DS18B20 接线原理图接线原理图单总线通常要求接一个约 4.7K 左右的上拉电阻,这样,当总线空闲时, 其状态为高电平。图 4 DS18B20 接线原理图3 3.2.4.2.4 DS18B20DS

9、18B20 时序图时序图主机使用时间隙来读写 DS18B20 的数据位和写命令字的位。 1.1. 初始化时序如下图:5图 5 DS18B20 初始化时序2.2. DS18B20 读写时序:图 6 DS18B20 读写时序63 3.2.5.2.5 数据处理数据处理高速暂存存储器由 9 个字节组成,其分配如表 5 所示。当温度转换命令 发布后,经转换所得的温度值以二字节补码形式存放在 高速暂存存储器的 第 0 和第 1 个字节。单片机可通过单线接口读到该数据,读取时低位在前, 高位在后。图 7 字节分配下表为 12 位转化后得到的 12 位数据,存储在 18B20 的两个 8 比特的 RAM 中,

10、二进制中的前面 5 位是符号位,如果测得的温度大于0, 这 5 位 为 0,只要将测到的数值乘于 0.0625 即可得到实际温度;如果温度小于 0,这 5 位为 1,测到的数值需要取反加 1 再乘于 0.0625 即可得到实际 温 度。 例如+125的数字输出为 07D0H, 实际温度=07D0H*0.0625=2000*0.0625=125。 例如-55的数字输出为 FC90H,则应先将 11 位数据位取反加 1 得 370H(符号位不变,也不作运算), 实际温度=370H*0.0625=880*0.0625=55。 可见其中低四位为小数位。图 8 DS18B20 温度数据表73 3.3.3

11、 显示电路显示电路LED 数码管显示采用动态扫描方式,能简化电路布线,节约单片机 I/O 端口。段码和位码由单片机 P0 送出,分别用 74HC673N 锁存。图 9 数码管驱动显示电路3 3.4.4 声光报警电路声光报警电路当温度超过设定温度值时,实现声光报警,蜂鸣器鸣叫、8 个发光二极管点 亮。蜂鸣器由单片机 P23 口控制,用三极管驱动,发光二极管接单片机 P1 口, 由 74HC673N 锁存。8图 10 声光报警电路3 3.5.5 键盘输入电路键盘输入电路四个键分别连接单片机 P34、P35、P36、P37 构成独立式键盘,分别实 现报警温度范围上下限的设定功能。k ey2k ey3

12、P3.4P3.5k ey4k ey5GNDP3.6P3.7图 11 键盘输入电路四、软件设计四、软件设计4 4.1.1 主程序模块主程序模块主程序需要调用 3 个子程序,分别为: 实时温度显示子程序:驱动数码管把实时温度值送出在 LED 数码管显示 查询记录温度值子程序:查询过去存储的温度值,最多可查询 10 个值 温度设定、报警子程序:设定报警温度值,当温度超过该值时产生报警, 即驱动蜂鸣器鸣叫、8 个发光二极管发光 主程序流程图:开始显示实时温度温度设定、报警查询记录温度值定时器初始化、启动9图 12 主程序流程图4 4.2.2 读温度值模块读温度值模块读温度值模块需要调用 4 个子程序,分别为:

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号