999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于WinDriver和C++Builder的高速實時數據采集程序

2012-09-30 01:38:10高一棟
火控雷達技術 2012年4期
關鍵詞:程序用戶設備

張 艷 高一棟

(西安電子工程研究所 西安 710100)

1 引言

在某信號處理系統應用中,需要數據板與計算機之間建立硬件傳輸通道,將處理輸出的數據實時地傳輸到計算機中,以便于進行顯示、存儲及做其他的后續處理。同時,計算機使用的Windows操作系統,應用程序工作在“用戶模式”下,需要設計人員編寫設備驅動程序實現對硬件設備的訪問。

2 用WinDriver編寫PCI驅動程序

2.1 WinDriver的功能和特點

圖1 WinDriver體系結構圖

目前,開發Windows環境下常用的設備驅動程序的工具主要有DDK(Device Driver Kit)和Win-Driver。DDK是Microsoft公司的設備驅動程序開發軟件,使用DDK開發驅動程序,必須精通Windows內部體系結構、MicrosoftMASM匯編語言和設備驅動程序結構體系方法,以及具備豐富的內核模式程序開發經驗,否則可能造成軟件的不穩定,甚至系統的崩潰。而美國Jungo公司推出的WinDriver驅動程序工具包,把底層操作都封裝在一個內核模塊中,提供給用戶標準的WinDriver API函數來實現硬件訪問,可使編程人員用C或C++語言在用戶模式下編寫驅動程序,不涉及操作系統底層編程且具有很好的兼容性,在短期內就可開發出實現基本功能又具有較高執行效率的驅動程序。圖1所示為Win-Driver體系結構圖。

以使用的WinDriver v6.02版為例,它支持目前通用的 Windows98/Me/NT/2000/XP/CE/CE.NET/Server2003,Linux,Solaris和VxWorks等操作系統,而且利用WinDriver產生的驅動程序和應用程序源代碼在這些操作系統中都是互相兼容的[1]。同時它支持PCI/CardBus/ISA/ISAPnP/EISA/Com-pactPCI和USB等多種總線結構。

2.2 WinDriver編寫PCI中斷驅動程序的流程

下面,介紹利用WinDriver的用戶模式在DriverWizard向導的引導下按步驟完成驅動代碼的生成。

A.選擇硬件,產生.INF文件。

PCI(Peripheral Component Interconnect)總線具有即插即用的特點,在Driver Wizard將會顯示所有的即插即用(Plug-and-Play)設備列表,從中選擇對應的硬件,產生.INF安裝文件,然后添加此新硬件。

B.配置、診斷硬件。

Driver Wizard將自動測試硬件設備資源,包括I/O地址范圍、內存范圍,寄存器以及中斷。根據需要進行手動添加、設置。

定義完PCI總線硬件設備資源后,在寫驅動程序之前,還需要使用Driver Wizard簡單診斷硬件是否工作正常,如:用“read”和“write”來讀寫硬件的內存及寄存器。用“listen”來監聽硬件中斷。

C.生成硬件驅動樣本。

在硬件診斷正確后,選擇特定的開發環境或編程語言(我們選擇的C++Builder),讓WinDriver生成一個相應開發環境的設備驅動樣本(設置的工程名字是:mypic)。生成的驅動樣本代碼主要包括:a.各種工程文件,在C++Builder 6.0中其文件為mypic.bpr,mypic.cpp 等;b.設備的應用級 API函數文件:mypic-lib.c;c.利用上述API函數訪問硬件的樣本程序文件:mypic-diag.c;

用戶可以直接利用驅動樣本中的標準WinDriver API函數來實現對硬件的操作和訪問。

3 用C++Builder實現應用程序

3.1 移植WinDriver API函數

將WinDriver API函數移植到用戶應用程序中的方法是,在C++Builder6.0中新建一個工程,將頭文件mypic-lib.h包含進源代碼中。然后根據實際需要,選擇mypic-lib.c需要用到的硬件操作API函數,將它們拷貝到新建工程的函數定義部分。最后用戶在工程中加入完成設備具體任務的功能代碼,在代碼中調用拷貝的API函數進行硬件操作,便完成了用戶級驅動的開發。以下是程序片段:

如上述,已經成功完成信號處理數據板和計算機之間CPI總線數據的傳輸,每次中斷循環讀取1024點數據。

