简易数字温度计设计 下载本文

内容发布更新时间 : 2024/5/13 1:02:48星期一 下面是文章的全部内容请认真阅读。

目录

摘要 ............................................. 1 1系统设计........................................ 1

1.1设计任务 ................................... 1 1.2设计要求 ................................... 1 2系统方案论证 .................................... 1

2.1主控模块的论证与选择 ....................... 1 2.2显示模块的论证与选择 ....................... 2 2.3按键模块的论证与选择 ....................... 2 3系统理论分析与计算 .............................. 2

3.1 DS18B20的理论分析与计算 ................... 2 4电路与程序设计 .................................. 3

4.1电路的设计 ................................. 3 4.2程序的设计 ................................. 6 5测试方案与测试数据 .............................. 7

5.1测试方案 ................................... 7 5.2 测试条件与仪器 ............................ 8 5.3 测试结果 .................................. 8 6 总结 ........................................... 8 附录 主要源程序 ................................... 9

摘要:本系统利用单片机AT89C52采用程序设计方法来测试温度,还可以通过

两个按键设置温度报警上限,当测试温度超过设定的温度上限时,蜂鸣器器就会报警且绿灯关闭,红灯点亮;当温度低于上限时蜂鸣器关闭且红灯关闭,绿灯点亮。并通过液晶屏1602显示其测试温度以及设置的上限温度。

关键词:STC89C52、LCD1602、DS18B20

简易数字温度计设计

1系统设计 1.1设计任务

设计一数字温度测量系统,能自动实现实际温度的测量与显示。

1.2设计要求

1.2.1基本功能

(1)测温范围-30℃~+120℃。 (2)测量误差在±0.5℃之内。 (3)能正常显示测量的温度。

1.2.2扩展功能

(1)增加温控功能,并可修改设置温控的上下限。 (2)增加温控报警功能。

2系统方案论证

本系统主要由主控模块、显示模块、按键模块、蜂鸣器模块、LED模块、传感器模块组成,下面分别论证这几个模块的选择。

2.1主控模块的论证与选择

方案一:AT89C52单片机是一种高性能8位单片微型计算机。内核本身具有丰富的指令集,足够实现本次作品的全部基本功能和部分拓展功能,相比

1

Atmega16我们对AT89C52更为熟悉,且芯片价格较低,性价比高。

方案二:采用ATmega16芯片作为主控芯片。由于对芯片的不熟悉,导致如果想要实现温度计全部基本功能和部分拓展功能,较为困难。 综上所述,选择方案一。

2.2显示模块的论证与选择

方案一:采用LCD1602显示。LCD1602相对便宜,虽然其本身不能显示中文,但是温度计只需显示数字和一些英文,符合这次设计要求。

方案二:采用LCD12864显示。LCD12864屏幕显示细腻直观,且可以显示中文,但是相对昂贵。 综上所述,选择方案一。

2.3按键模块的论证与选择

方案一:采用4X4矩阵按键。尽管按键一目了然,但连线复杂,扫描过程烦琐,会耗费大量的系统资源。

方案二:独立按键,我们只使用了两个按键来调节上限,大大节省了系统硬件资源,便于系统扩展。 综上所述,选择方案二。

3系统理论分析与计算 3.1 DS18B20的理论分析与计算

DS18B20 通过编程,可以实现最高 12 位的温度存储值,在寄存器中,以补码的格式存储,如图1所示。

2