微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 硬件工程师文库 > 德州仪器AMC1204的应用指南

德州仪器AMC1204的应用指南

时间:05-17 来源:电子发烧友网 点击:

当输入电压从-250mV 到+250mV 之间,AMC1204 的转换性能可以得到保障。为了得到真实的输出数据信息,一般需要在输出后端进行数字滤波处理,实际应用中可以采用以下两种滤波器对输出数据进行处理。

  2.1 移动平均滤波器

  移动平均滤波器比较简单,它是取输入信号的最近的一些值,进行算术平均,相当于一个低通滤波器,滤除高频分量,保留低频分量。在时钟clk 的上升沿,对AMC1204 输出的高脉冲进行计数,计算M 个clk 的上升沿时,对应的高电平脉冲个数N。则,对应的转换结果为(640*N/M-320)mV。平均的项数越多,即M 越大,则得到变化越缓慢的输出信号,但得到的精度也越高。

  

  图5 AMC1204 输出数据波形

  需要注意的是,在实际应用中,这种方法必须平均尽可能多的输入信号才能获得比较高的精度。移动平均滤波器实现比较简单,不需要单独增加DSP 或FPGA 即可实现。但是,移动平均滤波器的频域效果较差,滚降较慢,因此,在检测低频信号及对精度要求不高的应用中,可以考虑使用这种方法。但是,对于精度要求比较高的应用中,需要考虑使用性能更好的滤波器,如Sinc 滤波器。

  2.2 Sinc 滤波器

  Sinc滤波器具有良好的频域特性,较低的成本和功耗,延时较低,因此,广泛用作Delta-Sigma DAC 的滤波器。Sinc 滤波器可通过专门的滤波器芯片或者通过FPGA 或DSP 算法来实现。

  AMC1210 是一个4 通道的数字滤波器,芯片输出接口可设置为SPI 接口或者并行接口方式,方便与CPU 进行数据通信。数字滤波器可设置为Sincfast, 或者方式。实际应用时,由于滤波器具有更好的低通特性,建议将AMC1210 配置为 滤波器,过采样率(OSR)设为256以获得最优的转换结果。

  

  图6 AMC1204 与AMC1210 的连接

  此外,也可以通过FPGA 或DSP 来实现Sinc 滤波器算法。滤波器的基本架构如图7 所示。

  

  图7 调制器与抽取滤波器的基本架构

  以下是用VHDL 语言实现SINC3 滤波器的一段示例程序。其中,CNR=MCLK/M,M 为抽取率(即过采样率OSR)。

  

  图8 数字滤波器架构

  图8 的示例代码:

  library IEEE;

  use IEEE.std_logic_1164.all;

  use IEEE.std_logic_unsigned.all;

  entity FLT is

  port(RESN, MOUT, MCLK, CNR : in std_logic;

  CN5 : out std_logic_vector(23 downto 0));

  end FLT;

  architecture RTL of FLT is

  signal Z1 : std_logic_vector(23 downto 0);

  signal Z2 : std_logic_vector(23 downto 0);

  signal Z3 : std_logic_vector(23 downto 0);

  signal Z4 : std_logic_vector(23 downto 0);

  signal Z5 : std_logic_vector(23 downto 0);

  signal Z6 : std_logic_vector(23 downto 0);

  signal Z7 : std_logic_vector(23 downto 0);

  begin

  process(MCLK, RESN)

  begin

  if RESN = ‘0’ then

  Z1 《= (others =》 ‘0’);

  Z2 《= (others =》 ‘0’);

  Z3 《= (others =》 ‘0’);

  elsif MCLK‘event and MCLK = ’1‘ then

  Z1 《= Z1 + MOUT;

  Z2 《= Z2 + Z1;

  Z3 《= Z3 + Z2;

  end if;

  end process;

  process(CNR, RESN)

  begin

  if RESN = ’0‘ then

  Z4 《= (others =》 ’0‘);

  Z5 《= (others =》 ’0‘);

  Z6 《= (others =》 ’0‘);

  Z7 《= (others =》 ’0‘);

  elsif CNR’event and CNR = ‘1’ then

  Z4 《= Z3;

  Z5 《= Z3 - Z4;

  Z6 《= Z3 - Z4 - Z5;

  Z7 《= Z3 - Z4 - Z5 - Z6;

  end if;

  end process;

  CN5 《= Z7;

  end RTL;

  3 结论

  应用高性能隔离Delta-Sigma调制器AMC1204时,为了确保转换精度,需要注意外围输入电路的设计,选择合适的输入采样电阻以及时钟频率,使得输入采样电阻阻值相对于输入等效阻抗尽量小,以此降低输入电阻引起的转换误差;同时选择合适的输出滤波器,以满足整个系统对测量精度的要求。

  4 Reference

  [1] AMC1204 datasheet

  [2] AMC1210 datasheet

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top