基于USB接口的数模转换系统设计

分享到:

在控制系统中经常用到一些模拟信号,通常使用数模转换器输出所需的模拟信号。计算机控制数模转换器需要借助外部总线接口,USB接口是常用的外部总线接口,用来控制数模转换器非常便捷。作者以典型的USB接口芯片和D/A转换器芯片为例,详细说明了基于USB接口的数模转换系统的电路及程序设计方法。

  

 

0 引言

  

 

在控制系统中经常需要产生和控制一些模拟信号,而常用的微处理器外部总线接口为数字信号,无法直接产生需要的模拟信号,这就用到了D/A转换器。可以通过USB接口来控制D/A转换器,使其输出要求的模拟量电压或模拟量电流。

  

 

USB接口作为微处理器常用的外部总线接口,目前已经得到了广泛的应用,采用USB接口减少了开发的时间、风险以及费用,从而用最快捷的方法实现最经济的解决方案。

  

 

本文以USB接口芯片PDIUSBD12和电压输出型D/A转换芯片AD558为例,详细阐述了基于USB接口的DAC系统电路及程序设计方法。

  

 

1 USB接口芯片PDIUSBD12简介

  

 

本系统选用的USB接口芯片是Philips公司生产的USB1.1接口芯片PDIUSBD12,它是一款性价比很高的USB器件,通常用作微控制器系统中实现与微控制器进行通信的高速通用并行接口。它还支持本地的DMA传输。PDIUSBD12芯片的主要特性如下:

  ·符合USB1.1规范;

  ·集成了SIE、FIFO存储器、收发器以及电压调整器;

  ·完全自治的直接内存存取(DMA)操作;

  ·集成320字节多结构FIFO存储器;

  ·在批量模式和同步模式下均可实现1MB/s的数据传输速率;

  ·具有良好EMI特性的总线供电能力;

  ·可通过软件控制与USB的连接;

  ·具有可编程的时钟频率输出;

  ·符合ACPI、OnNOW和USB电源管理的要求;

  ·高于8kV的在片静电防护电路;

  ·双电源操作:3.3±0.3V或扩展的5V电源,范围为3.6~5.5V;

  

 

所有这些特性都为系统显着节约了成本,同时使USB功能在外设上的应用变得容易。低功耗使它可以应用于通过总线供电的外设。

 

2 D/A转换芯片AD558简介

  

 

本系统选用的DAC芯片是ADI公司推出的8位电压输出型D/A转换器AD558.电压输出型D/A转换器主要特点是没有放大部分的延迟,可以做到很高的速度,但负载能力有限,一般用于高阻抗负载的场合。

  

 

D/A转换所采用的基本方法是将数字量转化成二进制数据。其每一位产生一个相应的电压或者电流,而这个电压或者电流的大小正比于相应的二进制位的权。最后将这些电压或者电流相加并输出。

  

 

一个完整的D/A转换器主要包括3部分,即加权电阻解码网、数字量控制的电子开关组合和由运算放大器构成的电流电压转换器。D/A转换器的原理如图1所示。

 

  

 

一般来说,并行D/A转换器的数字-模拟转换速度要比串行D/A转换器要高。并行D/A转换器转换速度快的原因是在数字量的输入端,各个数字位是同时输入到转换器相应的端口的。整个器件的转换时间取决于电源电压的建立时间和各个权位的求和时间。而这些时间一般都很短,一般可以达到纳秒或微秒量级。因此,对于速度要求比较高的场合,应该优先选用并行D/A转换器。

  

 

在AD558型D/A转换器中,电子开关组和输入二进制数D0~D7相对应。当某个二进制位为1时,对应的电子开关闭合,基准电压Vref连接加权电阻解码网络,使该支路电阻上有电流通过;当某个二进制位为0时,对应的电子开关断开,该支路电阻上便无电流通过。加权电阻解码网络各个分支的电阻值与输入的二进制数据D0~D7的权成反比关系。权大的电阻值小,权小的电阻值大。D/A转换器根据各个权位的情况以及输入的二进制数,通过求和及电流电压转换电路,得到总和的模拟电压值并输出。

  

 

在D/A转换器中,数字量的位数也反映了D/A转换器的分辨率,即输入数字量发生单位数字的变化时,对应的模拟量输出值的改变。对于8位电压型D/A转换器,输入数字量发生单位变化时,模拟量输出的改变为V/255,其中V为电压输出的满量程。

  

 

AD558的主要性能指标如下:

  ·8位并行接口;

  ·电压的输出范围0~+10V;

  ·相对精度±(1/2)最低有效位;

  ·输出转换建立时间1 s;

  ·使用单一电源供电,电源电压范围+4.5~+16.5V;

  ·内部具有基准电压源,无须外接基准源;

  ·内部集成有数据锁存器;

  ·75mW低功耗。