<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è) > 嵌入式系統 > 設計應用 > 基于PCI 總線(xiàn)的四軸運動(dòng)控制卡的研制

基于PCI 總線(xiàn)的四軸運動(dòng)控制卡的研制

作者: 時(shí)間:2012-09-15 來(lái)源:網(wǎng)絡(luò ) 收藏

3.1數據配置

局部總線(xiàn)為16位的ISA總線(xiàn),與MCX314as相兼容,可直接連接,涉及到的只是I/O信號,占用局部總線(xiàn)的片選3(CS3#)如圖2。另外,還連接一片64KB的RAM做它用,與運動(dòng)控制卡無(wú)關(guān),它涉及到的是存儲器信號,占用片選2(CS2#)。在ISA模式下無(wú)實(shí)際的片選1和片選2。

本卡的EEPROM配置信息表如下:



上表中顯示的是配置數據,未列出的寄存器都設置為0。PLX公司的廠(chǎng)商ID為10B5H,設備ID為9052H。分類(lèi)號表示的是何種橋,以及當前的版本,PCI9052為02h。子系統ID和子制造商ID分別為9052H和10B5H。PCI9052僅支持INTA#,所以PCIILR(PCI中斷寄存器)D8=1或者D8=0不使用中斷。PCI9052有0到3共四個(gè)局部地址空間,其中空間0必須被配置為存儲器空間范圍,空間1必須被配置為I/O 空間范圍。根據PCI9052的DATASHEET參考文獻[1]的說(shuō)明,空間0配置數據為FFFF0000H,空間范圍為64KB,D0=0表示配置為存儲器空間范圍,見(jiàn)表中基地址為04000000H,使用片選2(CS2#)??臻g1配置數據為FFFFFFF1H,I/O的空間范圍為16個(gè)字節,D0=1表示配置為I/O空間范圍。ISA模式下復用出來(lái)的兩個(gè)片選管腳(CS2#,CS3#)是否輸出,分別由片選信號2基地址和片選信號3的基地址來(lái)確定。片選信號基地址的D0=1為片選使能,片選基地址的確定,為空間1或0的基地址加上所配置空間地址的范圍,超出這個(gè)范圍,片選便沒(méi)有輸出。局部地址空間0或1總線(xiàn)區域描述為00400022H和0040003AH,確定為16位局部數據總線(xiàn)。中斷控制及狀態(tài)寄存器為00001000H,不使用中斷,它的D12=1確定局部總線(xiàn)為ISA模式??刂萍拇嫫鞔_定了它的各個(gè)復用管腳輸入/輸出功能,以及初始化控制。

用含有以上配置數據的EEPROM來(lái)啟動(dòng)板卡,計算機將為它分配03000000H-0300000FH這16個(gè)I/O端口和04000000H-04010000H這64KBytes存儲器空間。

3.2選取、配置EEPROM的注意事項

1)串接EEPROM端信號有如下幾種:時(shí)鐘信號(EESK)、讀數據信號(EEDO)、寫(xiě)數據信號(EEDI)和片選信號(EECS)。時(shí)鐘信號(EESK)是由的時(shí)鐘32分頻后得到的。

2)對于EERPOM的選取要遵循PCI9052上推薦的EEPROM或者與之相兼容的具有連讀功能的1Kbit的EEPROM。

3)可以采用在線(xiàn)熱配置(通過(guò)PCI9052在線(xiàn)配置),軟件可以選擇PLX自己公司的PLXMON或者JUNGO公司的WinDriver。筆者是用WinDriverv6.02,在軟件安裝的Samples目錄下的程序PLX9050Diagnostics來(lái)讀寫(xiě)EEPROM。這種方法比較方便,但是有時(shí)會(huì )有讀寫(xiě)數據錯誤的情況出現。也可以用燒錄器將配置數據寫(xiě)入EEPROM,這種方法可靠性高,但在實(shí)驗過(guò)程中要反復插拔EEPROM不太方便。

4.驅動(dòng)程序的開(kāi)發(fā)

ISA總線(xiàn)的地址空間要映射到I/O空間或內存空間。為從配置寄存器中獲得主機動(dòng)態(tài)分配的映射基址,并對映射端口進(jìn)行讀寫(xiě),必須編寫(xiě)驅動(dòng)程序。

驅動(dòng)的簡(jiǎn)單實(shí)現可以采用JUNGO公司的WinDriver來(lái)生成驅動(dòng),但是WinDriver生成的驅動(dòng)效率不高,而且沒(méi)有注冊碼只能使用一個(gè)月。因此,我們采用DriverStudio加WIN2000DDK的辦法來(lái)開(kāi)發(fā)驅動(dòng)。在DriverStudio的向導下輸入設備ID制造商ID、分類(lèi)號和子系統ID子制造商ID,生成驅動(dòng)程序的框架,然后編寫(xiě)需要的程序代碼。關(guān)于對驅動(dòng)程序的安裝以及在應用程序中的調用可以參看文獻[5]。

5.結論

實(shí)踐證明,采用PCI接口芯片和專(zhuān)用運動(dòng)控制芯片開(kāi)發(fā)的運動(dòng)控制卡,開(kāi)發(fā)研制周期短,實(shí)用性強,可靠性高。此運動(dòng)控制卡已經(jīng)完成硬件調試和驅動(dòng)編寫(xiě),目前已完成部分運動(dòng)控制函數,正在進(jìn)行應用程序開(kāi)發(fā)。

參考文獻

[1].PLXTechnology.PCI9052databook.PrintedinUSA,September,2001.

[2].TomShanley(美),DonAnderson(美)著(zhù).劉暉等譯.PCI系統結構(第四版).北京:電子工業(yè)出版社,2000.7

[3].MCX314AsUser’sManualVer1.02004-8-10.

[4]WalterOney(美)著(zhù).MicrosoftWindowsDriverModel.http://www.oneysoft.com

[5].武安河等著(zhù).Windows2000/XPWDM設備驅動(dòng)程序開(kāi)發(fā)(第2版).電子工業(yè)出版社,2005-02-01.

[6].陶吉利,魯五一.PCI9052及其在通用網(wǎng)絡(luò )控制卡設計中的應用.微計算機信息,2003Vol.19No.3P.72-73.

[7].袁鵬.基于視覺(jué)的高速高精度貼片機運動(dòng)控制系統的設計與實(shí)現[C].計算機集成制造系統,2004,12(10)


上一頁(yè) 1 2 下一頁(yè)

評論


相關(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>