×
工业控制 > 工业自动化 > 详情

基于DSP与MAX147的多路数据采集系统设计

发布时间:2020-06-02 发布时间:
|

1. 引言

    由于DSP芯片具有先进的并行结构,使其在信号处理和数据采集领域得到了越来越广泛的应用。TI公司的DSP芯片TMS320VC5402PGE100最高工作频率是100MHZ,具有2个高速、全双工、多通道缓冲串行接口(McBSP),其方便的数据流控制可使其与大多数同步串行外围设备接口。MAXIM公司的A/D芯片MAX147具有较高的性能价格比,最高的转换频率可达130kHz,具有高采样率、低功耗、高精度等特性,非常适合于体积小、对功耗要求比较严格的移动应用设备,如便携式工业测量、医疗仪器等。

2. MAX147工作原理

    2.1 MAX147介绍

    MAX147是一种具有8个单端输入通道或4个差动输入通道的12位精度的串行数据转换器。输入电压范围:0~2.5V(或-1.25V~+1.25V),可软件配置单/双极输入。采样频率可达133kHz。采用单电源供电,工作电压范围+2.7~+5.25V。它的功耗低:在3V/133kps时其电源电流为1.2mA,在3V/133kps时其电源电流为54μA,而在掉电模式时仅为1μA。它的通信接口与SPI/QSPI/Microwire/TMS320兼容。

    2.2 MAX147工作时序

    MAX147要启动一次转换,就需要向DIN送入一个8位控制字。当片选信号CS为低时,控制字的每一位在SCLK的上升沿送入MAX147内部寄存器。当CS拉低时,第一个到达的逻辑“1”表示控制字的第最高位。当MAX147工作在SPI模式且选择外部时钟时,保证CPU串行口工作在主机模式下,CPU产生适当的时钟频率(100KHz-2MHz)。

    MAX147的控制字由八位组成。

    bit7 控制字节起始位,“1”有效,在此之间有,DIN上的“0”位均无效。

    bit6~bit4 通道选择位,设置采样输入脚。

    bit3 单极/双极选择位,bit3=1时,为单极转换模式,采样信号输入电压范围0~VREF;bit3=0时,双极转换模式,输入电压-VREF/2~+VREF/2。

    bit2 单端/差动选择位,bit2=1时,输入电压CMOS端作比较,bit2=0时,输入电压为所测两电压之差。

    bit1 bit0 bit1=0、bit0=0时,为全掉电模式,bit1=0、bit0=1时,速掉电模式(仅适合于MAX146),bit1=1、bit0=0时,为内部时钟模式,bit1=1、bit0=1为外部时钟模式。

    MAX147具体软件步骤如下:

    (1) 送控制命令字:1XXX1111,输入信号为单极性且单端输入,选择外部始终模式,XXX为通道选择。

    (2) CPU将片选信号CS拉低。

    (3) 发送控制字,同时接收一个字节,但将接收的字节忽略。

    (4) 发送0x00,同时接收第二个字节。

    (5) 发送0x00,同时接收第三个字节。

    (6) CPU将CS拉高。

    第二和第三个接收字节包含了MAX147的转换结果。为避免T/H的过多衰减,应保证其全部转换时间不超过120μs。

