pci卡設(shè)計心得
找到了pci卡的配置空間后,讀出space0的基地址,然后進行物理地址到線性地址的轉(zhuǎn)換,我又偷了懶,vtools提供的example中有實現(xiàn)此功能的vxd源代碼,直接用vc++編譯成vxd就可以共win app使用了。所以實際上我的app程序使用了兩個vxd,一個用來專門找卡,一個用來地址轉(zhuǎn)換。
至于app如何調(diào)用vxd,可以參看vc的參考書,一般都有介紹。
下面將一下如何安裝vxd到系統(tǒng)中,我編的vxd都是動態(tài)加載的(pnp一般都用動態(tài)加載vxd)要編寫一個inf文件以便系統(tǒng)將vxd安裝進去。我用的是windriver生成的inf文件模板,然后再按照需要進行修改,自然加上我的大名了。編完了inf文件后,就可以安裝了。一般情況如果你插上pci卡windows啟動后就會發(fā)現(xiàn)新硬件,你只要按照以前安裝硬件的步驟進行就可以了只是在選擇安裝文件時選擇自己編寫的inf文件就可以了。我覺得一般的安裝過程就是將vxd文件拷入系統(tǒng)的文件夾,即windows目錄下,以便當app加載vxd時,系統(tǒng)可以找到vxd程序,進行動態(tài)加載。
下面是我的inf文件
:
[Version]
Signature=$CHICAGO$;必須這么寫
Class=PLX;可以自己改
Provider=%SHENLI%;制作者
[Manufacturer]
%Manufacture%=SECTION0
[SECTION0]
評論