dsPIC30F实现高精度数据采集
平有效,当为低电平时可以按顺序读取VA1、VA2或VBl、VB2上的A/D转换结果。通过以上分析共需3个控制信号,即dsPIC230F6010A的I/O接口RB8、RB9和RBl0,通过软件产生。
AD7862还产生BUSY信号,通过它告知控制器A/D转换完成,可以读取结果。dsPIC30F6010A的中断控制器支持5种外部中断请求信号:IN-T0~INT4。这些输入是边沿敏感的;它们要求一个由低到高或由高到低的跳变以产生一个中断请求。INTCON2寄存器具有5个位(INTOEP~IN-T4EP),用于选译边沿检测电路的极性。本系统中采用由高到低的跳变产生中断请求,BLISY控制信号与dsPIC30F60lOA的INTO相连。数据转换结果通过dsPIC30F60IOA的I/O口,读到控制器内部。AD7862与控制器的电路连接图如图3所示。
3.2 软件部分实现
软件部分流程如图5所示,系统启动后先初始化I/O、SD卡、AD7862和设置INT0中断,为A/D采样和数据存储做准备。由于AD7862有两个通道。需对这两个通道分别进行A/D转换,先采样A通道后采样B通道,具体是哪个通道由AO决定,也就是控制器的RB8引脚。
数据采集过程中要获知A/D转换已结束的方法有:
1)定时 使用定时器,转换开始后过一段时间读取转换结果;
2)扫描 扫描BUSY引脚,当变为低电平时,即可知转换结束,读取转换结果;
3)中断 BUSY作为中断信号,输入到INTO中,并设置为从高到低触发中断,当转换结束后,BUSY信号由高变低,触发中断。
本系统采用第3种方法,即中断方法。中断服务子程序如图6所示,进入中断服务子程序后,首先清中断标示,然后分两次读取,即Vx1和Vx2(X代表A或B),读完之后对数据进行处理并存储到SD卡相应位置中,最后置采样结束标示。
4 结束语
实践表明,通过对模数转换器件的正确使用,完全可以达到很高的采样精度,并能满足系统实时性的需要。通过外扩模拟电路部分,可以用于各种高精度高速的数据采集存储系统。
- 一种用于高速ADC的采样保持电路的设计(04-19)
- 带辅助DAC的双路Σ-Δ转换器的原理及应用(09-01)
- 采用开关电源为高速模数转换器供电(10-11)
- 在PCB级采用时间交替超高速模数转换器(01-28)
- 14位125Msps模数转换器ADS5500及其应用 (03-06)
- 关于新型压电式器件简化振动能量收集(03-21)