PCI数据采集卡WDM驱动程序设计与实时性分析

PCI数据采集卡WDM驱动程序设计与实时性分析

ID:40270525

大小:99.50 KB

页数:5页

时间:2019-07-30

PCI数据采集卡WDM驱动程序设计与实时性分析_第1页
PCI数据采集卡WDM驱动程序设计与实时性分析_第2页
PCI数据采集卡WDM驱动程序设计与实时性分析_第3页
PCI数据采集卡WDM驱动程序设计与实时性分析_第4页
PCI数据采集卡WDM驱动程序设计与实时性分析_第5页
资源描述:

《PCI数据采集卡WDM驱动程序设计与实时性分析》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、PCI数据采集卡WDM驱动程序设计与实时性分析周国良,赵洪,卢迪(哈尔滨理工大学电气与电子工程学院,黑龙江省哈尔滨市,150040)摘要:介绍了WDM驱动程序的基本原理,结合在线式塑料薄膜制品杂质测量仪中PCI总线数据采集卡的应用,对驱动程序设计过程中的关键技术如硬件访问、中断处理和DMA传输等作了讨论,给出了基于DriverStudio和VisualC++6.0开发的程序实例。实验结果表明,运用中断结合DMA传输方式,本地速率可达42.5MB/s,实时响应速度有了显著提高。关键词:PCI;WDM;驱动程序;数据采集;中图分类号:TP274文献标识码:ADesignofWD

2、MDriverforPCIDataSampleCardandAnalysisofReal-TimeCharacteristicZHOUGuo-liang,ZHAOHong,LUDi(CollegeofElectricalandElectronicEngineering,HarbinUniversityofScienceandTechnologyHarbin150040,China)Abstract:TheprincipleoftheWDMdriverisilluminatedinthispaper.TakingPCIbussamplecardapplicationinthe

3、onlineimpuritymeasuringapparatusofplasticsfilmproductswithelectroniccamcorderasareference,somekeytechniquesinprogrammingtheWDMdriversuchasaccessingtodevice,therequestingforinterruptanddatatransferringinDMAmethodarediscussed.AnexampledriverdevelopedunderDriverStudioandVisualC++6.0isgiven.Th

4、etestdatashowsthattheinterrupttechnologyintegratedwithDMAtransmissionmode,localratecanreach42.5MB/s,andthereal-timeresponsespeedisimproved.KeyWords:PCI;WDM;driver;dataacquisition;三辊压膜器挤出模具电机CCD镜头滤光器卤灯计算机收取器数据采集在基于Windows平台的“在线式塑料薄膜制品杂质测量仪”项目中,我们用基于PCI总线的数据采集卡对高速线阵CCD图像传感器进行数据采集,然后通过DMA写入主机

5、内存,仪器结构如图1。该过程不但需要访问数据采集卡的板上资源和分配物理地址连续的内存,而且要求传输每段2KB有效数据的中断响应时间与数据传输时间之和不超过60微秒,从而达到准实时在线测量的目的。图1在线式杂质测量仪结构系统选用阿尔泰公司的12位高速采集卡PCI8001,以5MS/s的采样速率进行采样。该卡具有4个独立的A/D采样通道,每通道提供512K字的缓存,可以手动设定缓存级别,采用PLX公司的PCI9054作为PCI总线接口芯片。利用该卡附带驱动程序进行测量时,2KB数据响应传输时间平均为95us,无法达到本系统实时性要求,因而一个高质量的PCI数据采集卡驱动程序是整

6、个系统不可或缺的一部分。1WDM驱动程序模型在目前主流的XP操作系统中,是采用WDM驱动程序模型。WDM模型是一个分层的驱动程序,使用了如图2的层次结构。为了适应即插即用系统,WDM重新定义了驱动程序分层,至少包括总线驱动程序和功能驱动程序,根据具体需要还可选择过滤驱动程序。WDM还引入了功能设备对象(FDO)与物理设备对象(PDO)来描述硬件。一个PDO对应一个真实硬件,一个硬件只允许有一个PDO,却可以有多个FDO,在驱动程序中直接操作的不是硬件而是相应的PDO与FDO。在应用程序与WDM驱动程序通信方面,系统为每一个用户请求打包形成一个I/O请求包(IRP)结构,将其

7、发送到驱动程序,并通过识别IRP中的PDO来区别是发送给哪一个设备的。内核通常通过发送IRP来运行驱动程序中的代码。在实际开发中一般无需分很多层,只需要开发一个功能驱动程序即可。功能驱动程序直接与总线驱动程序打交道,进行硬件操作以实现PCI设备功能[1]。在PCI设备的WDM驱动程序中,一般是编写功能驱动程序。PCI总线驱动程序由操作系统实现,过滤驱动程序一般在特殊的情况下才需要编写。因此本文主要进行PCI数据采集卡功能驱动程序的设计。由于PCI设备驱动程序在框架上与其他类型的设备驱动程序基本相同,包括:初始化、创

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。