国产欧美日韩精品a在线观看-国产欧美日韩精品一区二区三区-国产欧美日韩精品综合-国产欧美中文字幕-一区二区三区精品国产-一区二区三区精品国产欧美

ACS880-07C
關注中國自動化產業(yè)發(fā)展的先行者!
CAIAC 2025
2024
工業(yè)智能邊緣計算2024年會
2023年工業(yè)安全大會
OICT公益講堂
當前位置:首頁 >> 案例 >> 案例首頁

案例頻道

基于PCI總線的LON適配卡驅動程序開發(fā)
  • 企業(yè):控制網     領域:工業(yè)以太網     行業(yè):其他    
  • 點擊數(shù):2125     發(fā)布時間:2004-12-01 13:50:00
  • 分享到:

 

王郁平 凌志浩 吳勤勤

1  引言

    現(xiàn)代計算機硬件功能的強大,使其操作系統(tǒng)也變得復雜,Windows 2000憑借其良好的安全性和穩(wěn)定性成為目前主流操作系統(tǒng)。然而由于Windows 2000的安全機制使得用戶應用程序不能對系統(tǒng)的硬件資源進行直接訪問,這樣就需要在應用程序與硬件之間構筑驅動程序模塊。在實際工控應用中需要對自行開發(fā)的硬件設備進行控制,這樣就需要開發(fā)特定的設備驅動程序來跨越操作系統(tǒng)邊界對硬件資源進行操作,并與用戶應用程序進行通信。本文給出了一個基于PCI總線的LonWorks智能通信適配卡驅動程序開發(fā)與應用實例,實現(xiàn)了應用程序與適配卡中雙口RAM之間的數(shù)據通信。

2  WDM驅動模型

2.1  Windows 2000的系統(tǒng)結構

    要寫驅動程序,必須要了解操作系統(tǒng)的結構。在WDM體系中,Windows 2000操作系統(tǒng)是最標準的實現(xiàn)方式,圖1顯示了Windows 2000系統(tǒng)結構。在Windows 2000操作系統(tǒng)環(huán)境下,一部分組件運行在用戶模式下,其它的則運行在內核模式下。

    用戶模式下的應用程序對Windows子系統(tǒng)進行Win32 API的調用,這個調用由系統(tǒng)服務接口作用到I/O管理器,I/O管理器進行必要的參數(shù)匹配和操作安全性檢查,然后創(chuàng)建一個稱為IRP(IO Request PackageIO請求包)的數(shù)據結構,并把此IRP作為參數(shù)傳遞給驅動程序。這樣,驅動程序處理這個請求包,通過識別IRP中的物理設備對象(Physical Device ObjectPDO)來區(qū)別是發(fā)送給哪個設備的,當要訪問硬件時,驅動程序通過調用硬件抽象層函數(shù)來實現(xiàn)。硬件抽象層是Windows體系中的一個重要概念,它屏蔽了不同硬件平臺的差異,向操作系統(tǒng)上層提供統(tǒng)一接口。當驅動程序處理完這個請求后,會將處理結果返回給I/O管理器,最后再由I/O管理器將執(zhí)行結果返回給用戶模式下的應用程序。

 

1  Windows 2000系統(tǒng)結構

2.2  WDM驅動程序模型

    在WDM驅動程序模型中,每個硬件設備至少有兩個驅動程序:一個稱為功能(function)驅動程序,它了解使硬件工作的所有細節(jié),負責初始化I/O操作,處理I/O操作完成時所帶來的中斷事件,為用戶提供一種設備適合的控制方式;另一個稱為總線(bus)驅動程序,它負責管理硬件與計算機的連接。

    一個驅動程序通常包含許多例程,當操作系統(tǒng)遇到一個IRP包時,就調用驅動程序中相應的例程來執(zhí)行該IRP的操作,基本驅動例程有:

    (1)  DriverEntry例程:負責驅動程序的初始化,主要是初始化驅動程序范圍的數(shù)據結構和資源。所有驅動程序都必須包含此例程,當驅動程序被裝載時,PnP管理器為每個驅動程序調用一次DriverEntry例程。

    (2)  AddDevice例程:PnP管理器調用此例程來初始化由該驅動程序所控制的設備。當系統(tǒng)運行時,一旦有新設備被枚舉,系統(tǒng)將調用AddDevice例程。

    (3)  Upload例程:負責釋放由DriverEntry例程所分配的驅動程序范圍內的資源。

