基于PXI總線的數據采集卡的WDM驅動程序設計
引 言
Windows驅動程序模型(Windows driver model,WDM)是Microsoft公司力推的全新驅動程序模式,與以前的驅動程序模型比較,它支持即插即用(plug and play,PnP)、電源管理和Windows管理診斷WMI等技術。在Windows操作平臺上,WDM已成為主流的驅動模型,但這也給WDM驅動程序的開發人員提出了許多新的挑戰,即便是開發和測試最簡單的設備驅動程序也變得比以前任何時候都復雜。DriverWorks由NuMega公司開發,主要為開發Windows98、Windows 2000和Windows NT的WDM設備驅動程序提供了一個自動化的方法,使驅動程序的開發相對于使用Microsoft公司提供的設備驅動程序開發包(device driverskit,DDK)工具更加容易;并且它可以集成到VC++6.0開發環境中(后面要介紹的功能實現都是在用VC++6.0集成環境生成的驅動程序框架中編寫的),可以引導完成設備驅動程序開發的全過程,這樣就可以像生成其他工程一樣根據硬件種類自動生成設備驅動程序框架,省去了大量編寫代碼的時間。本文就是利用DriverWorks開發工具開發基于PXI總線的數據采集卡的WDM驅動程序。
該數據采集系統的硬件結構框圖如圖1所示,該系統包括數據采集模塊、F先進先出數據緩存模塊、接口電路模塊和CPLD系統控制器模塊4個部分。待采樣的模擬信號經由數據采集模塊進行數據采集,采樣后經過轉換得到的數字信號先被送入先進先出存儲器進行緩存,當緩存器所存儲的數據達到半滿/全滿時,將發送一個半滿/全滿標志信號,觸發中斷,由系統控制器通過PXI總線讀取數據。整個系統的工作邏輯時序控制由1片CPLD控制芯片來編程實現,接口邏輯采用通用的PXI總線接口邏輯芯片PCI9030來實現。
評論