首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 单元电路介绍 > 其它电路
基于TLV1562的四通道高速实时数据采集系统的设计
来源:本站整理  作者:佚名  2010-04-08 19:08:30



2.3.2 CPLD对TLV1562接口的实现

由于TLV1562芯片是可配置A/D转换器,其配置转换时序图见图。所以如何利用CPLD实现对TLV1562的配置与读写是关键技术之一。对于TLV1562的读写控制易于实现,而对于其配置,由于是对四通道循环采集,较为复杂。在TLV1562中有两个寄存器需要配置,也就是要有两次写,而每次配置的数据还不一样(见表一),所以应该在每次写的时候都应相应的提供数据。整个配置过程用VHDL语言采用有限状态机的方式来实现。定义5个状态,分别为st0,st1,st2,st3,ST4,st0是空闲态,st1,st2,st3,ST4是对应相应采集通道的状态,INDEXREG[1..0]是用来监测写信号的第几次写的标识码。 程序如下:

type states is (st0,st1,st2,st3,ST4);
signal current_state,next_state :states :=st0;
signal indexreg:STD_LOGIC_vector(1 downto 0);
signal chanel_data: STD_LOGIC_vector(9 downto 0);
begin
indexreg<=index_reg; cs<=not start;
process(current_state,indexreg,ad_ale)
begin
    if ad_ale='0' then
    chanel_data<="ZZZZZZZZZZ";
  &else
    if indexreg="10" then
    chanel_data<="0100000100";
   else
  case current_state is
    when st0=>ad_end<='0'; chanel<="00";
       next_state<=st1;
       chanel_data<="0011000000";
     when st1=> ad_end<='0';chanel<="01";
       next_state<=st2;
       chanel_data<="0011000001";
    when st2=> ad_end<='0';chanel<="10";
        next_state<=st3;
       chanel_data<="0011000010";
    when st3=> ad_end<='1';chanel<="11";
       next_state<=st0;
chanel_data<="0011000011";
when st4=> next_state<=st0;
       chanel_data<="0011000000";
    when others=> ad_end<='1'; next_state<=st0;
       chanel_data<="0011000000";
  end case;
   end if;
 end if;
end process;

表一 控制寄存器配置表

3 结束语

文中详述了基于TLV1562和EP1K100的多通道高速采集系统的设计及实现方法,将该采集系统应用到雷达数字式对消器中,结果证明精度和速度都能满足要求。实现了在较低的成本下实施多通道数据采集处理。

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

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)

推荐阅读

图文阅读

热门阅读

Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:168,925.80000 毫秒