3  WDM驅動程序開發(fā)

3.1  硬件背景

    LON適配卡硬件接口如圖2所示,現(xiàn)場智能節(jié)點通過LonWorks總線將數(shù)據傳到監(jiān)控計算機的LON適配卡時,Neuron芯片通過總線收發(fā)器讀入數(shù)據,通過轉換和運算后,按規(guī)定的協(xié)議寫入雙口RAM中,這樣監(jiān)控計算機就可以通過PCI總線控制器讀取雙口RAM中的數(shù)據,來得到各智能節(jié)點送來的數(shù)據,實現(xiàn)監(jiān)控功能。反之當計算機要發(fā)送參數(shù)或控制信息給智能節(jié)點時,PCI總線控制器把PC機發(fā)送來的數(shù)據按照一定的協(xié)議寫入到雙口RAM中,Neuron芯片讀取雙口RAM中的信息,然后通過總線收發(fā)器發(fā)送到LonWorks總線網絡中去。

 

2  適配卡硬件接口原理圖

3.2  驅動開發(fā)工具的選擇

    現(xiàn)在比較流行的驅動開發(fā)工具主要有3種:Windows DDKDriverWorksWindriver。表1簡單對這3種工具作了分析和比較。在此,選擇DriverWorks開發(fā)工具和Visual C++語言來對LON適配卡的驅動程序進行開發(fā)。

1  開發(fā)工具的分析比較

3.3  WDM驅動程序框架

        DriverWizardDriverWorks創(chuàng)建WDM框架程序的工具,其簡單易用的開發(fā)向導能夠幫助開發(fā)人員迅速開發(fā)出特定的硬件設備驅動程序框架,其主要步驟包括:

        (1)  選擇運行平臺:有WDM DriverNT4.0 Style DriverEmpty Driver ProjectSimple C++ Driver,如果選擇WDM Driver則會進一步要求選擇WDM類型,包括WDM Function DriverWDM Filter Driver等。

        (2)  選擇總線類型:有ISAPCIUSBPCMCIA

熱點新聞

推薦產品

x
  • 在線反饋
1.我有以下需求:



2.詳細的需求:
姓名:
單位:
電話:
郵件:
主站蜘蛛池模板: 精品在线观看视频 | 免费看三级毛片 | 国产成人禁片免费观看 | 亚洲欧美高清在线 | 欧美在线一区二区三区欧美 | 欧美另类视频在线观看 | www国产精品| 天天躁天天碰天天看 | 手机看片日韩国产一区二区 | 老司机免费福利午夜入口ae58 | 亚洲视频免费在线观看 | 香蕉网站狼人久久五月亭亭 | 中文国产成人精品久久一区 | 精品九九久久国内精品 | 精品国产夜色在线 | 亚洲精品日韩在线一区 | 欧美三级一级片 | 最新亚洲精品国自产在线 | 国产成人综合洲欧美在线 | 欧美整片在线观看 | 特黄特黄黄色大片 | 婷婷在线成人免费观看搜索 | 手机看片自拍日韩日韩高清 | 看全色黄大色黄大片女图片 | 男女性生活网站 | 午夜国产高清精品一区免费 | 欧美高清强视频 | 亚洲一区二区三区久久久久 | 日韩欧美二区 | 欧美日韩99 | 国产成人久久精品区一区二区 | 成人免费视频网址 | 成人网视频在线观看免费 | 国产亚洲精品成人a在线 | 精品一区视频 | 很黄很色的免费视频 | 欧美精品在线视频观看 | 国产在线一区观看 | 99色视频在线观看 | 暖暖视频日韩欧美在线观看 | 97久久精品视频 |