




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、利用EPP并行口實(shí)壩PC機(jī)之間通信的CAN總線設(shè)計(jì)摘 要:文章簡(jiǎn)要介紹了EPP并行口及CAN獨(dú)立控制器s31000。并深入研究PC對(duì)SJAl000的讀寫。根據(jù)讀寫時(shí)序的產(chǎn)生,設(shè)計(jì)了兩套硬件方案。同時(shí)。結(jié)合在實(shí)踐中遇到的問(wèn)題,指出了一些在CAN總線協(xié)議使用上需要注意的地方。關(guān)鍵字:EPP并行口 CAN總線 SJAl000 網(wǎng)絡(luò)適配卡l引言CAN(ControUer Area Network)總線作為現(xiàn)場(chǎng)總線的一種,與其他總線相比可靠性高性價(jià)比合理。其主要特點(diǎn)有:(1)多主方式工作,非破壞性的基于優(yōu)先權(quán)的總線仲裁技術(shù);(2)借助接收濾波實(shí)現(xiàn)多地址的幀傳送;(3)短幀結(jié)構(gòu)數(shù)據(jù),受干擾率低;(4)發(fā)送
2、期間丟失仲裁或由于出錯(cuò)而遭破壞的幀可自動(dòng)重發(fā);(5)對(duì)于嚴(yán)重錯(cuò)誤具有自動(dòng)關(guān)閉總線功能,使總線其他操作不受影響;(6)不關(guān)閉總線即可任意掛接或拆除節(jié)點(diǎn),增強(qiáng)了系統(tǒng)的靈活性和可擴(kuò)展性;(7)統(tǒng)一的標(biāo)準(zhǔn)和規(guī)范,使各設(shè)備之間具有較好的互操作性、互換性和通用性等。正是由于CAN總線的這些優(yōu)良性能,目前已應(yīng)用于船舶制造、工業(yè)控制、建筑保安系統(tǒng)中,而且正成為許多領(lǐng)域的發(fā)展方向。2 EPP并行口 為了實(shí)現(xiàn)大量數(shù)據(jù)的快速、準(zhǔn)確傳輸,數(shù)據(jù)通信已經(jīng)成為自動(dòng)化系統(tǒng)的關(guān)鍵技術(shù)之一。計(jì)算機(jī)標(biāo)準(zhǔn)串、并行口是PC機(jī)的基本部件之一,利用計(jì)算機(jī)的標(biāo)準(zhǔn)串、并 行口來(lái)作為PC機(jī)與CAN總線的通信接口,既方便又經(jīng)濟(jì)。但是由于串行通訊口
3、的通訊效率較低,難以完成大量、實(shí)時(shí)性高的數(shù)據(jù)傳輸工作,而傳統(tǒng)的SPP并行 口只能實(shí)現(xiàn)數(shù)據(jù)的單向傳輸,但高級(jí)并行接口(EPP)則可以進(jìn)行高速的雙向數(shù)據(jù)傳輸,是進(jìn)行大量數(shù)據(jù)傳輸?shù)囊环N理想選擇。2.1 EPP概述 增強(qiáng)型并行口EPP(Enhanced Parallel Port)是一種與標(biāo)準(zhǔn)并行口SPP(Standard Parallel Port)兼容的高性能的并行連接口。在實(shí)際應(yīng)用中,由于EPP并行口具有8位雙向數(shù)據(jù)端口、狀態(tài)端口和控制端口,因此,EPP可作為8位總線,靈活使 用。EPP協(xié)議又極大地改善了PC機(jī)并行口的數(shù)據(jù)傳輸能力,使得并行口的數(shù)據(jù)傳輸速率可以很容易達(dá)到l一2Mbps。EPP協(xié)議
4、定義了各種單雙向信號(hào)以 滿足各自的特殊需要。22 EPP寄存器介紹EPP協(xié)議定義的信號(hào)分別對(duì)應(yīng)三個(gè)不同的寄存器,在PC機(jī)中,并行口l寄存器的基地址一般為378H,該地址包含讀入和讀出兩個(gè)寄存器的雙緩沖寄存器,對(duì)應(yīng)ADOAD7雙向數(shù)據(jù)地址端口;輸入操作EPP信號(hào)的定義及其描述表l表l列出了EPP信號(hào)的定義及其描述。并行口引腳號(hào)EPP信號(hào)數(shù)據(jù)方向定義lWRITE輸出低電平寫,高電平讀29ADO7雙向雙向數(shù)據(jù)地址線lOINTR輸入外設(shè)中斷l(xiāng)lWAIT輸入握手信號(hào)12用戶定義輸入按不同的外設(shè)自定義13用戶定義輸入按不同的外設(shè)自定義14DATASTB輸出低電平有效,表示正在進(jìn)行數(shù)據(jù)讀寫15用戶定義輸入按
5、不同的外設(shè)自定義16RESET輸出低有效,外設(shè)復(fù)位17ADDSTB輸出低電平有效,表示正在進(jìn)行地址讀寫1825GND信號(hào)地注:輸出,表示由計(jì)算機(jī)發(fā)向外設(shè);輸入,表示由外設(shè)發(fā)向計(jì)算機(jī)。加“”表示信號(hào)低電平有效。EPP寄存器定義表2378HAD7AD6AD4AD4AD3AD2ADlADO379HWAllrINTR自定義自定義自定義無(wú)定義無(wú)定義無(wú)定義37AH無(wú)定義無(wú)定義READ ENABLEIRQ ENBALEADDSTBBESTEDATA/write時(shí)使用輸入寄存器,輸出操作時(shí)使用輸出寄存器。單向狀態(tài)端口和單向控制端口的寄存器地址分別為379H和37AH,其定義見(jiàn)表2。這三個(gè)寄存器是與標(biāo)準(zhǔn)并行口S
6、PP兼容的,但實(shí)際上除了這三個(gè)寄存器之外,EPP還定義了其它幾個(gè)寄存器。EPP不需要從主機(jī)送來(lái)的信號(hào)就能執(zhí)行數(shù)據(jù)交換。當(dāng)主機(jī)把數(shù)據(jù)寫到數(shù)據(jù)緩沖區(qū)時(shí),總線自動(dòng)產(chǎn)生數(shù)據(jù)選通信號(hào)。同樣,從端口讀人數(shù)據(jù)時(shí)也是自動(dòng)產(chǎn)生數(shù)據(jù)選通信號(hào)來(lái)表示系統(tǒng)正準(zhǔn)備接收下一批數(shù)據(jù)。3 CAN獨(dú)立控制器SJAl000sJAl000是一種獨(dú)立控制器,主要用于移動(dòng)目標(biāo)和一般工業(yè)環(huán)境中的區(qū)域網(wǎng)絡(luò)控制(CAN),是Philips半導(dǎo)體PCA82C200 CAN控制器(BasieCAN)的替代產(chǎn)品。其基本特性有:(1)引腳與PCA82C200獨(dú)立CAN控制器兼容。(2)有擴(kuò)展的接收緩沖器64字節(jié),先進(jìn)先出(FIFO);(3)支持CAN
7、20A和CAN20B協(xié)議;(4)通信位速率可達(dá)IMbps。而且它增加了一種新的工作模式(PeliCAN),這種模式支持具有很多新特性的CAN20B協(xié)議。4CAN總線收發(fā)器PCA82C250PCA82C250是CAN控制器和物理總線間的接口。器件可以提供對(duì)總線差動(dòng)發(fā)送、接收的能力。采用雙線差分驅(qū)動(dòng),有助于抑制汽車等惡劣電氣環(huán)境下的瞬間干擾。其主要特性有:(1)與ISODIS 11898標(biāo)準(zhǔn)全兼容;(2)高速性,最高可達(dá)IMbps;(3)具有抗汽車環(huán)境下的瞬間干擾能力,保護(hù)總線能力;(4)降低射頻干擾的斜率控制;(5)熱保護(hù);(6)總線與電源及地之間的短路保護(hù);(7)低電流待機(jī)方式;(8)掉電自動(dòng)
8、關(guān)閉輸出;(9)可支持多達(dá)110個(gè)節(jié)點(diǎn)相連接等。5適配卡設(shè)計(jì)CAN總線的卓越性能為工業(yè)控制提供了一種可靠的數(shù)據(jù)通信,為了擴(kuò)展CAN總線的監(jiān)控和管理功能,應(yīng)設(shè)計(jì)一塊適配卡,連接PC機(jī)的并行口,該卡上具備CAN接口和PC接口特性,它完成的任務(wù)主要是PC機(jī)與總線之間的通信。 為此,適配卡的主要組成有:CAN總線控制器(sJAl000)、CAN總線驅(qū)動(dòng)器(PCA82C250)、EPP并行端口。sJAl000是集成的獨(dú) 立CAN控制器,它負(fù)責(zé)完成CAN總線通信協(xié)議的物理層和數(shù)據(jù)鏈路層的功能。sJAl000片含有控制寄存器、命令寄存器、狀態(tài)寄存器、中斷寄存器和收發(fā) 寄存器。PC機(jī)通過(guò)讀寫這些寄存器來(lái)實(shí)現(xiàn)對(duì)
9、sJAl000的控制;芯片的TX0、TXl、RX0、RXl引腳用于與CAN總線的接口。PCA82C250 是專門用于CAN總線收發(fā)驅(qū)動(dòng)的9腳芯片,TXD、RXD引腳分別接收和發(fā)送驅(qū)動(dòng)后的信號(hào);CANH、CANL引腳接至雙絞線或同軸電纜等傳輸介質(zhì)。使用 PCA82C250可以擴(kuò)大通信距離,能提高系統(tǒng)的抗干擾能力,保護(hù)總線,降低射頻干擾,實(shí)現(xiàn)熱防護(hù)等。sJAl000的中斷輸出信號(hào)INT接到EPP 的INTR中斷后,通過(guò)中斷方式實(shí)現(xiàn)PC機(jī)與CAN控制器的通信。由于SJAl000的中斷輸出信號(hào)是低電平有效,而EPP的中斷信號(hào)是高電平有效,所以 在他們的連線之間必須加一個(gè)反向器。根據(jù)通信讀寫時(shí)序的產(chǎn)生,
10、設(shè)計(jì)了一種由軟件產(chǎn)生讀寫時(shí)序的電路和一種由硬件產(chǎn)生讀寫時(shí)序的電路。51軟件產(chǎn)生讀寫時(shí)序電路連線說(shuō)明:sJAl000的ADOAD7直接與EPP并行口的ADOAD7相連;ALE直接與nWrite相連;RD,WR分別與nAddStrobe和nDataStrobe相連;INT的引線反向后與EPP的INTR相連(如圖l所示)。此種電路設(shè)計(jì)需要軟件產(chǎn)生訪問(wèn)外設(shè)芯片所需的讀寫時(shí)序。在我們的應(yīng)用程序中,對(duì)sJAl000的讀寫函數(shù)分別為ReadReg和SetReg,用匯編語(yǔ)言實(shí)現(xiàn)如下(如表3所示):52硬件產(chǎn)生讀寫時(shí)序連線說(shuō)明:nWAIT信號(hào)為外設(shè)發(fā)送給PC的握手信號(hào),以便PC在訪問(wèn)慢速外設(shè)時(shí)插入等待周期。讀寫
11、函數(shù)表表3void SetReg(im port,int Value)通過(guò)雙向口向sJAl000發(fā)送數(shù)據(jù),port為sJAl000寄存器的地址,value為要設(shè)置的值im ReadReg(int port)讀取SJAl000寄存器的值,port為sJAl000寄存器的地址,返回的值為該寄存器的值_sflmmov esx,0臨時(shí)寄存器清零mov dx,37ahmov al,0dShout dx,alWRITE高,ALE低電平,地址選通mov dx,378hmov eax,portout dx,al將要訪問(wèn)的sIAl000寄存器地址放上數(shù)據(jù)線mov dx,37ahmov a1,0d4hout dx
12、,alWRITE高。ALE高,將地址信號(hào)鎖存mov a1,0d5hout dx,alWRITE高,ALE為低電平,地址選通mov dx,378hmDv eax,valueout dx,al把要寫的數(shù)據(jù)送上數(shù)據(jù)總線mov dx37aImov a1.0ddhout山且JWRITE低,可寫,ALE低,地址選通,將數(shù)據(jù)寫入sJAl000mov aI,0d5hout(1x,al復(fù)位,WRITE為低,ALE低int retumcode=0:asmmoe,sx,0mov dx,37alImov a1,0d5hout dx,alREAD為低電平,ALE低,地址選通lnov dx,378hmov esx,por
13、tout dx,al將要訪問(wèn)的sJAl000寄存器地址放上數(shù)據(jù)線mov(b,37ahmov a1,0d4hout dx,alREAD低,ALE高,將地址鎖存mov a1.0d5hout dxalREAD低,ALE低,地址選通mov dx37aIlmov a1.0d7hREAD為低,ALE低,數(shù)據(jù)被送上數(shù)據(jù)線out cb,almov a1.0f7hout dxal,lREADENABLE為1允許數(shù)據(jù)讀入mov eax0mov dx,378hm al,dx,從效據(jù)總線讀人寄存器mov returneode。eaxnov dx,37ahmov a1,0f5hout dx,aLREAD高,ALE低mo
14、v a1,0d5hout dx,al恢復(fù),關(guān)掉READENBLEieturn retumcode;注:向控I端口37AH的ADDSTB,DATASTB,WRITE位寫入1時(shí),并行口17、14和1;I腳均為低電平;相反寫入0時(shí),三個(gè)引腳均為高電平。 SJAl000的訪問(wèn)時(shí)間在40ns以內(nèi),所以PC在訪問(wèn)sJAl000時(shí)完全可以不用插入等待周期。nWAIT可由nAddrStrobe和 nDataStrobe信號(hào)經(jīng)過(guò)一個(gè)與非門后產(chǎn)生。由于sJAl000的ALE是下降鎖存地址信號(hào),所以將nAddrStrobe反相后與ALE相連。在 EPP的數(shù)據(jù)讀寫周期時(shí),sJAl000的RD和WR控制信號(hào)應(yīng)該有效,而
15、在地址讀寫周期時(shí)應(yīng)該無(wú)效。sJAl000的RESET腳與并行端口的 nRESET腳相連,由PC機(jī)向sJAl000提供復(fù)位信號(hào)。地址數(shù)據(jù)讀寫說(shuō)明:握手信號(hào)nWAIT由nAddrStrobe和 nDataStrobe信號(hào)經(jīng)過(guò)一個(gè)與非門后再延遲一段時(shí)間產(chǎn)生,然后可利用EPP并行口的數(shù)據(jù)地址周期來(lái)產(chǎn)生sJAl000芯片的讀寫時(shí)序。 sJAl000芯片的讀寫時(shí)序分為地址鎖存和數(shù)據(jù)讀寫。地址鎖存解決的是地址的寫入和地址鎖存信號(hào)的產(chǎn)生;數(shù)據(jù)讀寫是數(shù)據(jù)的讀寫以及相應(yīng)的讀寫控制信號(hào)的 產(chǎn)生。所以,可以利用EPP的地址寫周期來(lái)產(chǎn)生SJAl000讀寫時(shí)序的地址鎖存部分,并用EPP并行口的數(shù)據(jù)讀寫周期來(lái)產(chǎn)生SJAl0
16、00讀寫時(shí)序的數(shù) 據(jù)讀寫部分。數(shù)據(jù)寫周期的時(shí)序如圖3所示,其步驟如下:(1)程序向EPP的DATA端口發(fā)送一個(gè)IO寫周期命令;(2)插入nWRITE信號(hào),同時(shí)數(shù)據(jù)出現(xiàn)在并行端口數(shù)據(jù)線上;(3)當(dāng)nWAIT信號(hào)變成低電平之后,插人數(shù)據(jù)選通信號(hào);(4)端口等待來(lái)自外設(shè)的應(yīng)答信號(hào)(取消nWAlT信號(hào));(5)取消數(shù)據(jù)選通信號(hào),EPP周期結(jié)束;數(shù)據(jù)讀周期的時(shí)序如圖4所示,其讀數(shù)據(jù)的步驟如下:(1)程序中向EPPDATA端口發(fā)送一個(gè)IO讀周期命令;(2)當(dāng)nWAIT信號(hào)變成低電平之后,插入數(shù)據(jù)選通信號(hào);(3)端口讀取數(shù)據(jù)位,取消數(shù)據(jù)選通信號(hào);(4)端口等待來(lái)自外設(shè)的應(yīng)答信號(hào)(取消nWAIT信號(hào));(5)
17、EPP周期結(jié)束;(6)ISA周期結(jié)束。地址寫和地址讀周期除了把nDataStrobe信號(hào)替換成nAddStrobe之外完全一樣。相關(guān)引腳直值表如表4所示。53兩種設(shè)計(jì)的比較 實(shí)驗(yàn)表明,采用軟件產(chǎn)生讀寫時(shí)序設(shè)計(jì)的硬件比較簡(jiǎn)單,便于調(diào)試,但是程序編寫比較復(fù)雜(需編寫程序產(chǎn)生SJAl000的讀寫時(shí)序);用硬件產(chǎn)生讀寫時(shí)序 設(shè)計(jì)的硬件稍微復(fù)雜,硬件調(diào)試也復(fù)雜一些,但是應(yīng)用程序的編寫要簡(jiǎn)單一些(不用編寫程序產(chǎn)生SJAl000的讀寫時(shí)序),而且端口讀寫的速度也快得多。6設(shè)計(jì)中存在的幾個(gè)問(wèn)題(1)PCA82C250第8腳與地之間的電阻Rs稱為斜率電阻,它的取值決定了系統(tǒng)處于高速工作方式還是斜率控制方式。把該
18、引腳直接與地相連,系統(tǒng)將處于高速工作方式。在這種方式下,為避免射頻干擾,建議使相關(guān)引腳的真值表表4nDatanAddrnWriteWRRDALE備注0l00l0數(shù)據(jù)讀,地址鎖存OlllO0數(shù)據(jù)寫,地址鎖存l000ll地址寫,地址選通lO1l0l地址讀,地址選通1l0ll0地址數(shù)據(jù)均無(wú)效等待llllll地址數(shù)據(jù)均無(wú)效,等待注:標(biāo)加“”表示低電平有效。加字母“n”表示是并行口的引腳。因?yàn)榈刂泛蛿?shù)據(jù)不能同時(shí)被選通,所以,真值表中就不列出它們同時(shí)被選通的情況。用屏蔽電纜作總線;而在波特率較低、總線較短時(shí),一般采用斜率控制方式,上升和下降的斜率取決于Rs的阻值。實(shí)驗(yàn)數(shù)據(jù)表明,15200k為Rj較理想的取值范圍。在這種方式下,可以使用平行線或雙絞線作總線。(2) SJAl000的TXl引腳懸空,RXl引腳的電位必須維持在約O5Vce上,否則將不能形成CAN協(xié)議所要求的電平邏輯。如果系統(tǒng)傳輸距離近,環(huán)境干 擾小,可以不用電流隔離,這樣可以直接把PCA82C250的VRFF端(約為05Vcc)與RXl腳相連,從而簡(jiǎn)化電路。(3)必須將sJAl000的中斷信號(hào)取反之后才能接到PC機(jī)并行口的中斷引腳上,這樣才能保證硬件中
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025天津市建筑安全員A證考試題庫(kù)附答案
- 生物-四川省金太陽(yáng)2025屆高三2月開(kāi)學(xué)考試試題和答案
- 2025年度房產(chǎn)出售代理售后服務(wù)協(xié)議
- 2025年度化工原料運(yùn)輸事故應(yīng)急預(yù)案合同
- 2025年度文化藝術(shù)公司公司掛靠文化藝術(shù)交流活動(dòng)合同
- 2025年度農(nóng)村魚塘養(yǎng)殖權(quán)轉(zhuǎn)讓與漁業(yè)資源可持續(xù)利用合同
- 2025年度圖書出版著作權(quán)許可及翻譯權(quán)合同
- 2025年度電商運(yùn)營(yíng)顧問(wèn)勞動(dòng)合同
- 2025年度商業(yè)地產(chǎn)開(kāi)發(fā)車位贈(zèng)送及使用維護(hù)合同
- 2025年度個(gè)人自愿捐贈(zèng)殘疾人福利基金協(xié)議書
- 美麗的春天課件
- 2025年山東青島自貿(mào)發(fā)展有限公司招聘筆試參考題庫(kù)含答案解析
- 液化氣罐的使用和安全防范
- 會(huì)計(jì)法律法規(guī)答題答案
- 2024年山東外貿(mào)職業(yè)學(xué)院高職單招語(yǔ)文歷年參考題庫(kù)含答案解析
- 2025江蘇常州溧陽(yáng)市部分機(jī)關(guān)事業(yè)單位招聘編外人員78人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025年學(xué)校心理健康教育工作計(jì)劃(三篇)
- 2025年教科版科學(xué)五年級(jí)下冊(cè)教學(xué)計(jì)劃(含進(jìn)度表)
- 北師大版一年級(jí)語(yǔ)文下冊(cè)第一單元元宵節(jié)《1元宵節(jié)》
- 歐盟一般食品法Regulation-(EC)-No-178-2002中文翻譯
- 2024屆高考語(yǔ)文二輪復(fù)習(xí)詩(shī)歌專題訓(xùn)練文學(xué)短評(píng)類題型(含解析)
評(píng)論
0/150
提交評(píng)論