智能温度检测仪软件设计资料.docx
《智能温度检测仪软件设计资料.docx》由会员分享,可在线阅读,更多相关《智能温度检测仪软件设计资料.docx(13页珍藏版)》请在冰豆网上搜索。
![智能温度检测仪软件设计资料.docx](https://file1.bdocx.com/fileroot1/2023-2/6/29d1682f-f32a-46c9-819a-f23abec35301/29d1682f-f32a-46c9-819a-f23abec353011.gif)
智能温度检测仪软件设计资料
智能温度检测仪软件设计资料
温度是表征物体冷却程度的物理量,也是最基本的环境参数。
在农工业生产及日常生活中,对温度的测量及控制始终占据着及其重要的地位。
目前,典型的温度测控系统由模拟式温度传感器、A/D转换电路和单片机造成。
由于模拟式温度传感器输出的模拟信号必须经过A/D转换环节获得数字信号后才能与单片机等微处理器接口,因而使得硬件电路结构复杂,成本较高。
而以DS18B20为代表的新型单总线数字式温度传感器集温度测量和A/D转换于一体,直接输出数字量与单片机接口电路结构简单,广泛应用于距离远、节点分布多得场合,具有较强的推广应用价值。
一.系统原理及原理图
1.系统原理
该数字温度检测系统由三部分组成:
温度检测、显示控制、温度显示。
(1)温度检测
该模块由DS18B20负责对测试点的温度进行测量,单片机89C52对DS18B20进行控制。
由于DS18B20只有一根数据线,所以系统中的数据交换,控制都由这根线来完成,只需将DS18B20挂接到单片机的一个数据接口就可以直接使用。
(2)显示控制
由于DS18B20是通过单总线方式与单片机进行通讯的,所以对程序的编写要求较高。
主要的程序流程是这样的:
首先由单片机发出对DS18B20进行初始化的信号,在DS18B20初始化成功后,发送指令CC跳过读序列号的操作,接着发送指令44启动温度转换,此时在对DS18B20进行初始化,在发送指令CC跳过读序列号操作,最后发送指令BE读暂存存储器。
至此完成一个周期,当前温度值所对应的二进制编码已经被保存在DS18B20的ROM上,然后只需将ROM上的温度值读取出来,然后转换成相应的十进制,就可以拿来做最后面的运算和显示了。
(3)温度显示
这部分模块由思维八段共阳极的数码管组成,段选部分直接与单片机相连。
2.全数字温度采集系统总体电路结构框图
图1.1全数字温度采集系统总体电路结构框图
二、单片机的选择
1STC89C52的选择
在众多的“MCS-51系列单片机”生产的公司中,ATMEL公司生产的STC89C52是一种带8K字节闪烁可编程可擦除只读存储器的低电压,高性能CMOS8位微处理器,俗称单片机。
该器件采用ATMEL最密度非易失存储器制造技术制造,与工业标准的MCS-51指令集合输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合的单个芯片中,ATMEL的STC89C52更是一种高效微控制器。
2复位和晶振电路的选择
单片机运行的可靠性是单片机系统中的一个重要问题。
单片机运行时,若电源电压降低或受到外界的电磁干扰,就会引起程序时空,出现“死机”或其它不正常现象,导致整个系统瘫痪,为此增加复位电路,可以上电自动复位和手动复位,以保证系统的正常运行。
另外单片机工作需要晶振提供内部的时钟,选用12MHz的石英晶振。
3单片机STC89C52的介绍
STC89C52是红晶科技推出的新一代超强抗干扰、高速、低功耗的单片机,指令代码完全兼容传统8052单片机,12时钟、机器周期和6时钟、机器周期可任意选择,最新内部集成MAX810专用复位电路。
a.主要性能
(1)增强型6时钟、机器周期,13时钟、机器周期8052CPU。
(2)工作电压:
5.5V~3.4V(5V单片机)/3.8V~2.0V(3V单片机)。
(3)工作频率范围:
0~40MHz,相当于普通8052的0~80MHz。
实际工作频率可达48MHz。
(4)用户应用程序空间4K/8K/16K/20K/32K/64K字节。
(5)片上集成1280字节、512字节ROM。
(6)通用I/O(32/36个),复位后为:
P1/P2/P3/P4是准双向口/弱上拉P0口是开漏输出,作为总线扩展用时,不用加上拉电阻,作为I/O口用时,需要上拉电阻。
(7)ISP(在系统可编程)/IAP(在应用可编程),无需专用贴编程器、仿真器可通过串口(P3.0/P3.1)直接下载程序,8K程序3秒即可完成一片。
(8)EEPROM功能。
(9)看门狗。
(10)内部集成MAX810专用复位电路,外部晶体20M以下时,可省外部复位电路。
(11)共3个16位定时器/计算器,其中定时器0还可以当成2个8位定时器使用。
(12)外部中断4路,下降沿中断或低电平触发中断,POWERDOWN模式可由外部中断低电平出发中断触发方式唤醒。
(13)通用异步串口(UART),还可用定时器软件实现多个UART。
(14)工作温度范围:
0~75/-4℃0~85℃。
b管脚分布图及管脚功能
STC89C52引脚分布图如下:
图1.2STC89C52引脚图
4单片机晶振及复位电路
特殊功能寄存器
初始状态
特殊功能寄存器
初始状态
A
00H
TMOD
00H
B
00H
TCON
00H
PSW
00H
TH0
00H
SP
07H
TL0
00H
DPL
00H
TH1
00H
DPH
00H
TL1
00H
P0~P3
FFH
SBUF
不定
IP
0**0000B
SCON
00H
IE
0**0000B
PCON
0**0000B
表3.2特殊功能寄存器初始状态值
晶振及复位电路图如1.3所示
图1.3单片机晶振及复位电路图
三、DS18B20温度传感器
1、DS18B20的性能特点
2DS18B20的内部结构
2、DS18B20有4个主要的数据部件:
指令
约定代码
功能
读ROM
33H
读DS18B20温度传感器ROM中的编码
符合ROM
55H
发出此命令后,接着发出64位ROM编码,访问单总线上与该编码相对应的DS18B20使之做出响应,为下一步该DS18B20的读写做准备
搜索ROM
0F0H
用于确定挂接在同一总线上DS18B20的个数和识别64位ROM地址,为操作各器件做好准备
跳过ROM
0CCH
忽略64位ROM地址,直接向DS18B20发温度变换命令。
使用于单片工作
告警搜索命令
0ECH
执行后只有温度超过设定值上限或下限的片子才能做出响应
表3.8ROM指令表
3、DS18B20与单片机的典型接口设计