基于SJA1000的CAN總線控制系統(tǒng)的設(shè)計與實(shí)現(xiàn)_第1頁
基于SJA1000的CAN總線控制系統(tǒng)的設(shè)計與實(shí)現(xiàn)_第2頁
基于SJA1000的CAN總線控制系統(tǒng)的設(shè)計與實(shí)現(xiàn)_第3頁
基于SJA1000的CAN總線控制系統(tǒng)的設(shè)計與實(shí)現(xiàn)_第4頁
基于SJA1000的CAN總線控制系統(tǒng)的設(shè)計與實(shí)現(xiàn)_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

基于SJA1000的CAN總線控制系統(tǒng)的設(shè)計與實(shí)現(xiàn)作者:賀國棟張瑞華0引言CAN-bus(ControllerAreaNetwork)即控制器局域網(wǎng)是國際上應(yīng)用最廣泛的現(xiàn)場總線之一。最初CAN-bus被設(shè)計作為汽車環(huán)境中的微控制器通訊工具,用于在車載各電子控制裝置ECU之間交換信息,從而形成汽車電子控制網(wǎng)絡(luò)。如今,CAN-bus作為一種技術(shù)先進(jìn)、可靠性高、功能完善、成本合理的遠(yuǎn)程網(wǎng)絡(luò)通訊控制方式,已被廣泛應(yīng)用到各個自動化控制系統(tǒng)中。而且CAN-bus總線在通信能力、可靠性、實(shí)時性、靈活性、易用性、傳輸距離等方面較RS-485總線有著明顯的優(yōu)勢。因而用CAN總線取代RS-485總線將是大勢所趨。1CAN總線的主要特性CAN總線與其它通信網(wǎng)的不同之處有二:一是報文傳送中不包含目標(biāo)地址,它是以全網(wǎng)廣播為基礎(chǔ),各接收站根據(jù)報文中反映數(shù)據(jù)性質(zhì)的標(biāo)識符來過濾報文,該收的收下,不該收的棄而不用。其好處是可在線上網(wǎng)下網(wǎng)、即插即用和多站接收;二是特別強(qiáng)化數(shù)據(jù)安全,可滿足控制系統(tǒng)及其它較高數(shù)據(jù)要求的系統(tǒng)需求。CAN具有以下主要技術(shù)特性:(1)CAN遵從ISO模型,采用了其中的物理層、數(shù)據(jù)鏈路層與應(yīng)用層。采用雙絞線,通信速率最高可達(dá)到1Mbps/40m,直接傳輸距離最遠(yuǎn)可達(dá)10kin/5kbps。同一段總線內(nèi)最多可掛接110個設(shè)備。(2)CAN的信號傳輸采用短幀結(jié)構(gòu),每一幀有效字節(jié)數(shù)為8個。因而傳輸時間短,受干擾的概率低。當(dāng)節(jié)點(diǎn)發(fā)生嚴(yán)重錯誤時,CAN可自動關(guān)閉該節(jié)點(diǎn),同時切斷與總線的聯(lián)系,以使總線上其它節(jié)點(diǎn)不受影響,因此CAN總線具有很強(qiáng)的抗干擾能力。(3)CAN可支持多主工作方式,網(wǎng)絡(luò)上任一節(jié)點(diǎn)在任何時候均可主動向其它節(jié)點(diǎn)發(fā)送信息,同時也支持點(diǎn)對點(diǎn)、一點(diǎn)對多點(diǎn)和全局廣播方式來接收/發(fā)送數(shù)據(jù)。處于優(yōu)先級低的節(jié)點(diǎn)會主動停止發(fā)送,以此來避免總線沖突。2CAN總線接口硬件電路的設(shè)計硬件電路的設(shè)計主要是CAN通信控制器與微處理器之間和CAN總線收發(fā)器與物理總線之間的接口電路的設(shè)計。CAN通信控制器是CAN總線接口電路的核心,主要完成CAN的通信協(xié)議,而CAN總線收發(fā)器的主要功能是增大通信距離,提高系統(tǒng)的瞬間抗干擾能力,保護(hù)總線,降低射頻干擾(RFI),實(shí)現(xiàn)熱防護(hù)等。2.1CAN總線接口電路SJA1000硬件接口原理圖如圖l所示。圖中,CAN總線控制器SJA1000的ADO-AD7連接到AT89C51的P0口。片選端CS取反后連接到AT89C51的P2.7,當(dāng)P2.7為1時,CPU片外存儲器地址可選中SJA1000。CPU通過這些地址可對SJA1000執(zhí)行相應(yīng)的讀/寫操作(即:SJA1000首地址為8000H)。SJA1000的RD、WR、ALE分別與AT89C51的對應(yīng)引腳相連。由于SJA1000是低電平復(fù)位,而AT89C51是高電平復(fù)位,所以兩者的復(fù)位端接法不同。另外,當(dāng)SJA1000的11腳MODE接高電平時,可選擇Intel二分頻模式。SJA1000的16腳(INT)是中斷信號輸出端,在中斷允許的情況下,有中斷發(fā)生時,16腳會輸出由高電平到低電平的跳變,因此將AT89C51的外部中斷輸入腳(INT0)與該腳相連接,即可通過中斷方式來訪問SJA1000。為了增強(qiáng)CAN總線節(jié)點(diǎn)的抗干擾能力,本設(shè)計采用SJA1000的具有光電隔離的CAN總線接口。SJA1000的發(fā)送輸出端TX0與接收輸入端RXO、RX1分別經(jīng)高速集成光電耦合器6N137隔離后,與CAN總線接口驅(qū)動芯片82C250的TXD和RXD相連,82C250直接與CAN物理總線相連。CAN總線驅(qū)動器PCA82C250是CAN控制器和物理總線之間的接口,具有可向總線的差動發(fā)送數(shù)據(jù)和CAN控制器的差動接收數(shù)據(jù)的功能。MOVDPTR,#CR;初始化完成,使控制器退出復(fù)位模式,進(jìn)入工作模式工作。

MOVA,#06H

MOV@DPTR,ASJA1000在經(jīng)過初始化后便開始接收或發(fā)送數(shù)據(jù),其程序流程分別如圖2和圖3所示。4結(jié)束語

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論