PCI總線電機控制卡的WDM設(shè)備驅(qū)動程序設(shè)計
5驅(qū)動程序的安裝與應(yīng)用
Windows98和Windows2000是依靠INF文件來得到硬件設(shè)備驅(qū)動程序的安裝信息的一個設(shè)備信息文件(INF)。只要將文件中雙引號中的提示改為相應(yīng)的內(nèi)容即可生成我們自己的設(shè)備信息文件。
[Strings]
ProviderName=“yourcompanynamehere”//公司名稱
MfgName=“NameofHWmanufacturerhere”//硬件制造商名稱
DeviceDesc=“Descriptionofdevicehere”//設(shè)備描述
DeviceClassName=“Descriptionofdeviceclasshere”//設(shè)備類的描述
當(dāng)系統(tǒng)加電時,WINDOWS操作系統(tǒng)會自動檢測所有外設(shè),當(dāng)?shù)谝淮螜z測到我們的設(shè)備時系統(tǒng)會提示用戶指定新硬件的驅(qū)動程序。根據(jù)提示指定了我們修改過的INF文件,以及編譯后生成的.sys系統(tǒng)文件系統(tǒng)就自動安裝好了新硬件的驅(qū)動程序?;蛘呖梢杂每刂泼姘逯械奶砑有掠布硭阉餍掠布?p>驅(qū)動程序安裝好以后,在應(yīng)用程序中就可以像打開其他驅(qū)動程序(如虛擬設(shè)備驅(qū)動程序VxD)一樣用CreateFile打開設(shè)備。お
圖2為該系統(tǒng)硬件組成框圖,該控制卡采用PCI總線實現(xiàn)主計算機與控制卡之間的信息傳遞??刂瓶ㄉ嫌?個伺服控制專用芯片LM628,分別用于控制伺服電機;來自2個伺服電機的增量式碼盤輸入信號(A相、B相和Z脈沖),經(jīng)電平變換后分別送入LM628經(jīng)四倍頻和計數(shù)后作為反饋信號,由LM628根據(jù)主計算機給定的位置、速度、加速度生成梯形軌跡速度曲線作為給定值,實現(xiàn)伺服電機的反饋控制。主計算機對該控制器發(fā)送命令,伺服控制器即按給定的運動形式輸出相應(yīng)的數(shù)字信號,本卡中LM628工作于8位工作方式,產(chǎn)生輸出到功率放大器件。

應(yīng)用PCI總線目標(biāo)接口芯片PCI9052完成控制卡的接口部分,專用運動控制處理芯片LM628完成對電機的控制,再加上相應(yīng)的電路,即實現(xiàn)了基于PCI總線的精密電機運動控制卡的硬件設(shè)計。お
7結(jié)束語
WDM用一個相對獨立的模塊來處理設(shè)備數(shù)據(jù)的傳輸,驅(qū)動程序在這個模塊中啟動或停止設(shè)備,并實現(xiàn)中斷或其他方式的輸入輸出操作。WDM使驅(qū)動程序的結(jié)構(gòu)非常清晰、完整,也使中斷I/O方式的設(shè)備驅(qū)動程序的設(shè)計和實現(xiàn)更加方便、快捷。應(yīng)用WDM編制的設(shè)備驅(qū)動程序在本電機控制卡得到很好的應(yīng)用。
評論