基于MSC1210Y5的多通道数据采集系统
1 引言
以msc1210y5为核心的数据采集部分在工作时投放与水下、工作在无人值守的自容方式。由于海洋环境恶劣,所以仪器必须具有很好的可靠性及精确度,否则,就有可能给航行在测点附近海域的船舶提供不准确的海洋环境参数,笔者在灯船水文气象实测数据自动显示助航系统水下分机的设计中,成功应用了具有增强型8051内核微控制器和闪存的精密模数转换器msc1210y5,避免了微控制器和ad转换电路的单独分立设计,简化了电路,降低了功耗,增强了可靠性,提高了整个系统的工作速度。
2 msc1210y5的特性
msc1210y5是tqfp-64封装的低功耗完全集成混合信号ic,供电电压为2.7v-5.25v,它具有高精度的积分型模数转换器,adc错误sinc3滤波器,具有24bit分辨率和24bit无遗漏码,且采样速率可调,在要求高精度的单周期转换时,adc可以选择合适的滤波器、8路差分/单断通道、片内偏置/增益校正、偏置数模转换器,高达32kb的闪速数据存储器、3个16位定时器和2个完整的双向通用异步收发器。msc1210y5的引脚配置如图1所示,各引脚的功能说明如下:

xout:晶体振荡器引脚,用做晶体放大器的输出端。
xin:晶体振荡器引脚,在使用外部时钟源来代替晶体振荡器时,xin也可作为其输入端。
p3.0-p3.7:端口3是双向i/o口,具有复用功能。
dvdd:数字供电。
dgnd:数字地。
rst:复位输入,若引脚上保持高电平达2条指令时钟周期,器件将复位。
agnd:模拟地。
avdd:模拟供电。
ain0-ain5:模拟输出通道0-5。
ain6,extd:模拟输入通道6,数字低电平检测输入;
ain7,exta:模拟输入通道7,模拟低电平检测输入。
aincom:模拟单端输入的公共端。
ref in-:负参考电压输入。
ref in+:正参考电压输入。
p2.0-p2.7:端口2是双向i/o口,具有复用功能。
psen,oscclk,modclk:程序存储使能。与外部可选存储器相连,作为器件使能信号,psen可提供一低电平脉冲,在编程模式下,psen可与ale一同用做输入,以确定编程模式是串行还是并行,在并行编程模式下保持为高,而在串行时为低,在不需使用外部程序存储器时,这一引脚也可选做晶体振荡器时钟,调整时钟输出,或直接输出高/低电平。
ale:地址锁存使能,用于在访问外存时锁存地址的低位字节,ale的发生频率为恒定值,等于晶体振荡器频率的1/2,并可用于外部定时或时钟,在访问外部数据存储器时将每次省去一个ale脉冲,在编程模式下ale用做输入,与psen共同用于确定编程模式是串行还是并行,在串行编程时,ale保持为高,而在并行时则为低。
ea:外部器件访问使能,ea引脚必须由外部保持低电平,器件才能由起始地址0000h开始读取外部程序存储器。
p0.0-p0.7:端口0是双向i/o口,具有复用功能。
p1.0-p1.7:端口1是双向i/o口,具有复用功能。
3 与数据采集相关的寄存器介绍
adc补偿标准寄存器低(中,高)字节ocl(ocm,och)是adc补偿校准的24bit字的低(中,高)字节,写入该字节的数值用于设定adc补偿校准的数值。
adc增益校准寄存器低(中,高)字节gcl(gcm,gch)是24bitadc增益校准字的低(中,高)字节,写入该字节的数值用于设定adc增益标准的数值。
adc乘法寄存器(admux)的位7-4:inp3-0是输入乘法器正通道,用来选择正信号输入,如表1所列。

位3-0:inp3-0为输入乘法器负通道,用来选择负信号输入,如表2所列。

adc计算结果寄存器低(中,高)字节adresl(adresm,adresh)包含adc转换器结果的24bit的低(中,高)字节,从adresl寄存器读取数据时会复位adc中断。
adc控制寄存器,0,1,2的设置功能包括熄火监测、内部参考电压使能、内部参考电压选择、缓冲使能、可编程增益放大器增益设置、adc运算结果和综合寄存器的极性、停留模式、标准模式控制位以及十进制比率。
4 多通道数据采集的软硬件设计
笔者在灯船水文气象实测数据自动显示助航系统水下分机的设计中采用msc1210y5作为水下分机的微控制器,用其内置的adc进行数据采集,外围传感器的输出电压可以采用单端或差分输入的方式直接接入msc1210y5的8路通道,不需要任何附加的外围电路,连接电路如图2所示。

ad转换部分一般情况下顺序进行多信道数据采集,在上位机发来指令时,可以跳转到相应的数据采集程序部分,在此列出一段采集程序。


评论