新闻中心

EEPW首页>模拟技术>设计应用> 基于FPGA的多通道数据采集系统设计

基于FPGA的多通道数据采集系统设计

作者: 时间:2009-10-23 来源:网络 收藏

  这一控制过程通过状态机实现。图4给出了该A/D转换控制模块的状态转换图。当启动信号START为高电平时,状态机启动。

本文引用地址://m.amcfsurvey.com/article/188551.htm

  状态机的各个状态描述如下:
  (1)conv_init:状态机的初始状态。
  (2)mode_set:设置ADS1255内部的控制寄存器。
  (3)conv_start:启动A/D转换。
  (4)conv_wait:等待A/D转换结束。如果转换结束则进入下一状态,否则将继续保持在该状态。
  (5)conv_read:A/D转换结束后读出每个bit信息,同时使能移位寄存器进行串并转换。
  (6)read_next:判断是否读完。如果没有返回conv_read状态,否则进入下一状态。
  (7)conv_next:判断是否需要继续转换。如果没有就进入下一状态,否则返回conv_start状态。
  (8)cony_end:表示本次采样任务结束。状态机保持在该状态,直到采样启动脉冲触发重新开始新的一次采样任务,状态机复位到conv_init状态。
2.5 串并转换模块
  由于ADS1255是以串行输出转换结果的,故需要该模块将串行输出的数据转换为井行输出。该模块主要采用移位寄存器来实现,其移位控制信号由AD采样控制模块提供。
2.6 数据存储控制模块
  该模块的作用是将5通道24 bit经过串并转换的采样数据按通道顺序,以从低字节到高字节的次序,一个一个字节将其写入双口RAM中,实际上相当于一个字节意义上的并串转换。该模块输入为5路采样数据reg24Data_0~4,dataF为输出的字节数据,wrenF为双口RAM的写控制信号。图5是一个五通道数据存储的仿真示意图。输入数据值分别为0x030201、0x060504、0x090807、0x121110、0x151413,输出字节数据为01~15,同时使能写RAM,满足设计要求。


2.7 ARM接口控制模块
  该模块为ARM与及其双口RAM交互提供桥梁。当ARM向控制寄存器写入参数信息时,接口模块要将该信息通知通道和采样率选择模块;当ARM读取双口RAM中的数据时,接口模块对ARM的访问地址进行译码,选中对应的存储空间取出数据。
  本文采用和ARM结合设计,很好地完成了高精度的数据与处理,并且还详细介绍了逻辑的设计方法。FPGA逻辑通过硬件描述语言Verilog实现,已应用到磁数据采集系统中。本方案设计灵活,能很容易地扩展为更多路的数据采集,也能很容易地修改为与其他的A/D转换芯片接口。所以该方案可根据不同的应用进行扩展,进一步增强了系统应用的灵活性。


上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