- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
word资料下载可编辑
专业技术资料
基于AT89S52单片机的数字温度计设计
一 引言
在生活和生产中,经常要用到一些测温设备,但是传统的测温设备具有制作成本高、硬件电、和软件设计复杂等缺点。基于AT89S52单片机的数字温度计具有制作简单、成本低、读数方便、测温范围广和测温准确等优点,应用前景广阔。
二 项目要求
基于AT89S52单片机的数字温度计设计具体要求如下:
(1)温度值用LED显示。
(2)围为-30℃~100℃,且测量误差不得大于
(3)成本的体积、质量要尽可能小。
三 系统设计
1 框图设计
根据设计要求分析,基于AT89S52单片机的数字温度计设计由AT89S52单片机控制器、电源、显示电路、温度传感器、复位电路和时钟电路组成,系统框图如图1所示。电源给整个电路供电,显示电路显示温度值,时钟电路为AT89S52提供时钟频率。传感器采用美国DALLAS半导体公司生产的一种智能温度传感器DS18B20,其测温范围为-55~125℃,最高分辨率可达0.0625℃
电源
电源
复位电路
时钟电路
AT89S52
控制器
显示电路
DS18B20
图一 基于AT89S52单片机的数字温度计系统框图
2 知识点
本项目需要通过学习和查阅资料,掌握和了解如下知识:
+5V电源原理及设计。
单片机复位电路工作原理及设计。
单片机晶振电路工作原理及设计。
按键电路的设计。
数码管的特性及使用。
DS18B20的特性及使用。
74LS07的特性及使用。
AT89S52单片机引脚。
单片机C语言程序设计。
四 硬件设计
1 电路原理图
控制器使用单片机AT89S52,测温传感器使用DS18B20,用4位共阳极LED数码管以动态扫描法实现温度显示,电路图可见仿真图所示。
2 元件清单
基于AT89S52单片机的数字温度计元件清单如表1所示。
表1 基于AT89S52单片机的数字温度计元件清单
元件名称
型号
数量∕个
用途
单片机
AT89S52
1
控制核心
晶振
12MHZ
1
晶振电路
电容
30Pf
2
晶振电路
电解电容
10μF∕10V
1
复位电路
电阻
1KΩ
5
复位电路
上拉电阻
集成块
74LS07
1
显示驱动
集成块
DS18B20
1
显示驱动
集成块
DS18B20
1
测温电路
电阻
4.7 KΩ
1
复位电路
按键
+5V∕0.5A
1
复位电路
电源
4位
1
提供+5V
七段4位
1
显示电路
数码管
电阻
4.7 KΩ
1
测温电路
五 软件设计
1 程序流程图
主程序的主要功能是负责温度的实时显示、读出并处理DS18B20测量的当前温度值,温度测试每1S进行一次。这样可以在1S之内测量一次被测温度,其程序流程图如图3所示。
读出温度子程序的主要功能是读出RAM中的9字节,在读出时需进行CRC校验,校验有错时不进行温度数据的改写,其程序流程图如图4所示。
初始化
初始化
调用显示子程序
1S到?
读出温度值温度计算处理显示数据刷新
发温度转换开始命令
初次上电
N
Y
Y
N
发DS18B20复位命令
发跳过ROM命令
发读取温度命令
读取操作,CRC校验
9字节完?
CRC校验正?
移入温度暂存器
结束
图3 主程序流程图
图4 读温度流程图
温度转换命令子程序主要是发温度转换开始命令,采用12位分辨率转换时间约为750ms。程序设计中采用1s显示程序延时等待转换的完成。计算温度子程序将RAM中读取值进行BCD码地转换运算,并进行温度值正负的判定,显示数据刷新子程序主要是对显示缓冲器中的显示数据进行刷新操作,当最高显示位为0时将符号显示位移入下一位。
2 程序清单
基于AT89S52单片机的数字温度计程序清单如下:
#include reg51.h
#include intrins.h //延时函数用
#define Disdata P1 //段码输出口
#define discan P3 //扫描口
#define uchar unsigned char
#define uint unsigned int
sbit DQ=P3^7; //温度输入口
sbit DIN=P1^7; //LED小数点控制
uint h;
uchar code ditab[16]={0x00,0x01,0x01,0x02,0x03,0x03,0x04,0x04,0x05,0x06,0x06,0x07,0x08,0x08,0x09,0x09};//温度小数部分用查表法
uchar code dis_7[12]={0xC0,0xF9,0xA4,0xB0,0x99,0
您可能关注的文档
- (48+80+48)m连续梁施工设计方案.doc
- (2013新沪科版)九年级物理第十二章温度和物态变化检测题与答案解析和试题说明.doc
- “GPS-IE”绩效改进双导航模型在企业中的应用答案解析.doc
- 《分数混合运算》知识点复习与随堂练习学生稿.doc
- 《汽车发动机构造和维修》期末考试试题与答案解析.doc
- 《建筑识图和构造》课程标准.doc
- 《全面质量管理》试题答案解析.doc
- 《英语周报》答案解析解析:高三课标2018年-2019年学年上学期9-12.doc
- 《中华人民共和国民法总则》学习专题试题与答案解析(六套).doc
- 03、涵洞、通道技术交底书.doc
- 黑龙江大庆市(新版)2024小学语文苏教版小升初考试(自测卷)完整试卷(含答案).docx
- 安徽省亳州市(新版)2024小学语文统编版小升初模拟(提分卷)完整试卷(含答案).docx
- 湖南省郴州市(新版)2024小学语文统编版小升初质量检测(提分卷)完整试卷(含答案).docx
- 宁夏石嘴山市(新版)2024小学语文统编版小升初摸底(巩固卷)完整试卷(含答案).docx
- 陕西省渭南市(新版)2024小学语文统编版(五四制)小升初模拟(巩固卷)完整试卷(含答案).docx
- 台湾省(新版)2024小学语文统编版(五四制)小升初摸底(评估卷)完整试卷(含答案).docx
- 江苏省淮安市(新版)2024小学语文统编版小升初测试(自测卷)完整试卷(含答案).docx
- 台湾省(新版)2024小学语文统编版小升初考试(巩固卷)完整试卷(含答案).docx
- 四川省泸州市(新版)2024小学语文人教版小升初摸底(备考卷)完整试卷(含答案).docx
- 河南省鹤壁市(新版)2024小学语文统编版(五四制)小升初质量检测(冲刺卷)完整试卷(含答案).docx
文档评论(0)