利用DriverWorks开发工具实现PXI总线数据采集卡的设计

引 言

Windows驱动程序模型(Windows driver model,WDM)是     Mi   crosoft公司力推的全新驱动程序模式,与以前的驱动程序模型比较,它支持即插即用(plug and play,PnP)、     电源管理   和Windows管理诊断WMI等技术。在Windows操作平台上,WDM已成为主流的驱动模型,但这也给WDM驱动程序的开发人员提出了许多新的挑战,即便是开发和     测试   最简单的设备驱动程序也变得比以前任何时候都复杂。DriverWorks由NuMega公司开发,主要为开发Windows98、Windows 2000和Windows NT的WDM设备驱动程序提供了一个自动化的方法,使驱动程序的开发相对于使用Microsoft公司提供的设备驱动程序开发包(device drive     rs   kit,DDK)工具更加容易;并且它可以集成到V     C++   6.0开发环境中(后面要介绍的功能实现都是在用VC++6.0集成环境生成的驱动程序框架中编写的),可以引导完成设备驱动程序开发的全过程,这样就可以像生成其他工程一样根据硬件种类自动生成设备驱动程序框架,省去了大量编写代码的时间。本文就是利用DriverWorks开发工具开发基于PXI总线的     数据采集   卡的WDM驱动程序。

1、 PXI总线数据采集卡的硬件框图

该数据采集系统的硬件结构框图如图1所示,该系统包括数据采集模块、F先进先出数据缓存模块、     接口       电路   模块和     CPLD   系统控制器模块4个部分。待采样的模拟信号经由数据采集模块进行数据采集,采样后经过转换得到的数字信号先被送入先进先出     存储器   进行缓存,当缓存器所     存储   的数据达到半满/全满时,将发送一个半满/全满标志信号,触发中断,由系统控制器通过PXI总线读取数据。整个系统的工作逻辑时序控制由1片CPLD控制芯片来编程实现,接口逻辑采用通用的PXI总线接口     逻辑芯片   PCI9030来实现。

 利用DriverWorks开发工具实现PXI总线数据采集卡的设计_设计制作_EDA/IC设计

2 、驱动程序设计

2.1 中断过程调用

当F     IF   O数据缓存器读取的数据达到半满/全满时,其相应半满/全满     信号线   会走低,该信号线与PCI9030芯片的外部触发中断输入管脚相连,从而触发中断,主模块通过PXI总线     接口芯片   读取FIFO中的数据,其中断服务例程如下:

 利用DriverWorks开发工具实现PXI总线数据采集卡的设计_设计制作_EDA/IC设计

2.2 中断延迟过程调用

中断服务例程的处理时间应当尽可能短,并且由于中断服务例程在DIRQL级别上运行,很多函数不能调用,所以通常是在延迟过程调用例程中做大部分的中断处理工作。本系统延迟例程调用相关程序如下:

 利用DriverWorks开发工具实现PXI总线数据采集卡的设计_设计制作_EDA/IC设计

 利用DriverWorks开发工具实现PXI总线数据采集卡的设计_设计制作_EDA/IC设计

2.3 读取数据

对于数据的读取,主要是在SerialRead()例程中实现的,其主要程序语句如下:

 利用DriverWorks开发工具实现PXI总线数据采集卡的设计_设计制作_EDA/IC设计

2.4 SerialWri     te   ()例程

数据采集卡硬件系统的初始化和肩动工作主要在Se-rialWrite例程中实现,其相关部分程序如下:

 利用DriverWorks开发工具实现PXI总线数据采集卡的设计_设计制作_EDA/IC设计

 利用DriverWorks开发工具实现PXI总线数据采集卡的设计_设计制作_EDA/IC设计

3 应用程序设计

编写驱动程序本身不是最终目的,最终目的是调用驱动程序管理资源,并为用户应用程序使用。这里采用的是cONsole控制台应用程序,其基本框架也可以由DriverSTuio自动生成,只需在现有的框架里面插入相应的代码就可粤耍渲骱齧     ai   n()的相应代码如下:

4、 结束语

DriverWorks是一款功能强大、使用方便的驱动程序开发工具,利用它可以方便快捷地构造PCI设备的驱动程序框架,大大加快了开发周期,提高了开发效率。控制台应用程序的优点是开发起来方便、快捷,但在数据的     图形   化显示方面却有所不足,如果将驱动程序与VC或者     LabVIEW   等图形化应用程序编程环境相结合,就可以编制出界面更加友好、功能更为强大的数据采集系统软件平台。

责任编辑:gt

2
189
0
73

相关资讯

  1. 1、盘点2019年6月机器人行业融资2380
  2. 2、CCD传感器的工作原理及应用解析1054
  3. 3、2019年中国电气工业100强排行榜发布3669
  4. 4、工信部:全年规模以上工业增加值同比增6.2%,好于预期4818
  5. 5、丹佛斯|制冷剂周为工程人员带来最新制冷剂资讯341
  6. 6、​工控产品线年中再掀涨价潮,我们离市场复苏还有多远?3715
  7. 7、莱姆推出新品IN1000-S,拓宽了高精度传感器的量程1481
  8. 8、反应式步进电机的结构及工作原理详解4031
  9. 9、StratixGX系列FPGA支持热插拔形式的设计141
  10. 10、这八个知识点告诉你为什么要放弃网线选择光纤传输480
全部评论(0)
我也有话说
0
收藏
点赞
顶部