电子体温计系统设计.docx
《电子体温计系统设计.docx》由会员分享,可在线阅读,更多相关《电子体温计系统设计.docx(12页珍藏版)》请在冰点文库上搜索。
![电子体温计系统设计.docx](https://file1.bingdoc.com/fileroot1/2023-5/19/de46974d-fde2-4721-b7fe-7dbe6061421b/de46974d-fde2-4721-b7fe-7dbe6061421b1.gif)
电子体温计系统设计
电子体温计系统设计
第1章系统设定概述
1.1确定方该系统
主要由温度测量和数据采集两部分电路组成,采用数字温度芯片DS18B20测量温度,输出信号全数字化。
便于单片机处理及控制,省去传统的测温方法的很多外围电路。
且该芯片的物理化学性很稳定,它能用做工业测温元件,此元件线形较好。
在-55~+125摄氏度时,最大线形偏差小于1摄氏度。
DS18B20的最大特点之一采用了单总线的数据传输,由数字温度计DS18B20和微控制器AT89C51构成的温度测量装置,它直接输出温度的数字信号,可直接与计算机连接。
这样测温系统的结构就比较简单,体积也不大。
采用51单片机控制,软件编程的自由度大,可通过编程实现各种各样的算术算法和逻辑控制,而且体积小,硬件实现简单,安装方便。
既可以单独对多DS18B20控制工作,还可以与PC机通信上传数据,另外AT89S51在工业控制上也有着广泛的应用,编程技术及外围功能电路的配合使用都很成熟。
1.2系统设计原理
利用温度传感器DS18B20可以直接读取被测温度值,进行转换的特性,模拟温度值经过DS18B20处理后转换为数字值,然后送到单片机中进行数据处理,并与设置的温度报警限比较,超过限度后通过扬声器报警。
同时处理后的数据送到LCD中显示。
1.3系统框图
图3系统基本方框图
3.3.1主控制器
单片机AT89C51具有低电压供电和体积小等特点,四个端口只需要两个口就能满足电路系统的设计需要,很适合便携手持式产品的设计使用系统可用二节电池供电。
3.3.2显示电路
显示电路采用LCD液晶屏
3.3.3温度传感器
DS18B20产于美国,输出信号全数字化
第2章元器件介绍
2.1AT89C51单片机介绍
T89系列单片机在内部结构上基本相同,其中不同型号的单片机只不过在个别模块和功能方面有些区别。
AT89C51单片机内部硬件结构框图如图所示。
它由一个8位中央处理器(CPU)、一个256B片内RAM及4KBFlashROM、21个特殊功能寄存器、4个8位并行I/O口、两个16位定时/计数器、一个串行I/O口以及中断系统等部分组成,各功能部件通过片内单一总线联成一个整体,集成在一块芯片上。
图4单片机内部结构图
2.1.1AT89C51单片机主要特性
1.一个8位的微处理器(CPU)。
2.片内程序存储器ROM(4KB,) 用以存放程序、一些原始数据和表格。
目前单片机的发展趋势是将RAM和 ROM都集成在单片机里面,这样既方便了用户进行设计又提高了系统的抗干扰性。
3. 两个定时器/计数器,每个定时器/计数器都可以设置成计数方式,用以对外部事件进行计数,也可以设置成定时方式,并可以根据计数或定时的结果实现计算机控制。
4.五个中断源的中断控制系统
5.片内振荡器和时钟产生电路,但石英晶体和微调电容需要外接。
最高允许振荡频率为12MHz。
2.1.2AT89C51单片机管脚
图5AT89C51单片机管脚
2.2液晶模块简介
图6液晶屏幕引脚
LCD1602引脚介绍:
Vss(1脚):
一般接地。
Vdd(2脚):
接电源。
Vee(3脚):
液晶显示器对比度调整端,接电源时对比度最弱,接地时对比度最高
(对比度过高时会产生“鬼影”,使用时可以通过一个10K 的电位器调整对比度) 。
RS( 4 脚):
RS为寄存器选择,高电平1 时选择数据寄存器、低电平0 时选择指令寄存器。
R/W(5 脚):
R/W为读写信号线,高电平
(1) 时进行读操作,低电平(0) 时进行写操作。
E(6 脚):
E(或 EN)端为使能 (enable)端,下降沿使能。
DB 0-7 ( 7-14 脚):
双向数据总线。
2.3DS18B20介绍
图7DS18B20
DS18B20是一种新型的“一线器件”, 其体积更小、更适用于多种场合、且适用电压更宽、更经济。
DALLAS半导体公司的数字化温度传感器 DS18B20是世界上第一片支持“一线总线”接口的温度传感器。
温度测量范围为
-55 ~+125 摄氏度,可编程为9 位~ 12 位转换精度,测温分辨率可达0.0625 摄氏度,
分辨率设定参数以及用户设定的报警温度存储在EEPROM中,掉电后依然保存。
被测温度用符号扩展的16 位数字量方式串行输出;其工作电源既可以在远端引入,也可以采用寄生电源方式产生;多个DS18B20可以并联到 3 根或 2 根线上, CPU只需一根端口线就能与诸多DS18B20通信,占用微处理器的端口较少,可节省大量的引线和逻辑电 路。
因此用它来组成一个测温系统,具有线路简单,在一根通信线,可以挂很多这样的 数字温度计,十分方便。
第3章系统硬件模拟设计
3.1主板电路
图8主板电路图
3.2主电路和液晶显示器的电路
图9液晶显示器和单片机的接口电路
如图 9 所示,用 89C51的 P0 口作为数据线,用P2.0、P2.1 、P2.2 分别作为 LCD的 E、R/W、RS。
其中E 是下降沿触发的片选信号,R/W是读写信号, RS是寄存器选择信号本模块设计要点如下:
显示模块初始化:
首先清屏,再设置接口数据位为8 位,显示行数为 1 行,字型为 5×7点阵,然后设置为整体显示, 取消光标和字体闪烁 , 最后设置为正向增量方式且不移位。
向 LCD的显示缓冲区中送字符, 程序中采用 2 个字符数组,一个显示字符, 另一个显示电压数据,要显示的字符或数据被送到相应的数组中,完成后再统一显示 .
3.3温度传感器和单片机的接口电路
图10温度传感器和单片机的电路
DS18B20可以采用两种方式供电,一种是采用电源供电方式,此时DS18B20的 1脚接地,2脚作为信号线,3脚接电源。
另一种是寄生电源供电方式,单片机端口接单线总线,为保证在有效的DS18B20时钟周期内提供足够的电流,可用一个MOSFE管T 来完成对总线的上拉。
当 DS18B20处于写存储器操作和温度A/D 转换操作时, 总线上必须有强的上拉, 上拉开启时间最大为10us。
采用寄生电源供电方式时VDD端接地。
由于单线制只有一根线,因此发送接口必须是三态的。
第4章电子温度计的软件设计
4.1主程序设计
图11程序流程图
主程序的主要功能是负责温度的实时显示、读出并处理 DS18B20的测量的当前温度值,温度测量每1s 进行一次。
这样可以在一秒之内测量一次被测温度,其程序流程见图11所示。
4.2DS18B20初始化
图12初始化流程图
4.3读出温度的子程序设计
读出温度子程序的主要功能是读出RAM中的 9 字节,在读出时需进行CRC校验,校验有错时不进行温度数据的改写。
4.4温度转换子程序的设计
温度转换命令子程序主要是发温度转换开始命令,当采用12 位分辨率时转换时间约为 750ms,在本程序设计中采用1s 显示程序延时法等待转换的完成。
图13温度转换流程图
4.5计算温度子程序
图14计算温度子程序流程图
6.6显示数据刷新子程序
显示数据刷新子程序主要是对显示缓冲器中的显示数据进行刷新操作,当最高显示位为 0 时将符号显示位移入下一位。
第7章系统仿真测试
模拟在工业上测试温度时,设置温度上限为70 度,温度下限为-20 度。
1. 此时温度时70.5 度,超出上限温度,D1 灯亮,实现报警
图15仿真模拟图
2.此时温度为 -20.5度,低于下限温度, D2灯亮,实现报警。
图16仿真模拟图
3.此时温度为30.5 度,在所设范围内,两灯都没亮,说明温度正常。
图17仿真模拟图