数字气压计

  • 格式:doc
  • 大小:529.00 KB
  • 文档页数:25

摘要随着时代的进步和发展,智能仪表已经普及到我们生活、工作、科研、各个领域,已经成为一种比较成熟的技术, 本文主要介绍了一个基于89C51单片机的测温系统,详细描述了利用数字温度传感器DS18B20开发测温系统的过程,重点对传感器在单片机下的硬件连接,软件编程以及各模块系统流程进行了详尽分析,对各部分的电路也一一进行了介绍,该系统可以方便的实现实现温度采集和显示,并可根据需要任意设定上下限报警温度,它使用起来相当方便,具有精度高、量程宽、灵敏度高、体积小、功耗低等优点,适合于我们日常生活和工、农业生产中的温度测量,也可以当作温度处理模块嵌入其它系统中,作为其他主系统的辅助扩展。

DS18B20与AT89C51结合实现最简温度检测系统,该系统结构简单,抗干扰能力强,适合于恶劣环境下进行现场温度测量,有广泛的应用前景。

关键字:数字气压计;89C51单片机;DS18B20温度传感器目录摘要 (I)1 绪论 (1)1.1数字气压计的简介 (1)1.2数字气压计的背景和意义 (1)2 系统的总体设计 (2)2.1 设计思路分析 (2)2.2 系统的总体结构 (2)3 硬件电路设计 (3)3.1数据采集模块的芯片选择 (3)3.2 A/D转换模块 (3)3.3 单片机控制模块 (5)3.4显示模块 (7)3.5系统总体原理电路图 (8)4软件设计 (10)4.1 用C语言开发单片机的优势 (10)4.2系统总流程图 (11)系统总流程图如下图所示: (11)4.4 显示流程图 (12)4.5 程序流程图 (13)5系统调试与仿真 (14)5.1 Keil软件介绍 (14)5.2 PROTEUS软件介绍 (14)5.3 单片机调试仿真 (15)总结 (17)参考文献 (18)附录1 数字气压计源程序 (19)1 绪论1.1数字气压计的简介数字气压计是利用压敏元件将待测气压直接变换为容易检测、传输的电流或电压信号,然后再经过后续电路处理并进行实时显示的一种设备。

其中的核心元件就是气压传感器,它在监视压力大小、控制压力变化以及物理参量的测量等方面起着重要作用。

运用于气压计的气压传感器基本都是依靠不同高度时的气压变化来获取气压值的。

相对比于普通的水银气压计,有准确易读,易携带的优点。

1.2数字气压计的背景和意义数字气压计是利用压敏元件将待测气压直接变换为容易检测、传输的电流或电压信号,然后再经过后续电路处理并进行实时显示的一种设备。

其中的核心元件就是气压传感器,它在监视压力大小、控制压力变化以及物理参量的测量等方面起着重要作用。

运用于气压计的气压传感器基本都是依靠不同高度时的气压变化来获取气压值的。

相对比于普通的水银气压计,有准确易读,易携带的优点。

气象学研究表明,在垂直方向上气压随高度增加而降低。

例如在低层,每上升100m 气压便降低10hPa;在5~6km的高空,高度每增加100m,气压便会降低7hPa;而当高度进一步增加时,即到9~10km的高空之后,高度每增加100m,气压便会降低5hPa;同样,若空气中有下降气流时,气压会增加;若空气中有上升气流时,作用于空气柱底部的气压就会减小。

一般把作用于单位面积上空气柱的重量称为大气压力。

数字气压计大量应用在各种工矿企业,野外作业,消费类电子产品等等的地方。

需求极为广泛。

本课题是要设计一个利用微控制和数字化气压传感器为核心元件组成的电子气压计系统。

微控制和数字化气压传感器的结合可以使得气压计的设计更具灵活性,测量精度相对于液体气压计也有了显著提高。

测量结果的显示也更直观,并可灵活的加入超压、低压报警等特殊功能,以满足某些特定需要。

2系统的总体设计2.1设计思路分析基于MPX4115的数字气压计包括软硬件的设计与调试。

软件部分通过对C语言的学习和对单片机知识的了解,根据系统的特点编写出单片机程序。

硬件部分分为四大块,包括非电信号数据的采集、转换、处理以及显示:。

通过对设计的了解,选择适合的器件,画出原理图。

2.2 系统的总体结构硬件部分由四部分构成,它们分别是:信息采集模块,数据转换模块,信息处理模块和数据显示模块。

采用单片机主控,通过压力传感器、A/D转换采集数据信息,经过含有单片机的检测系统检测,将结果传送到单片机控制的主控器,数据通过显示器显示。

原理框图如图2-1所示。

图2—1原理框图3 硬件电路设计3.1数据采集模块的芯片选择压力传感器对于系统至关重要,需要综合实际的需求和各类压力传感器的性能参数加以选择。

一般要选用有温度补偿作用的压力传感器,因为温度补偿特性可以克服半导体压力传感器件存在的温度漂移问题。

本设计要实现的数字气压计显示的是绝对气压值,同时为了简化电路,提高稳定性和抗干扰能力,要求使用具有温度补偿能力的压力传感器。

经过综合考虑,本设计选用美国摩托罗拉公司的集成压力传感器。

MPX4115可以产生高精度模拟输出电压。

MPX4115系列压电电阻传感器是一个硅压力传感器。

这个传感器结合了高级的微电机技术,薄膜镀金属。

还能为高水准模拟输出信号提供一个均衡压力。

在0℃-85℃的温度下误差不超过1.5%,温度补偿是-40℃-125℃。

数据采集模块由压力传感器MPX4115构成。

其中1脚是输出信号端,输出的是与气压值相对应的模拟电压信号。

