您现在的位置:首页 > 技术资料 | ![]() |
基于TMS320F2812的数据采集及处理系统
前言 本系统采用TI 的DSP 芯片TMS320F2812 作为信号采集和处理的核心,通过片上自带的12位ADC进行采集。采集后的数据暂时存储在片内存储器中,通过串行异步通信接口SCI 传输到微机,微机将以文件形式存储采样数据。数字处理部分主要是进行简单的窄带滤波。考虑到采样器件可能和微机有较远距离(但< 1200M),在SCI和微机间采用了RS-422传输协议。
目前应用最多的是德州仪器公司的TMS320系列和摩托罗拉公司的DSP56000和DSP96000系列。TMS320F28系列芯片是TI最新推出的DSP芯片,特别适用于有大批量数据处理的测控场合,如数据采集,工业自动化控制,电力电子技术应用,智能化仪器仪表及电机,马达伺服控制系统等。其主要特点有: 采用高性能的静态CMOS技术,能在一个周期内完成32*32位的乘法累加运算,或者两个16*16位的乘法累加运算;时钟频率最高可达150MHz即6.67ns的指令周期,外部采用低频时钟、通过片内锁相环倍频,低功耗设计,FLASH 编程电压为3.3伏特。 16通道的12位模数转换器(ADC)含两路采样保持器,一个转换单元,可实现双通道同步采样,最小转换时间为80ns.片上含两个事件管理单元(EVA,EVB),设计用于PWM输出,转速测量、脉宽测量等。通讯接口,含2 个通用异步串口(SCI);2个通用同步串口(SPI),1个CAN总线接口(ECAN),2个McBSP串口(McBSP),56个独立配置的通用多功能I/O(GPIO)。 TMS320F2812应用的大量外设接口简化了电路设计。同时,它提供了足够的处理能力,使一些复杂实时控制算法的应用成为可能。
TMS320F2812 的ADC模块是一个12位分辨率的,具有流水线结构的模数转换器,(流水线ADC也称作分级型ADC)是这三种结构(现代模数转换器(ADC)设计最常用的结构分为逐次逼近(SAR)型ADC、 - ADC和流水线ADC三种)中能超过100 MSPS最高采样速率(但精度最低)的ADC,这种流水线结构的ADC分辨率通常最高仅能达到14 bit。TMS320F2812内置双采样保持电路,保持数据采集时窗口有独立的预定标控制。并且允许系统对同一通道转换多次,允许用户执行过采样算法,这较传统的单一转换结果增加了更多的解决方案,有利于提高采样的精度。有多个触发源可以启动ADC 转换。快速的转换时间, ADC 时钟可以配置为25MHz,最高采样带宽为12.5MSPS。用TMS320F2812 搭建数据采集系统时,不必外接ADC,避免了复杂的硬件设计。由于此ADC可以直接对0-3V电压范围采样,也可以经过信号调理后对峰峰值不超过3V的双极性模拟信号进行采样。先把被测信号用示波器或其他方法判断其极性和幅值范围。若为单极性信号则断开偏置电路,双极性时连接到电路上调节电压范围到0-3V。为测试片上ADC的线性,实验中主要是对几个电平信号进行采样,把ADC 采集的结果在程序中计算其对应的模拟量,并且同时用数字万用表测量,计算ADC 的线性和精度。实验数据如表1所示。
由上表所得ADC的线性曲线如图1所示:
采集0-3V的信号时(D 为采集的数字量 ADCLO)计算公式为: 采集峰峰值3V的双极性信号时,需要连接偏置电路。首先不加入信号直接测出偏置电压的数字量为DV,则实际的信号与采集的数字量的关系为:
数字信号处理之所以发展得这样快,应用得这么广,是与它的突出优点分不开的。归纳起来,有以下四个方面的优点: (1)精度高。模拟系统的精度主要取决于元器件的精度,一般模拟器件的精度达到10-3,己很不容易。而数字系统的精度主要取决于字长,16位的字长可达10-4以上。 (2)灵活性大。模拟信号装置一旦参数选定就不易改变,但是数字系统则不然,它的系数可调,甚至还可以具有可编程和自适应的能力。 (3)可靠性高。由于数字系统只有“0” 、“1”两个电平,其受温度、环境以及噪声等的影响比模拟系统小。 (4)时分复用。利用一套装置同时处理几个通道的信号。
串行通信接口SCI是采用双向通信的的异步串行通信接口,即通常所说的UART口。为减少串口通信时的CPU开销,TMS320F2812的串口支持16级接收和发送FIFO。SCI模块采用标准非归0 数据格式,可以与CPU或其他通信数据格式兼容的异步外设进行数字通信。当不使用FIFO时,SCI接收器和发送器采用双级缓冲传送数据,SCI接收器和发送器有自己独立的使能和中断位,可以在半双工通信中进行独立的操作,或者在全双工模式下同时操作。为了确保数据的完整性,SCI模块对接收到的数据进行中断检测、极性、超限和祯错误检测。通过对16位的波特率控制寄存器进行编程,可配置不同的SCI通信速率。TMS320F2812支持自动波特率检测逻辑。发送和接收可采用中断和查询两种方式。 由于TMS320F2812片内存储空间相对较小,难以做到长时间连续采集。本系统将采集的结果暂时存储在DSP 的片内数据区,再用微机的串口RS-232 实现与DSP 的电平匹配,同时实现全双工通信。为增大传输距离,在这中间又加两片MAX3490(两片MAX3490 之间电压很高,可以传输相当长的距离)。实验所需的电路原理如图2所示:
软件部分 DSP 的编程工具有C 语言和汇编语言两种。一般实时性要求不是特别高的场合,采用C语言编程完全可以满足要求。对于高速实时应用,采用C语言和汇编语言混合编程的方法,能把C语言的优点和汇编语言的高效率有机结合起来。本文涉及的关键程序和相应的流程图如下: EALLOW;
结束语 本文论述了以32 位定点芯片TMS320F2812 为核心的数据采集系统,充分利用它的片内外设ADC,SCI。利用其快速的转换时间,实时地把采集的数据传输到微机上。12 位的高速ADC 保证了采样的快速准确和同步,初步实现了数据的采集和存储。数据采样率可以通过程序实时根据输入信号的频率进行改变。
|