基于单片机的智能压力检测系统的设计

时间:2022-08-13 02:09:03

基于单片机的智能压力检测系统的设计

[摘要] MSC1211是德州仪器公司(TI)新近推出的一款功能强大的带24位Σ-Δ A/D转换和16位D/A转换的微处理器。文中详细介绍了MSC1211的特点和性能,给出了基于MSC1211单片机的智能压力检测系统的设计。

[关键词] 传感器MSC1211智能压力检测系统

在信息高速发展的今天,传感器检测系统的智能化和集成化成为其发展的两个重要方向,而传感器检测系统智能化和集成化的程度主要取决于与之相结合的微处理器的性能。具有数据处理能力,能够进行自动检测、自动校准、自动误差补偿、自动抽样、以及标度变换功能的智能压力传感器检测系统已成为国内外开发和研究的热点。将MSC1211单片机与硅压阻式传感器相结合便可以构成高集成度、高精确度、高可靠性的小型化智能压力检测系统。

一、 MSC1211的功能特点

MSC1211是美国德州仪器公司最新推出的集成数字、模拟混合信号的高性能芯片。芯片集成了大量的模拟和数字模块,具有很强的数据处理能力,对要求体积小、集成度高、运算速度快和精确测量的产品设计而言,MSC1211是一个理想的选择。该芯片可广泛应用于智能传感器、智能变送器、工业过程控制系统、高精度测量装置、便携式仪器等领域。MSC1211的功能框图如图1所示。其主要功能如下:

1.MSC1211内部集成了一个24位分辨率的模数转换器(ADC),8通道多路开关,模拟输入通道测试电流源,输入缓冲器,可编程增益放大器,温度传感器,内部基准电压源:四通道16位数模转换器(DAC);8位微控制器;程序/数据Flash存储器和数据SRAM等。

2.MSC1211的片内模块功能齐备,包括1个32位累加器,1个具有FIFO功能的标准SPI接口,2个标准UART接口,1个I2C接口,32个多功能I/O端口,3个通用定时/计数器,看门狗电路,低电压检测电路,片内自动上电复位电路,16位脉宽调制输出电路(PWM )和欠压锁定复位电路等。

图1 MSC1211的功能框图

3.MSC1211的内核是优化的8051内核,与8051芯片指令集兼容,具有良好的兼容性和很强的数据处理能力。在相同频率下,它的执行速度可达到标准8051的三倍。

4.MSC1211片内集成Flash存储器和1280B SRAM存储器。用户可以根据应用需要对Flash存储器和SRAM进行个性化配置。Flash存储器有两种编程方式:并行编程和串行编程。

5. MSC1211的模拟电源和数字电源是分离的,采用相互独立的2.7V~5.5V电压供电。在3V电压,1MHz时钟下运行,其功耗通常小于4mW。

MSC1211中的A/D转换器设置。MSC1211的片上A/D转换器是高集成度、八通道差分和单通道24位Σ-ΔA/D转换器。它采用了相比传统的Nyqusit型ADC(如积分型、逐次比较型、闪烁型ADC等)更加先进的Σ-Δ型ADC,由于Σ-Δ型ADC主要使用了数字技术,除具有数字系统的可靠性高、稳定性高等优点外,还具有线性度好、抗干扰能力强、成本低等优点。

在利用MSC1211的片上A/D进行采样时,需要设置的寄存器为ADC模块的电源管理寄存器(PDCON)、多路开关寄存器(ADMUX)、模数转换控制寄存器(ADCON0~ADCON3)、求和寄存器、移位寄存器以及ADC偏移量设置寄存器(OCL~OCH)。ADCON0决定了内部放大器的增益和A/D转换的参考电压等;ADCON1确定了A/D转换结果的极性、数字滤波方法和计算模式控制位,ADCON2~ADCON3是用来设计A/D转换输出数据的速率。总和寄存器、移位寄存器用来设计一次输出需要进行采样的个数。如:可以设置为进行8次A/D转换后取平均值后输出数据。ADC偏移量设置寄存器是用来存放零点偏移,以便于进行校正。

