


下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、| 維普資訊 h ttp:/SCIENCE INFORMATIONWindowsXP環境下的PCI設備驅動程序設計楊波柳征姜文利(國防科拉大學電子科學與工程學院湖南悵沙410073摘菱:本兗討論了 WwdowsXP瑋址下PCI設號職動輕斥的開丸與實現方胳,從嘻耳近備更動強序的幾豐雀魅冋贈入手,民眸材電樣連了 PCL說斗盟茹殍庫的證計與實現方盍“所浸由的碑直疔羞比伍多豐設齊中秦用,社得崔舟的藪熱*關變詞:操齊#址;PCI恿蟻】塑動曜呼:)riv«rSciulio| 維普資訊 h ttp:/| 維普資訊 h ttp:/1JIWPCI 的古義為外設部件生連(Pftripheral Cnmp
2、oofint InBnvmnM), 花支持64位數據傳送、夢總線主揑和疑性突毘片式”山韓敕據傳 輸率雄大可達528Mh/Sc.在PU段番播人PH插槽上電石.總線配置機 構E動棍據PCI設備的醍求冥現配柱。A WindowiXFt中為了偌 證系境運行的安全性和可移植性.對甩JH朝序時于礎件的搽柞進行了 ftiSt不芟持直接對系躱哽件資躱的炭作"閔而在冊汁開發PC設缶 時,緬妄開發相應的孌動程序來實現對 吒設備的捉作.用戶應用程睜 逋過駅動稈序來訪問PCI說醬"DrivexSiudm R用T Windows試備騾動徑序開霍和應用禪序開髓 的戟件工為它也括 DnverAgpnlt
3、VktuhD,DrivfirWnrks4SofllCE 導參款功 鏈遢丸的工具。Dri帳詛阿t用于快速主成用于硬件測試的塑動朋奧; VtovlsD »WT VxD編捍全戟£”類儒龍持;OriyrrWo屜側白動生戰 設鏈強豹程序源程序框架;S血】CE用于奧動程序的澗試a總之. DrivrrSliKliD所具備妁高性麗工具和時現代軟件1:程的實踐使得設備 曬動程序的集耳不RS®a由于目啊便用DDK相當需軌血陽nD點白 效率較低.所氐迭用DriverSiudio開發設備躺動程序擔一種応敕實用 的方涼。2.用DriverWizairl生威靈動程再梅渠FU羽動編程*強們tt
4、先餐建立徑動開股的正鞘殲境。所用到的 工具主費有:Visual C+.OWifKlowii XP DDK.DrivecSiudhl.l 定要 按試牛先后廁序安裝*安牡完覘后.啟用工具屮的 SelupDDKandSiBrtMSVC.則會看到在VC+工具欄中多岀幾個工具選 項,它我叨Driver5ii>dio己植正確安罷a DrivriStud詁 包存有 DrivWiwH向導.使用它可以快產生底瓠站程序框犁只要遍過I R 娠的設査"即叩口動生雀上千荷的程序代碼$實現PC【驅動功陡.只需 在相呢的地方加人功境代碼即可實現口生嵐遐功框架需要綽過十一歩 的設ILJC中的關鍵疥有:L
5、74; 3申,選ff-WDM!B,冇WDJ1功儲馳動裡序,叩DM過養器 婆動程序W AVStrrflm 動程憚三種,,這蹩逵功施駅動程序°2.第g歩,設負設備啟動時從注冊衣中裝載的怫識菇數"當設褂 啟動執行DriYPrEntn偽程時.將從注冊去中裝栽這理所費置的標識養 fi.如圖1:Q 1 OriverStudiG 輛動同號竝3 ® 10涉,罡哭麻用稈序調用伽誠誕|心謚函敢對WDM聲動 程序通惱的校制命令匚3.PCI設餐更動程序的設計方灌KiHPCIiS備昭動程序面臨的主夏-問題足如何誼襯哽杵操作+這 是根據PCI型號的車同而不同的,但基本功能就是FC p|HjK
6、fl,lX> 址叮及中詩控制° F面就WinxlMwXP環吼下這三方面的具體編程展 開時ife.3-1訪問PCI設備的配置空間找們琲道,理循PC標椎的的備為我配趕信息撞供了一牛獨立的 地址空間*每亍PC1恬邯有1/丁甌數,并且毎牛畫數部有自己配置 佶息的存縮空閻,空間為256牛字節”其中附64亍字節是頭怕息“ PCI 協逞宦宣了多種頭荷血拈式,通常頭信息是通過結構休 PCLCONnG_HEADER_0 來龍義的。聶動桎呼通過類KPtiCgfi叱i蝕可口訪問一中PCI董番配It 倍息"在使用這牛類之前.苜先龍知逍PCI設備的VendortD fU Ikvicr 1DO按
7、辟以卜涉陳可以建立對協問PC1址備配宣信息的豹動程序:(門聲明一個類KP石CmfipLEHm型對SL.這牛時銀謚常在鞠遵 (+申接收Vendor ID fll Device 1DC 如:#dflfir*F VENDORJD OxTCEOttdeflne DEVICEJD 0x1000KRiCwifimiraiion MyPtiCIgfVEX DOR_D, DEVICEID);試構建雄否正確,如聚為JL則對這牛PCI設備iE確能位°(3)巾請設備需蜃的齋薦。一股通過類ICK* 畋Request和 KR«»nun:eAwigiunrnt來避 冇資諒 申請 艮 井配,當
8、總 KReauihAAainmetJ 般只能便用(4對于支持多牛PCI扯備系疑主槌來說,騏動程序凰滇列舉這 些設帝并且產生相應的設事対離"(51tt用婁KPHC血Eueiion屮的威園Bfi數就可以存聴PO配置 空間,玉2讀寫"0需存器提忤杲址區并U0睜間和內存空間,在零總線系藐結構屮,毎牛 總級也都支持內夸和I/O訪何"一盤來悅,UO空何I町取在1/0總線冏 期中存取,扭是"棗址也撫許外圉筑址中的UO空間映射到乘蜒內存 空闔“因此.醐動程序在存靈I/O寄存春時*!&須整知道 悶帶存器在 酬??偩€上,井H晏知道總城地址密間范國a總線號描述總線特徂
9、。在曬動趕序中*總罐類喇和啟険呂通戳在 初瞪牝時瑚超,檯用類Kfonfifiu剛ionQiE可以獲樗這豈信息“懂照 以下方袪可以存JR PCI諫備的UO寄存th(I)構薩類KI込ngt的SR.W產生UO對醍,冥現設備寄存器的 瓠KJdiAH鐵 Deviciua;Stdlu!i=Drvicrofin 訃訕 i 跆(isa,oT(hETOO)卩)便用類監bHan趾腔員確證存臓播存罟。#dpf5nf COMMANDO#definft STATUS 1#define WDATA 2(3)JtlT上面的操作”也可以憧用類KkRe護血實例來產生牛 實例便用成員畫數來存取覽岳寄存齡口實現如仁KJnReste
10、r CDikinHndRe£= Df*iceItHCOMM A N D);KJoReaicr SuIuRfVcv iwIosfTATUSJ;Comnifliid Res= UCHAR)RESET;UCHAR stiilu&=StaluBRf!;3.3實現屮斷挖制許多黑動弄序需要控制換件中虧當中斷發生時,靈動程序髓執 行相應的中新IK務輛程ISR,由T 1SR總是運行在DJRQL±,BJt在 硬件中斷眼務中.常使用dpc+即延遲過程nmr當處理器赴于 DlSPATCH_LEVELh時用即執幵杓應的DPC時聚*按IUT歩理.可以實現PC中折掠制;(門產生中斷KJmer的
11、一獷實例,即產生屮斷(下轉第9頁| 維普資訊 h ttp:/| 維普資訊 h ttp:/| 維普資訊 h ttp:/2007年第1期SCIENCE INFORMATION| 維普資訊 h ttp:/| 維普資訊 h ttp:/的舞袪能兇較樑的連產找到第一個利離籽一卜不透明度不溝0的體 元即P3點和P占點。先尿出光純與休數抵場的陶e交API WP2f$到計算機陽舉學 二堆艇敎屮申點廿割馳減1祛的心蛻+求出PL和P2的屮點Pm.U求 那一個不透朗度軍為0體元即P策點為例“先在PI和Pm間去kf不蚪 很務)牛等審采樣點.如杲k個采樣點不遴冊度之和為0,則P3點在 P2和血之何.將Pm作為新的PI.帝
12、則將張作為新的P2+循環楓 行.世到Pl flJPm之樂",Pm即為所求P3.同理可求P4點*井且P3. R4可同時壊,以加怏遽度'3,實驗第果在內存256M,灶理AMD Athlon (im)XP 2440+的織機匕.柱 WlndowsIOOO Pmfftssional, VC+6.Q,使用 OpsnGL 的平臺"實規光線投 肘體繪制算法,住光線投射法的薦傘環竹悝用上述加連算底完疲頁 學圖像的三堆聲建"下面四幅圖尿甘別呆用傳疣朮線送肘算醫秤推文所迷的朮線透 射存法所繪制的結果"Ifl 5 £ 109-256*256的MH1帽博繪制結果
13、,圏 6屋256*25*256的MRI圖像繪制結果它1均為&質曲«(家,繪制時 間比軌如去U(上播第10頁)對象,逋竜便用屁設備類中謹人中新類的方祛產生中 新對象°采用這種方祛的憂點屋,當栩癥設備對象產生時,中斷對象就 產生.當燃遠時贋中斷時矗沿有初始址,當址備對栽在卸就過程中廉 請國時.中斷對象也白動核蔭盟平貝怵方醫如F:PClDh¥fTDevi«public KDevirt-(pubtir:Klntitmipi m_TheninrLijrt;):(打中晰脫務飆程1SR可以杲標淮曲數或君是自定宜的嚴生類嵐 時函數,蛆鬢和軸1代厳生類的魚M函數“
14、LSK衆用標準函數比自毎丈 類的卓員函數有帚盤的優點。下面的函數可威聲聊一傘標淮類型的1SR例程:傳統算出=u»加逮算怯t=109傳st算氓戶156加連算怯1= 2W體處理時IM*536350J503酷制肘間380325MSS0.6293.5炷時冋416.8289S9M9r4906M1罐制時風比輕羸(時RMtts)卩)恃統算法(b)加速算法BOOLEAN IPKINTERBLPT nlenupt.PVOID SendceContOi如果蹩用誰生類腔員審數實規ER+必加便用世MEMBER_ISR 在類中點測這個函數"廉定中斷對象謝數.如中箭憂先級、中斷矢掀、橈式*於事牌 性、
15、總疑等通席這些粉敷確毎在設備類枸適I*屮實現,在PC】嚥功程 序中,逋常從注冊我中獲取參數.越JS進訂賈理請求“,如下曲的程序KKiUftrRec|urfil HcRh|鼬J ”0 ”0);HegRrq-Addlrqtl HQRQ);W)使ffl成員兩數!*roniwc|斷開鉤fita4.驅動穆序的安裝PC】聲功程序編璋成剳垢,就會生JtJUnf的安裝信息丈件。翌門將 其拷罰到:屜瀘他jchlE乾曠目暈F"可從“控制面飯”的"系址襄 醬一-逛加磴件向導”幵蛤運行*按其向導一母一申世完感PCT贏融 魏序的餐裝過程*證有一種更簡甲的方袪.在菜承“幵熾*程序” "Com
16、puw&n: DrivcrSludiaT, - Tcsl* 中.ii!現了 一個 EZDrivcdnHtalkr 新:E具.可趾怏速地安裝和卸戟WDM程序,如圖2:S 5109*256*256MRI 圈性制站果©Ht統算法(b)加速韓崖ffi 6109*256*256制HI囹繪制茁果4.結論從實臉結果可以看出,舉用申文握出的加速算怯對相同的體數據 進行魚建.繪制圖悅站果的質*差別非常小+程對于109*256*25&的 MHJ圈煉繪制時間幾乎縄少丁 U3,而時于256*256*256的刑旳陽掠 繪制時何幾乎械少了 M2*所以區文提出的加速算法可襯.總 芳宜t【】脾年圣上
17、.堆#(鷲瑪可檯猶M.北京曲年犬卡出fl|社W,2& 29.石鞍英,黨文立一科卡計算可視優算怙與系疑M.北京:科學出IS牡一3 MarkL 3嗎一 Displty of wifsA Fnwn Volume Kata (JJ-IEEt Gunpukr GnpkX AppLThHH J 9E&立一4:昨澤至t陶靈五,孚新圧.廿鼎機禺瑕學辜碑fM 一北克:清簞大學出*社. J995262-263,1,理丸菇"誅鶴民,英于故理映第與Phone光的體堆漏加建算怯口.中國 用,2000.9月常零桂祖鬪第?潮:KM8 W(fijftn.莊天龍,-忡篇于處簡蠱祕!a的璋繪為明昭度快連
18、算怯口.上待變通大 學學AL2W2J ;Jff 36 卷堀期;K4W.T Pt擇圣一用圖憚空測為徉的徉蛉制技點園用三維敦搭場JJ.計算SVf報, 1W4J丙第7總第I 期:眈禱05S12 PCI暫動穆序安張處總界眾文帳據筆者前冥囲經魏,介塑了柱Windaw&XP%下開發PCI 卡堅動程序的滝程,給出了一蠻快連可行的弼肉方塞*通述上面的介 虬 可以看到便用Dri燉占tudin可以快連的生腔旳設番矚動程序框 能,然J&只畫粗據鏈件的實際耍求醉加韜應的功話優碼錚可完疏相堰 的卑動程序“謹方塞鍛程楷晰、編程高效、調試方晝開笈的?CI任銀 動程序離效可靠運行良好.英現了前期的目標1淨遠征.
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 公司票據活動方案
- 公司糖酒會活動方案
- 公司芒種節氣活動方案
- 2025年職業道德與社會責任考試試卷及答案
- 2025年自動化專業實踐能力考核試題及答案
- 2025年文化創意產業相關工作者考試試題及答案
- 2025年體能訓練師職業資格考試試卷及答案
- 2025年人力資本管理師職業資格考試題及答案
- 2025年軟件開發工程師資格考試試卷及答案
- AR環境交互設計-洞察及研究
- 關于水表考試題及答案
- 落實責任制整體護理總結
- 短文選詞填空12篇(新疆中考真題+中考模擬)(解析版)
- 植物化學保護學知到課后答案智慧樹章節測試答案2025年春華南農業大學
- 新能源發展與環境保護試題及答案
- 網絡安全威脅情報共享-深度研究
- 項目三公示語翻譯
- 《電動車充電器教材》課件
- 業主不讓維修通知函
- 藥店醫保知識培訓課件
- 《中暑的預防與急救》課件
評論
0/150
提交評論