<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 模擬技術(shù) > 設計應用 > 基于PCI總線(xiàn)模塊的多路串行數據采集系統

基于PCI總線(xiàn)模塊的多路串行數據采集系統

作者: 時(shí)間:2012-04-12 來(lái)源:網(wǎng)絡(luò ) 收藏
ile/mndz/uploadfile/201204/20120412024922517.jpg" width=450>

  同步通信對時(shí)鐘的同步要求非常嚴格,設計時(shí)應該注意收/發(fā)兩方必須使用同一時(shí)鐘來(lái)控制數據的傳輸。另外,_T32內存讀寫(xiě)分為單周期模式和突發(fā)模式。突發(fā)模式即在給出首地址后主設備連續讀寫(xiě)多個(gè)數據,這在FPGA中需要用戶(hù)端地址每周期自動(dòng)增1的操作。

  3 系統軟件開(kāi)發(fā)

  3.1 驅動(dòng)程序

  設備的硬件資源由Windows操作系統根據PC機中所有設備對資源的占有來(lái)統一分配。為了保證系統的安全和穩定性,在Windows2000及其后的微軟操作系統中,運行在ring3層的用戶(hù)應用程序無(wú)法直接訪(fǎng)問(wèn)硬件,而必須通過(guò)運行于ring0層的設備驅動(dòng)程序來(lái)訪(fǎng)問(wèn)。設備驅動(dòng)不僅要實(shí)現對硬件的操作,還要為用戶(hù)應用程序提供專(zhuān)用的API函數庫,以方便用戶(hù)實(shí)現對硬件的操作訪(fǎng)問(wèn)。

  Windows XP操作系統下的驅動(dòng)程序一般是基于WDM(Windows Driver Model)模型開(kāi)發(fā)的。該模型中的上層應用程序通過(guò)調用Win32 API函數發(fā)出對設備的訪(fǎng)問(wèn)請求,I/O管理器則根據這個(gè)請求構造合適的IRP(I/O Request Packet,I/O請求包),并將其傳給設備驅動(dòng)程序,接著(zhù)由驅動(dòng)程序直接訪(fǎng)問(wèn)硬件完成IRP處理,最后由I/O管理器把數據和結構返回給應用程序。

  WDM驅動(dòng)比較常用的有以下三種方法:

  第一種是直接使用Windows DDK(Device

  Driver Kit,驅動(dòng)程序開(kāi)發(fā)包)開(kāi)發(fā)的驅動(dòng)程序面向Windows內核,該方法工作穩定,效率更高。但必須精通Windows內部體系結構及設備驅動(dòng)程序的體系結構等,因此開(kāi)發(fā)難度較大。

  第二種是使用DriverStudio。此工具軟件已經(jīng)做了很多基礎性工作,也進(jìn)行了一些封裝。

  第三種是使用WinDriver,使用該方法時(shí),開(kāi)發(fā)者只需要在用戶(hù)模式下編寫(xiě)程序來(lái)調用它提供的通用驅動(dòng)即可。其中Drvier Wizard可以進(jìn)行硬件診斷和自動(dòng)代碼生成。另外還可以將對速度要求較高的模塊插入內核運行來(lái)獲取更好的性能。本系統即采用WinDriver開(kāi)發(fā)方法。

  3.2 WinDriver中的重要函數

  利用WinDriver開(kāi)發(fā)驅動(dòng)程序通常有兩種方法:第一種是利用Driver Wizard生成的代碼進(jìn)行修改;第二種是直接利用WinDriver提供的API函數來(lái)編寫(xiě)自己的程序。本系統即采用這種方法,開(kāi)發(fā)時(shí)首先要注意包含所有相關(guān)的頭文件。其基本驅動(dòng)程序的結構及API函數如下:

  

  3.3 中斷實(shí)現

  總線(xiàn)的通信方式有查詢(xún)和中斷兩種方式。查詢(xún)方式實(shí)現簡(jiǎn)單,但是難以適應實(shí)時(shí)性要求較高的場(chǎng)合,而且上位機軟件資源占用率過(guò)大



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>