MSC1211中的D/A转换器的设置。相对于A/D转换而言,D/A转换器的设置非常简单。只需要配置4个D/A转换寄存器(DAC0~DAC3)和DAC装载控制寄存器。D/A转换寄存器控制着相应的电压输出方式和参考电压。装载控制寄存器用来控制D/A数据的装载方式。

MSC1211的工作方式。MSC1211的接口可以工作在普通的I/O方式也可以工作在外部总线方式,在系统设计中,考虑到不需要外扩存储器,同时,液晶的访问采用两线制的串行方式,无需地址译码,也不需要并行数据线,故采用通用的I/O口方式。

二、智能压力检测系统的设计

利用MSC1211丰富的片内资源,可以设计出功能强大、高精确度、宽动态范围的全集成数据采集系统。

1.系统硬件电路设计。

图2 智能压力检测系统的硬件系统框图

智能压力检测系统的硬件系统构成如图2所示。该系统由压力传感器、微处理器MSC1211、温度传感器、电源模块和输出模块等几部分构成。图3为MSC1211与传感器模块及上位机的接口电路。

系统的工作过程:从压力传感器来的信号进入A/D转换器,其内部具有可编程增益放大器,可根据输入信号的范围自动设置增益放大倍数,A/D转换器对模拟信号数字化并进行数字滤波后,由CPU根据从温度芯片读来的温度信号,从FLASH存储器中读取零点和线性度校正系数后,再进行温度补偿和非线性补偿,然后根据量程范围进行量程转换并将其送到D/A转换器,从而输出相应的电压值。

图3MSC1211与传感器模块及上位机的接口电路

压力信号可由微控制器设置为数字输出模式或模拟输出模式,这使得它可作为一个标准模拟装置而不需要连接数字通讯线路;而作为一个智能型数字输出传感器时,它可以进行双向通讯。该系统通过RS-232标准接口与上位机通信,如:向上位机(主机)发送测量到的数据,接收上位机发来的控制指令,进行参数设置及校准操作。

2.系统软件设计。系统软件采用模块化结构,其软件模块主要包括以下几部分:(1)MSC1211的初始化,包括单片机初始化 、串口初始化、A/D转换器和D/A转换器的初始化。(2)A/D转换器的校准,包括各通道增益、零点漂移校正。(3)现场压力和温度数据的采集。(4)压力传感器的零点校准。温度漂移补偿和非线性补偿。(5)量程转换,D/A数据输出。(6)实时压力显示。(7)串口中断服务程序等。

在进行软件设计时,要注意在A/D转换时,每次更改PGA放大倍数时均需重新校准,设定特殊寄存器ADCON1的SM1~0位为00,即进入自动模式数字滤波。这样随着A/D采样次数的增加,数字滤波依次为快速转换、Sinc2、Sinc3数字滤波,从而最大限度地提高转换速度和转换准确度。

本系统中要对压力传感器信号、温度传感器信号分别进行转换。图4为A/D转换中断流程图。图中COUNT0表示需要检测的通道数,COUNT1表示对对当前通道采样的次数(即每个通道采样COUNT1次取平均值作为当前次信号转换的数字量)。

图4 A/D转换中断流程图

三、结束语

MSC1211可直接接收来自传感器的微弱信号且集成度高、体积小,因此,采用MSC1211构成智能压力传感器可大大简化系统结构。同时,充分利用各种软件功能,可以完成硬件难以完成的任务,提高勒传感器监测系统的性能并降低成本。

参考文献:

[1]陈桂友孙同景等:单片机原理及应用[M].山东大学,2006

[2]李人厚:智能控制理论和方法[M].西安电子科技大学出版社,1999

上一篇:基于ASP.NET技术的安全网站设计 下一篇:手机支付的探析