基于51单片机的数字气压计

您所在的位置:网站首页 单片机mpx4115 基于51单片机的数字气压计

基于51单片机的数字气压计

2024-07-12 02:40| 来源: 网络整理| 查看: 265

1.概述 本设计是基于MPX4115的数字气压计,硬件处理电路为大气压传感器模拟信号的采集、转换、处理和显示,并根据相应的软件需求设计控制程序。

2.硬件设计 (1)硬件总体框图 气压计的硬件主要由四部分组成,分别为单片机最小系统、气压信号采集电路、ADC转换电路和数码管电路。 在这里插入图片描述 (2)气压信号采集转换电路 a.气压信号采集 数据采集模块由压力传感器MPX4115构成,其类型是硅压力传感器。这个传感器结合了高级的微电机技术,薄膜镀金属。还能为高水准模拟输出信号提供一个均衡压力。在0℃-85℃的温度下误差不超过1.5%,温度补偿是-40℃-125℃。

b.AD转换 ADC0832 为8位分辨率A/D转换芯片,其最高分辨可达256级,可以适应一般的模拟量转换要求。其作用是将气压信号采集的模拟信号转换为8位数字信号,并将结果传给单片机处理。 正常情况下ADC0832 与单片机的接口应为4条数据线,分别是CS、CLK、DO、DI。但由于DO端与DI端在通信时并未同时有效并与单片机的接口是双向的,所以电路设计时可以将DO和DI 并联在一根数据线上使用。当ADC0832未工作时其CS输入端应为高电平,此时芯片禁用,CLK 和DO/DI 的电平可任意。当要进行A/D转换时,须先将CS使能端置于低电平并且保持低电平直到转换完全结束。此时芯片开始转换工作,同时由处理器向芯片时钟输入端CLK 输入时钟脉冲,DO/DI端则使用DI端输入通道功能选择的数据信号。在第1 个时钟脉冲的下沉之前DI端必须是高电平,表示启始信号。 在这里插入图片描述 (3)硬件原理图 在这里插入图片描述 3.软件设计 (1)ADC0832驱动程序

//ADC0832的引脚 sbit ADCS =P3^1; //ADC0832 chip seclect sbit ADDI =P3^2; //ADC0832 k in sbit ADDO =P3^2; //ADC0832 k out sbit ADCLK =P3^0; //ADC0832 clock signal080307208 /*读ADC0832函数*/ //采集并返回 unsigned int Adc0832(unsigned char channel) //AD转换,返回结果 { uchar i=0; uchar j; uint dat=0; uchar ndat=0; if(channel==0)channel=2; if(channel==1)channel=3; ADDI=1; _nop_(); _nop_(); ADCS=0;//拉低CS端 _nop_(); _nop_(); ADCLK=1;//拉高CLK端 _nop_(); _nop_(); ADCLK=0;//拉低CLK端,形成下降沿1 _nop_(); _nop_(); ADCLK=1;//拉高CLK端 ADDI=channel&0x1; _nop_(); _nop_(); ADCLK=0;//拉低CLK端,形成下降沿2 _nop_(); _nop_(); ADCLK=1;//拉高CLK端 ADDI=(channel>>1)&0x1; _nop_(); _nop_(); ADCLK=0;//拉低CLK端,形成下降沿3 ADDI=1;//控制命令结束 _nop_(); _nop_(); dat=0; for(i=0;i


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3