TMS320C5402和AD7705芯片的系统分析

时间:2011-08-25

  在智能仪器仪表的应用中,需要将传感器输出的模拟信号转换为数字信号,以实现微机的控制。数据采集是智能测试的重要环节,其采集的数据和稳定性对智能测试有重要的意义。测试技术的进步要求数据采集系统的更高、功能更强、成本低廉、体积更小。AD公司的AD7705/06以及AD7707为比较典型的一种16位A/D转换芯片,它集放大、滤波及A/D转换单元于一体。而TI公司的DSP芯片TMS320C5402具有高速度、低功耗、功能强、接口方便等特点,是一款性价比较高的微处理器。

  1  模数转换器AD7705

  模数转换器即A/D转换器,或简称ADC,通常是指一个将模拟信号转变为数字信号的电子元件。通常的模数转换器是将一个输入电压信号转换为一个输出的数字信号。由于数字信号本身不具有实际意义,仅仅表示一个相对大小。故任何一个模数转换器都需要一个参考模拟量作为转换的标准,比较常见的参考标准为的可转换信号大小。而输出的数字量则表示输入信号相对于参考信号的大小。

  AD7705是AD公司新推出的16位Σ-Δ A/D转换器,能直接将传感器测量到的多路微小信号进行A/D转换。这种器件还具有高分辨率、宽动态范围、自校准、优良的抗噪声性能以及低电压低功耗等特点,非常适合仪表测量、工业控制等领域的应用。它采用三线串行接口,有2个全差分输入通道,能达到0.003%非线性的16位无误码数据输出,其增益和数据输出更新率均可编程设定,还可选择输入模拟缓冲器以及自校准和系统校准方式[2]。AD7705工作电压为3 V或5 V。3 V电压时,功耗为1 mW,等待模式下电源电流仅为8 μA。

  1.1 内部结构

  图1为AD7705内部结构框图。AD7705芯片是带有自校正功能的Σ-Δ的A/D转换器,其内部由多路模拟开关、缓冲器、可编程增益放大器(PGA)、Σ-Δ调制器、数字滤波器、基准电压输入、时钟电路及串行接口组成。其中串行接口包括寄存器组,它由通信寄存器、设置寄存器、时钟寄存器、数据输出寄存器、零点校正寄存器和满程校正寄存器等组成。

  AD7705的PGA可通过指令设定,对不同幅度的输入信号实现1、2、4、8、16、32、64和128倍的放大,因此,AD7705芯片既可接收从传感器送来的低电平输入信号,又可接收高电平信号。

  1.2 片内寄存器

  寄存器是中央处理器内的组成部分。寄存器是有限存贮容量的高速存贮部件,它们可用来暂存指令、数据和位址。在中央处理器的控制部件中,包含的寄存器有指令寄存器(IR)和程序计数器(PC)。在中央处理器的算术及逻辑部件中,包含的寄存器有累加器(ACC)。

  程序计数器单片机及汇编语言中常称作PC(program counter)。为了保证程序(在操作系统中理解为进程)能够连续地执行下去,CPU必须具有某些手段来确定下一条指令的地址。而程序计数器正是起到这种作用,所以通常又称为指令计数器。在程序开始执行前,必须将它的起始地址,即程序的一条指令所在的内存单元地址送入PC,因此程序计数器(PC)的内容即是从内存提取的条指令的地址。当执行指令时,CPU将自动修改PC的内容,即每执行一条指令PC增加一个量,这个量等于指令所含的字节数,以便使其保持的总是将要执行的下一条指令的地址。

  AD7705片内包括8个寄存器,均通过器件串行口访问。

  (1)通信寄存器:它的内容决定下操作是对哪一个寄存器进行读操作还是写操作,并控制对哪一个输入通道进行采样。所有与器件的通信都必须先写通信寄存器。上电或复位后,器件默认状态为等待指令数据写入通信寄存器。通信寄存器各位的说明如表1所示,它的寄存器选择位RS2~RS0确定下次操作访问哪一个寄存器,而输入通道选择位CH1、CH0则决定对哪一个输入通道进行A/D转换或访问校准数据。

  (2)设置寄存器:是一个可读/写的8位寄存器,用于设置工作模式、校准方式、增益等。

  (3)时钟寄存器:它也是一个可读/写的8位寄存器,用于设置有关AD7705运行频率参数和A/D转换输出更新速率。

  (4)数据寄存器:是一个16位只读寄存器,存放AD7705的转换结果。值得注意的是,数据手册上虽然说明它是一个16位的寄存器,但实际上它是由2个8位的存储单元组成的,输出时MSB在前,如果接收微控制器则需要LSB在前,例如8051系列,读取时应该分2次读,每次读出8位分别倒序,而不是整个16位倒序。

  其他的寄存器分别是测试寄存器、零标度校准寄存器、 满标度校准寄存器等,用于测试和存放校准数据,可用来分析噪声和转换误差。

  1.3 校准功能

  为提高A/D转换质量,AD7705提供自校准和系统校准2种功能选择,向设置寄存器的MD1和MD0写入相应的值来选择自校准还是系统校准。每当环境温度和工作电压发生变化,或者器件的工作状态改变(如输入通道切换)、增益或数字滤波器陷波频率变动、信号输入范围变化等任一项发生时,必须进行1次校准。对于自校准方式,校准过程在器件内部1次完成。AD7705内部设置AIN(+)端和AIN(-)端为相同的偏置电压,以校准零标度。满标度校准是在一个内部产生的VREF电压和选定的增益条件下进行的。系统校准则是对整个系统增益误差和偏移误差,包括器件内部误差进行校准。在选定的增益下,先后在外部给AIN(+)端施加零标度电压和满标度电压,先校准零标度点,然后校准满标度点。根据零标度和满标度的校准数据,片内的微控制器计算出转换器的输入输出转换函数的偏移和增益斜率,对误差进行补偿。

  1.4  数字滤波和输出更新速率

  模拟信号由Σ-Δ调制器变换为占空比被模拟电压调制(调宽)的数字脉冲串,然后在片内使用低通数字滤波器将其解释成16位二进制码并滤去噪声,以完成A/D转换。低通数字滤波器的振幅频率特性如下:

  式中,N为调制速率与输出更新速率之比。

  需要指出的是,器件产生的噪声源主要来自半导体噪声和量化噪声,PGA放大量和滤波器陷波频率越低,则输出的半导体噪声和量化噪声越小,A/D转换器的实际分辨率越高。

  2 信号采集系统的实现

  AD7705灵活的串行接口使得其能与大多数微计算机和微处理器很容易地进行接口,目前,用得多的是与单片机进行接口。本系统是以DSP芯片TMS320C5402为微处理器组成数据采集系统,主要是借助DSP的强大功能,使采集信号的后续处理(如转换、显示、打印)更加方便。

  DSP芯片,也称数字信号处理器, 是一种具有特殊结构的微处理器。DSP芯片的内部采用程序和数据分开的哈佛结构,具有专门的硬件乘法器,广泛采用流水线操作,提供特殊的DSP指令,可以用来快速的实现各种数字信号处理算法。

  根据数字信号处理的要求,DSP芯片一般具有如下的一些主要特点:

  (1) 在一个指令周期内可完成乘法和加法。

  (2) 程序和数据空间分开,可以同时访问指令和数据。

  (3) 片内具有快速RAM,通常可通过独立的数据总线在两块中同时访问。

  (4) 具有低开销或无开销循环及跳转的硬件支持。

  (5) 快速的中断处理和硬件I/O支持。

  (6) 具有在单周期内操作的多个硬件地址产生器。

  (7) 可以并行执行多个操作。

  (8) 支持流水线操作,使取指、译码和执行等操作可以重叠执行。

  2.1 系统硬件设计

  图2为系统硬件接口电路,TMS320C5402作为主设备提供时钟信号并控制数据传输过程。TMS320C5402的McBSP串口工作在时钟停止模式时与SPI协议兼容。McBSP可以作为SPI设备的主设备或者从设备,在这种模式下,接收时钟信号BCLKR和接收帧同步信号BFSR将不进行连接,因为它们在内部分别与BCLKX和BFSX相连接。

  McBSP 是英文Multichannel Buffered Serial Port (多通道缓冲串行口)的缩写

  McBSP是TI公司生产的数字信号处理芯片的多通道缓冲串行口。McBSP是在标准串行接口的基础之上对功能进行扩展,因此,具有与标准串行接口相同的基本功能。

  它可以和其他DSP器件、编码器等其他串口器件通信。

  AD7705的串行数据接口包括5个接口,其中片选输入CS、串行时钟输入SCLK、数据输入DIN、转换数据输出口DOUT用于传输数据,状态信号输出口用于指示什么时候输出数据寄存器的数据准备就绪。当为低电平时,转换数据可用;当为高电平时,输出寄存器正在更新数据,不能读取数据。

  2.2 系统软件设计

  软件设计主要考虑以下4个方面:

  (1)TMS320VC5402串口的初始化。首先将DSP串口0复位,再对串口0的寄存器进行编程,使DSP串口工作在以下状态:以SPI模式运行,每帧1相,每相1个字,每字16位,帧同步脉冲低电平有效,并且帧同步信号和移位时钟信号由内部产生。

  (2)AD7705的初始化和配置。上电或复位后,器件默认状态为等待指令数据写入通信寄存器。它的寄存器选择位RS2~RS0确定下次操作访问哪一个寄存器,而输入通道选择位CH1、CH0则决定对哪一个输入通道进行A/D转换或访问校准数据。

  (3)虽然AD7705的通信寄存器、时钟寄存器都是8位的,数据寄存器是16位的,但访问前面3个寄存器时可以将前后2次写操作成功连接起来,使读写操作都是16位数据传输处理,这样刚好与16位的TMS320C5402匹配。

  综合以上考虑,系统程序流程图如图3所示。程序代码(这里只给出读写AD7705的程序代码)如下:

  STM     #3FFFH,IFR

  STM     #2005H,DXR10     ;写时钟寄存器

  IDLE    1

  STM     #3FFFH,IFR

  STM     #1070H,DXR10     ;写设置寄存器

  IDLE    1

  WAIT: STM     #3FFFH,IFR

  BC      WAIT,NBIO        ;等待BIO为零

  STM     #3FFFH,IFR

  STM     #0038H,DXR10    ;设置下次读数据寄存器

  IDLE    1

  STM     #3FFFH,IFR

  LDM     DRR10,A          读数据寄存器;

  结果存累加器A中

  STM     #3FFFH,IFR

  3 系统的制作与调试

  AD7705的印制板电路必须按规格设计,以确保模拟区和数字区分开并各自限定在电路板上的一定区域。利用接地平面将它们分开,可达到的屏蔽性能,并在一个地方将模拟和数字接地平面连接在一起,以避免出现接地环路;避免在元器件下面走数字线,否则会造成片内噪声成倍增加;AD7705的电源线应足够粗,以降低线路阻抗,减少电源供电的尖峰信号的影响;时钟信号不能在模拟输入信号附近通过,模拟信号和数字信号之间避免相互交叉;所有的模拟电源都用1个10 μF电容并联1个0.1 μF的陶瓷电容器接地去耦。

  在调试系统时,采用Sensym公司的BP01测压计,压力传感器构成半差动电桥,在它的OUT+和OUT-端输出1个差分输出电压。电桥的转换系数为3 mV/V,电桥激励电压为5 V,因此传感器的满度输出电压为15 mV。电桥激励电压还用来为AD7705产生基准电压,因此,激励电压的变化不会造成系统内的误差。图2中AD7705产生的基准电压为1.92 V,AD7705具有128的可编程增益时,AD7705的满度输入为15 mV。AD7705的第2个通道可以作为一个辅助通道测量另一个变化量,如温度。

  本文所介绍的高信号采集系统接口电路简单、编程方便,系统程序代码已经在CCS3.1开发环境上得到验证,并且将制作的AD7705板与DSP实验箱上的MS320C5402的McBSP串口连接,获得成功地通信和数据采集。本信号采集系统具有一定的推广应用价值。


  
上一篇:浅谈嵌入式汽车数字仪表设计
下一篇:ZigBee技术在无线智能家用燃气报警系统的应用

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料