3.2 顯控程序的實現

下面完成應用程序的顯控程序部分。摘選程序片段如下:

信號處理數據板向計算機發送某雷達SAR圖像數據,此實時數據采集程序運行中的界面截圖如圖2所示。

圖2 實時數據采集程序運行中顯示界面圖

4 結束語

本文采用WinDriver和C++Builder兩種開發工具,實現了對PCI總線高速數據采集程序的設計。在實際應用中,系統運行穩定,完成實時數據傳輸、顯示、存儲。同時可以看出,利用WinDriver軟件工具包在Windows操作系統下開發設備驅動程序是一種高效、可靠的方式,值得大多數非專業驅動程序的研發人員使用。

[1]WinDriver v6.02 User's Guide[M].Jungo Ltd,20thMay 2003.

[2]PCI LocalBus Specification[M].Revision 2.2 De-cember18,1998.

[3]李幼儀,甘志.C++Builder高級應用開發指南[M].清華大學出版社,2002.

[4]簡育華.基于WinDriver的Windows驅動程序開發[J].火控雷達技術,2011,40(1):68-70.

猜你喜歡
程序用戶設備
諧響應分析在設備減振中的應用
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
基于MPU6050簡單控制設備
電子制作(2018年11期)2018-08-04 03:26:08
“程序猿”的生活什么樣
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
500kV輸變電設備運行維護探討
工業設計(2016年12期)2016-04-16 02:52:00
創衛暗訪程序有待改進
中國衛生(2015年3期)2015-11-19 02:53:32
主站蜘蛛池模板: 精品久久久久久中文字幕女| 亚洲Va中文字幕久久一区 | 国产精品视频猛进猛出| 无码中文AⅤ在线观看| 97精品伊人久久大香线蕉| 尤物午夜福利视频| 亚洲V日韩V无码一区二区 | 日韩毛片免费视频| 久久国产精品电影| 国产人人乐人人爱| 综合色亚洲| 免费视频在线2021入口| 亚洲人成亚洲精品| 欧美午夜理伦三级在线观看| 欧美黄网站免费观看| 国产精品第一区| 日韩欧美中文亚洲高清在线| 爱做久久久久久| 国产精品福利尤物youwu| 精品国产一区二区三区在线观看 | 国产va欧美va在线观看| 欧美日韩精品一区二区在线线| av在线人妻熟妇| 制服无码网站| 国产高清又黄又嫩的免费视频网站| 青青青国产在线播放| 国产高清在线观看91精品| 亚洲男人的天堂视频| 亚洲天堂网2014| 亚洲一区精品视频在线| 一本一道波多野结衣一区二区| 国产成人永久免费视频| 日韩国产另类| 91久久偷偷做嫩草影院精品| 亚洲成人免费在线| 九九久久99精品| jizz亚洲高清在线观看| 亚洲伊人电影| 欧类av怡春院| 亚洲一区无码在线| 国产中文在线亚洲精品官网| 国产欧美日韩另类精彩视频| 最新国产精品第1页| 久草中文网| 亚欧成人无码AV在线播放| 欧美成人精品高清在线下载| 久久久91人妻无码精品蜜桃HD| 欧美不卡在线视频| 久久国产精品波多野结衣| 国产全黄a一级毛片| 日韩精品无码免费一区二区三区 | 国产成人免费| 无码aⅴ精品一区二区三区| 日韩123欧美字幕| 亚洲无码免费黄色网址| 无码人妻免费| 五月婷婷伊人网| 老熟妇喷水一区二区三区| 曰韩免费无码AV一区二区| 国产鲁鲁视频在线观看| 欧美黄色网站在线看| 国产噜噜噜| 在线观看国产精品第一区免费| WWW丫丫国产成人精品| 日韩精品成人网页视频在线| 国产无套粉嫩白浆| 欧美精品影院| 高潮爽到爆的喷水女主播视频 | 思思99热精品在线| 99热这里只有成人精品国产| 日韩精品无码免费专网站| 欧美综合中文字幕久久| 黄色网站在线观看无码| 丁香五月激情图片| 精品视频一区二区观看| 精品第一国产综合精品Aⅴ| 操国产美女| 在线色国产| 97超碰精品成人国产| 黄色污网站在线观看| 在线中文字幕日韩| 在线观看无码av五月花|