您现在的位置: 范文先生网 >> 理工论文 >> 电子通信论文 >> 正文

USB接口的高速数据采集卡的设计与实现

时间:2007-1-20栏目:电子通信论文


    MAX1449提供一个2.048V的精确带隙基准源,用来设定ADC满量程范围,也可以用外部基准源改变量程范围。MAX1449的最大差分输入电压范围为2V。

2.3 输入信号处理电路

MAX1449芯片的输入信号为差分输入时有最佳的采样效果。在本系统中用TI的HTS4503作为单端输入到差分输出的转换电路。THS4503高性能的全差分运放,带宽可达270MHz,具有非常好的线性,在100MHz下可支持11位的A/D转换要求,适合作为A/D变换的前端接口电路。具体电路见图3所示。

2.4 FIFO和时钟发生电路

高速A/D变换的数据不能直接通过USB送入主机,系统中通过FIFO来缓冲数据。本系统采用TI公司SN74V293芯片。它的容量为65536×18或131072×9,最快读写周期为6ns,可以满足100MHz采样数据的存储。用户可以选择输入、输出宽度,当选择输入、输出宽度为18时,可存储64K×10位的数据。如果选择输入、输出为9位,则可使存储容量扩大到128×9位,这样对精度要求不高的用户可以获得更多数据。

SN74V293有独立的读写时钟控制电路,允许读写操作同时进行。SN74V293内部有满、空、半满输出信号以及可编程设定的几乎满和几乎空输出信号,通过这些信号控制器可以灵活控制FIFO的读写操作。

对于高速数据采集系统,时钟信号很重要。在本系统中选用DALLAS公司的DS1073时钟芯片。DS1073是无需外部元件的频率振荡器。通过DALLAS独有的1-wire技术,可以设定内部的分频器数值,实现输出频率从27.3kHz~100MHz可调,从而方便地改变采样时钟,简化电路设计。MAX1449数据输出时下降沿有效,而FIFO写入时上升沿锁存数据。系统中采用DS90LC028A实现对时钟信号的取反。
USB接口的高速数据采集卡的设计与实现
    2.5 PCB板制作

由于是高速A/D采集,在制作PCB板时有一些需要注意的地方。电路板最好使用多层板,元件尽量选用表面封装器件。这样可以减小元器件之间的距离,减小寄生电感、寄生电容,同时减小电路板的尺寸。所有的旁路电容都要尽量靠近芯片的电源管脚。模拟公共地和数字公共地要分开,选一点通过低值表贴电阻(1~5Ω)、磁珠或直接连接,以免数字地电流干扰模拟地。电源最好用线性稳压电源,A/D和前端处理电路要用同一电源地输出,减小电源波动对采集的影响。

3 USB高速数据采集卡的软件

开发一个USB设备,软件设计是必不可少的。USB应用系统软件设计分为三部分:USB外设端的固件(Firmware)、主机操作系统上的客户驱动程序以及主机应用软件。主机应用软件通过客户驱动程序与系统USBI(USB Device Interface)进行通信,由系统产生USB数据的传送动作;固件则响应各种来自系统的USB标准请求,完成各种数据的交换工作和事件处理。

3.1 USB接口编程

固件程序主要是实现USB通信。TUSB3210采用SIE来管理USB通信。当主机与芯片进行USB通信时,会产生外部中断0,通过中断矢量寄存器判断。Setup_packed_Int、Input_endpoint0_Int、Output_endpoint0_Int这三个中断主要用于与主机建立连接、进行控制传输或中断传输;Input_endpoint1_Int、Output_endpoint1_Int这两个中断主要在批量传输时使用。在固件中分别执行不同的中断程序来实现USB的数据传输。

Void EX0_int(void) interrupt 0 //外部中断0

{

EA=DISABLE; //关中断

switch (bBECINT)(//确定中断ID

case VECINT_OUTPUT_ENDPOINT0:

bVECFINT=0x00;

上一页  [1] [2] [3] [4] 下一页

下页更精彩:1 2 3 4 下一页