在应用DSP 进行数字信号处理时,通常都要用采样电路对模拟信号进行采样,然后进行A/D 转换器转换成数字信号再进行数据处理。这里给出一种由TLV1571 与TMS320VC5410[1]组成的信号采集系统。
1 TLV1571 简介:
在DSP 的外围电路中,A/D 转换器比较重要。基于不同的应用,可选择不同性能指标和价位的芯片。一般的A/D 转换器的选择主要考虑:转换精度、转换时间、转换器的价格。
这里选择了TI 公司专门为DSP 配套的一种10 位的并行A/D 转换器TLV1571, 该器件给定的CLK 频率达到的等效最大采样频率为(1/16) fCLK。
1.1 TLV1571 的内部结构及引脚定义:
TLV1571 的内部结构及引脚功能定义如图1 及表1 所示。
TLV1571 采用2.7~5.5 V 的单电源工作,能接受0~3.3 V的模拟输入电压, 此时以625 Kb/s 的速度使输入电压数字化。在5 V 电压下,以最大1.25 Mb/s 的速度使输入电压数字化。该A/D 转换器具有速度高,接口简单以及功耗低等特点,成为需要模拟输入的高速数字信号处理的理想选择。
1.2 TLV1571 的初始化:
上电后, 必须为低电平以开始I/O 周期,INT/EOC 最初为高电平。TLV1571 要求两个写周期以配置两个控制寄存器。从掉电状态返回后的首次转换可能无效,应当不予考虑。
1.3 TLV1571 的控制寄存器控制字的设置:
TLV1571 的控制寄存器格式如表2 所示,它可以实现软件配置,其两个最高有效位D9 和D8 用于寄存器寻址,其余的8 位用作控制数据位。在写周期内所有寄存器位同时写入控制寄存器,用户可配置两个控制寄存器CR0 和CR1,对于控制寄存器0(CR0),A1 ∶ A0=00,其配置如表3 所示;对于控制寄存器1(CR1),A1 ∶ A0 = 01,其配置如表4 所示。
通过改变控制寄存器的控制字,可以选择TLV1571 的工作方式。通过配置CR0.D5 可以选择时钟源,对于时钟源的选择,有内部时钟和外部时钟,它的内部具有10 MHz 振荡器。
通过配置CR1.D6 可以选择内置振荡器的工作速度, 配置为(10±1)MHz 或(20±2)MHz。输出方式也有2 种方式:二进制输出和补码输出。
在单通道输入方式下则CR0.D3 = 0,CR1.D7 = 0; 采用软件启动方式则CR0.D7 = 1; 采用内部时钟源则CR0.D5 =0;内部时钟源振荡频率设置为20 MHz 则CR1.D6 = 1; 采用二进制输出方式,则CR1.D3 = 0。所以最终得到的控制寄存器控制字为:CR0 = 00C0H,CR1 = 0140H。在单通道软件启动时,最初由WR 的上升沿启动采样,在RD 的上升沿发生采样; 在采样开始后的6 个时钟周期后开始转换,INT 方式时,每次转换后产生一个INT 脉冲;EOC 方式时,转换开始,EOC由高电平变至低电平,转换结束后换回高电平。
1.4 TLV1571 的自测:
TLV1571 提供了3 种自测方式。当采用这些自测方式的时候,不用提供外部信号便可检查A/D 转换器本身工作是否正常。通过写CR1(D1、D0)来控制这3 种自测方式,具体方法如表5 所示。另外当CR1.D2 = 1, CR1(D1、D0) = 0 时,此时回输出写入CR0 控制寄存器的控制字; 当CR1.D2 = 1,CR1(D1、D0) = 1 时,此时回输出写入CR1 控制寄存器的控制字,也可以用来测试和检验控制字是否正确写入控制寄存器及A/D 转换器是否正常工作。
2 的接口连接及调试:
2.1 TLV1571 与TMS320VC5410 的接口:
TLV1571 与TMS320VC5410 的接口连接很简单, 如图2所示。这个系统中没有采用硬件启动采样控制的方法,而是采用了软件启动的控制方法。时钟信号也是采用A/D 转换器的内部时钟。如果需要外部时钟输入,可以由DSP 提供一个精确而且可以根据需要控制变化的时钟信号。本设计采用查询方法来读取转换后的数据。另外在设计电路时要注意,当供电电压为3 V 时,TLV1571 提供的采样速度是625 ks/s,此时它的功耗为12 mW;当供电电压为5 V 时,它提供的采样速度是1.25 Ms/s,功耗为35 mW。
2.2 系统的调试:
在调试这个系统时, 由于DSP 外部的I/O 空间的调试,基本上只涉及如何选通该空间,如何从外部空间取数据或读数据,如何和外部空间建立握手信号,但是要注意的是DSP与外围器件时序上的配合。特别是对于数据线信号的读取,当系统中有多个器件共享DSP 数据线的时候,一定要处理好各个器件的时序配合。使处于非工作状态的器件的数据线处于高阻状态, 以免影响正常工作的器件的数据读写。在对TLV1571 调试过程中需要注意以下问题:1)必须将TLV1571的2 个状态字正确地写入到A/D,可以在写入后读一次数据来确认写入数据的正确性,也可以采用循环写入方式利用示波器观察写入的两个脉冲信号, 另外也可以用读出写入CRO、CR1 控制寄存器控制字的方法来判断控制字是否正确写入了TLV1571 的控制寄存器内,也可以判断器件是否正常工作;2)TMS320VC5410 的读写信号只有一根地址线, 所以需利用XF 引脚控制TLV1571 的读信号,且必须在DSP 每次读入数据后,用软件控制XF 引脚输出信号到TLV1571,否则A/D 将不再采样。另外如果采用DSP 定时中断来读取数据的时候,在设置定时中断时,中断间隔只要大于TLV1571 工作频率所需采样周期数, 可以不用查询的方法来读取EOC 信号,而是直接读取采样数据,然后控制XF 输出信号使它进行下一次采样工作;3)TLV1571 不能采样负的电压信号, 如果必须采样负的电压信号,可以人为引入一个直流信号,将负电压抬高到正电压,而DSP 要在采样信号中减去引入的直流信号;4) 为了验证采样信号是否正确, 可以在CCS 下画出所采样数据的时域图或频域图。
3 结束语:
实验证明该系统可以满足一般高速实时信号的采样和处理工作,验证了在单通道下该系统可以达到最高1.25 Ms/s的采样速度,而且通过调整DSP 定时中断时间可以方便的获得在该系统最大采样频率(1.25 Mb/s)以下的各种采样速度,可以灵活的满足多种应用。另外这个系统支持最多8 路的高速实时数据信号采集, 通过配置正确的A/D 转换器控制字CR0、CR1 就可以方便的调整输入信号的数量,而硬件电路不用改变。在实际的实验中,将这个系统制作成了一个最小系统,通过修改加入所需要的器件,可以将这个系统制作成各种需要专用的数据采集系统。