3. TMS320VC5402的McBSP

    3.1 McBSP的特点

    TMS320VC5402有两个多通道缓冲串口(MCBSP0和MCBSP1),通过帧信号来控制数据流。独立的接收、发送帧和时钟信号;双倍的发送缓冲和三倍的接收缓冲数据存储器;可直接与工业标准的编码器、模拟界面芯片、其它串行A/D、D/A器件连接;具有外部移位时钟 发生器及内部频率可编程移位时钟;可直接利用多种串行协议接口通信,如SPI、T1/E1,MVIP,AC97等;发送和接收通道数最多可以到达128路;宽范围的数据格式选择,包括8、12、16、20、24、32位字长;利用μ律和A律的压缩扩展通信;8位数据发送的高位、低位先发送可选;帧同步和时钟信号的极性可编程;可编程内部时钟和帧同步信号发生器。

    3.2 MCBSP的工作方式

    McBSP的工作方式有以下几种:多通道缓冲模式、SPI工作模式,A-bit模式、数字回路模式、GPIO模式和省电模式。McBSP的外部管脚为:串行数据接收管脚DR、接收时钟管脚CLKR、接收帧同步信号管脚FSR、发送时钟管脚CLKX、串行数据发送管脚DX、发送帧同步信号管脚FSX。MCBSP的工作原理是:发送时,先写数据于数据发送寄存器DXR[1,2],再在发送时钟CLKX和帧同步发送信号FSX控制下,通过发送移位寄存器XSR[1,2]将数据经发送引脚DX移出发送;接收数据时,在接收时钟CLKR和帧同步发送信号FSR控制下,将通过接受引脚DR接收的数据移入接收移位寄存器RSR[1,2],并复制这些数据到接收缓冲寄存器RBR[1,2],再复制到DRR[1,2],最后由CPU或DMA控制器读出。这个过程允许内部和外部数据通信同时进行。如果接收或发送字长R/XWDLEN被指定为8,12或16模式时,DRR2、RBR2、RSR2、DXR2、XSR2等寄存器不能进行写、读、移位操作。


4. MAX147与TMS320VC5402的接口电路

    MAX147芯片兼容SPI数据通信协议。SPI协议具有主从模式,使用4 条信号线:1) 串行时钟信号线(SCK);2) 主机输入/从机输出串口数据线(MISO);3) 主机输出/从机输入串口数据线(MOSI);4) 低电平有效的使能信号线(SS) 。

    TMS320C54XX提供的时钟停止模式可用于SPI 协议通信,当McBSP 被配置为时钟停止模式时,发送器和接收器在内部是同步的,因此可以将McBSP 作为SPI 主设备或从设备。当设置McBSP为SPI 主设备时,发送端输出信号(BDX) 就作为SPI 协议中MOSI 信号。接收端输入信号(BDR) 则被用作MISO 信号。发送数据帧同步脉冲信号(BFSX) 用作设备片选信号(即SS),而发送数据位时钟信号(BCLKX) 用作SPI 协议中SCK。由于收数据位时钟(BCLKR) 和接收数据帧时钟(BFSR) 在内部与BFSX 和BCLKX是相连的,因此,这些信号不用于SPI 模式。

5. 接口程序设计

    DSP的McBSP工作在SPI模式下,需要进行以下初始化步骤:

    1)将SPCR寄存器中的XRST和RRST清零,复位发送器和接收器;

    2)McBSP保持复位状态,设置相关寄存器,CLKSTP=0X,禁止时钟停止模式;

    3)置SPCR寄存器中的GRST=1,采用率发生器退出复位,开始工作;

    4)等待两个时钟周期,确保初始化过程中McBSP内部正确同步;

    5)设置所需的CLKSTP值;

    6)若CPU访问McBSP,则XRST=RRST=1,使能发送器和接收器,SPCR寄存器中其它位不变,若DMAC访问McBSP,先进行DMA初始化,启动DMA,使之等待同步事件,然后XRST=RRST=1,McBSP退出复位状态;

    7)等待两个时钟周期以确保McBSP内部逻辑稳定。

    将McBSP配置成SPI模式主机模式的程序如下所示:

     

结束语

    本文详细介绍了ADC芯片MAX147与TI公司的数字处理器TMS320C5402之间的串行接口电路设计及程序设计,实现了多路数据采集系统。该系统设计方案,接口电路简单方便,程序采用汇编语言编程,运行稳定,速度快,适用于语音处理,声波振动信号采集,具有较高的实用价值及广泛的应用前景。

 

『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
Buck直流变换器的滑模变结构控制研究