MPX4115的实物图如图2-2所示。

图3-1 数字气压计实物图3.2 A/D转换模块ADC0832是美国国家半导体公司生产的一种8位分辨率、双通道A/D转换芯片。

由于它体积小,兼容性强,性价比高而深受单片机爱好者及企业欢迎,其目前已经有很高的普及率。

学习并使用ADC0832可是使我们了解A/D转换器的原理,有助于我们单片机技术水平的提高。

ADC0832具有以下特点:● 8位分辨率;● 双通道A/D转换;● 输入输出电平与TTL/CMOS相兼容;● 5V电源供电时输入电压在0~5V之间;● 工作频率为250KHZ,转换时间为32μS;● 一般功耗仅为15mW;● 8P、14P—DIP(双列直插)、PICC多种封装;● 商用级芯片温宽为0°C to +70°C?,工业级芯片温宽为40℃ to +85℃ADC0832 为8位分辨率A/D转换芯片,其最高分辨可达256级,可以适应一般的模拟量转换要求。

其内部电源输入与参考电压的复用,使得芯片的模拟电压输入在0~5V 之间。

芯片转换时间仅为32μS,据有双数据输出可作为数据校验,以减少数据误差,转换速度快且稳定性能强。

独立的芯片使能输入,使多器件挂接和处理器控制变的更加方便。

通过DI 数据输入端,可以轻易的实现通道功能的选择。

正常情况下ADC0832 与单片机的接口应为4条数据线,分别是CS、CLK、DO、DI。

但由于DO端与DI端在通信时并未同时有效并与单片机的接口是双向的,所以电路设计时可以将DO和DI 并联在一根数据线上使用。

当ADC0832未工作时其CS输入端应为高电平,此时芯片禁用,CLK 和DO/DI 的电平可任意。

当要进行A/D转换时,须先将CS使能端置于低电平并且保持低电平直到转换完全结束。

此时芯片开始转换工作,同时由处理器向芯片时钟输入端CLK 输入时钟脉冲,DO/DI端则使用DI端输入通道功能选择的数据信号。

在第1 个时钟脉冲的下沉之前DI端必须是高电平,表示启始信号。

在第2、3个脉冲下沉之前DI端应输入2 位数据用于选择通道功能。

当此2 位数据为“1”、“0”时,只对CH0 进行单通道转换。

当2位数据为“1”、“1”时,只对CH1进行单通道转换。

当2 位数据为“0”、“0”时,将CH0作为正输入端IN+,CH1作为负输入端IN-进行输入。

当2 位数据为“0”、“1”时,将CH0作为负输入端IN-,CH1 作为正输入端IN+进行输入。

到第3 个脉冲的下沉之后DI端的输入电平就失去输入作用,此后DO/DI端则开始利用数据输出DO进行转换数据的读取。

从第4个脉冲下沉开始由DO端输出转换数据最高位DATA7,随后每一个脉冲下沉DO端输出下一位数据。

直到第11个脉冲时发出最低位数据DATA0,一个字节的数据输出完成。

也正是从此位开始输出下一个相反字节的数据,即从第11个字节的下沉输出DATA0。

随后输出8位数据,到第19 个脉冲时数据输出完成,也标志着一次A/D转换的结束。

最后将CS置高电平禁用芯片,直接将转换后的数据进行处理就可以了,如图2-3为ADC0832实物图。

图3-2 ADC0832实物图3.3 单片机控制模块AT89C51是一个低电压,高性能CMOS8位单片机带有4K字节的可反复擦写的程序存储器(PENROM)。

和128字节的存取数据存储器(RAM),这种器件采用ATMEL 公司的高密度、不容易丢失存储技术生产,并且能够与MCS-51系列的单片机兼容。

片内含有8位中央处理器和闪烁存储单元,有较强的功能的AT89C51单片机能够被应用到控制领域中。

如图3-3为AT89C51单片机实物图。

图3-3AT89C51单片机实物图管脚介绍:VCC:电源电压GND:地P0口:P0口是一组8位漏极开路双向I/O口,即地址/数据总线复用口。

作为输出口时,每一个管脚都能够驱动8个TTL电路。

当“1”被写入P0口时,每个管脚都能够作为高阻抗输入端。

P0口还能够在访问外部数据存储器或程序存储器时,转换地址和数据总线复用,并在这时激活内部的上拉电阻。

P1口:P1口一个带内部上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动4个TTL电路。

对端口写“1”,通过内部的电阻把端口拉到高电平,此时可作为输入口。

因为内部有电阻,某个引脚被外部信号拉低时输出一个电流。

P2口:P2口是一个内部带有上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动4个TTL电路。

对端口写“1”,通过内部的电阻把端口拉到高电平,此时,可作为输入口。

因为内部有电阻,某个引脚被外部信号拉低时会输出一个电流。

P3口:P3口是一组带有内部电阻的8位双向I/O口,P3口输出缓冲故可驱动4个TTL电路。

对P3口写如“1”时,它们被内部电阻拉到高电平并可作为输入端时,被外部拉低的P3口将用电阻输出电流。

P3口除了作为一般的I/O口外,更重要的用途是它的第二功能,如下表所示:RST:复位输入。

当震荡器工作时,RET引脚出现两个机器周期以上的高电平将使单片机复位。

ALE/:当访问外部程序存储器或数据存储器时,ALE输出脉冲用于锁存地址的低8位字节。

即使不访问外部存储器,ALE以时钟震荡频率的1/16输出固定的正脉冲信号,因此它可对输出时钟或用于定时目的。

要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲时,闪烁存储器编程时,这个引脚还用于输入编程脉冲。

如果必要,可对特殊寄存器区中的8EH单元的D0位置禁止ALE操作。