您当前的位置:五五电子网电子知识单片机-工控设备嵌入式系统-技术基于DAC芯片AD9248和CY7C09449的PCI高速数据采集方案 正文
基于DAC芯片AD9248和CY7C09449的PCI高速数据采集方案

基于DAC芯片AD9248和CY7C09449的PCI高速数据采集方案

点击数:7472 次   录入时间:03-04 11:55:44   整理:http://www.55dianzi.com   嵌入式系统-技术
XP,软件设计开发环境使用的工具包括WindowsXP DDK、Driver Studio2.7和VC++6.0,以下着重讨论驱动程序设计。

  为了加快数据传输速度,驱动程序使用DMA的方式把CY7C09449共享存储区内的数据读取到主机的存储器内。

  使用DMA数据传输方式,要申请用于存放数据的物理地址连续的内存空间,然后要获取内存空间的物理地址和用户空间地址。

  首先在头文件中创建如下对象:

  KDmaAdapter m_Dma;

  KCommonDmaBuffer m_Buffer;

  然后在MyDriveDevICe∷OnStartDevice(Klrp I)函数创建设备描述符结构体m_MiydeviceDescript,设备描述符结构体各个域的设置如下:

  

www.55dianzi.com

  将UserSIPaceAddress传递给应用程序,则应用程序就可以访问存放数据的内存空间了。

  FPGA在每传送给CY7C09449一块2k双字的数据后就通过CY7C09449的引脚IRQ_IN向主机发送中断请求。在主机的中断服务程序中用m_Me-morjPhyPhysICalAddress设置CY7C09449的DMA3E机物理基地址寄存器,然后设置DMA局部基地址寄存器、DMA长度寄存器来配置数据传输的源地址地址和数据长度,然后再写CY7C09449的DMA控制寄存器来启动DMA传输。在所有数据块传输完毕,主机中断服务程序发送给应用程序一个消息,这时应用程序就可以通过UserSPACeAddress访问接收到的数据了。

  5 结论

  在高速数据采集卡的设计中FPGA对局部总线的控制逻辑由于采用了同步数据传输控制方式使得局部总线的最高传输速度可达200Mb/s。在 WindowsXP下的驱动程序设计使用了DMA数据传输方式,提高了数据存储速度。高速数据采集卡可以达到80Mb/s的数据采集速度,设备运行稳定,达到了设计要求。



上一页  [1] [2] 


本文关键字:数据采集  嵌入式系统-技术单片机-工控设备 - 嵌入式系统-技术