eCAN模塊課件_第1頁
eCAN模塊課件_第2頁
eCAN模塊課件_第3頁
eCAN模塊課件_第4頁
eCAN模塊課件_第5頁
已閱讀5頁,還剩43頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、 傳統(tǒng)的控制系統(tǒng)難于實現(xiàn)設備之間以及系統(tǒng)與外界之間的信息交換,是一個“信息孤島”。要滿足自動控制技術現(xiàn)代化的要求,實現(xiàn)整個企業(yè)的信息集成,實施綜合自動化,就必須設計出一種能在工業(yè)現(xiàn)場環(huán)境中運行、性能可靠、造價低廉的通訊系統(tǒng),形成工廠底層網(wǎng)絡,完成現(xiàn)場自動化設備之間的多點數(shù)字通訊,實現(xiàn)底層現(xiàn)場設備之間以及生產現(xiàn)場與外界信息的交換,現(xiàn)場總線就是在這種需求下應運而生。 現(xiàn)場總線控制系統(tǒng)(FCS)既是一個開放的通訊網(wǎng)絡,又是一種全分布控制系統(tǒng)。作為智能設備的聯(lián)系紐帶,把掛接在總線上、作為網(wǎng)絡節(jié)點的智能設備連接為網(wǎng)絡系統(tǒng),并進一步構成自動化系統(tǒng),實現(xiàn)基本控制、補償計算、參數(shù)修改、報警、顯示、監(jiān)控、優(yōu)化及

2、控管一體化的綜合自動化功能。 現(xiàn)場總線其規(guī)模屬于局域網(wǎng)、總線型結構,它簡單但能滿足現(xiàn)場的要求,信息楨短小,要求實時性高,可靠性高。 隨著嵌入式系統(tǒng)的高速發(fā)展,自1980年后十幾年間,好幾種現(xiàn)場總線技術走向成熟。 基金會現(xiàn)場總線(Foundation Fieldbus) 以美國Fisher-Rosemount公司為首,聯(lián)合ABB、西門子等80家公司,一同致力開發(fā)的一種國際上統(tǒng)一的現(xiàn)場總線。 LonWorks(美國Echelon、摩托羅拉、東芝等公司共同倡導) PROFIBUS(德國國家標準和歐洲標準的現(xiàn)場總線標準) HART(Highway Addressable Remote Transduc

3、er) 可尋址遠程傳感器高速通道的開放通訊協(xié)議,其特點是在現(xiàn)有模擬信號傳輸線上實現(xiàn)數(shù)字信號通訊,屬于模擬系統(tǒng)向數(shù)字系統(tǒng)轉變過程的過度產品。 20世紀80年代,Bosch公司的工程人員開始探討現(xiàn)有的串行總線系統(tǒng)運用于轎車的可能性,因為還沒有一個網(wǎng)絡協(xié)議能完全滿足汽車工程的要求。 1983年,Kiencke開始設計新的串行總線系統(tǒng),來自Mercedes-Benz的工程人員介入新總線系統(tǒng)規(guī)范的制定。 德國Dr.Wolfhard給這個新網(wǎng)絡起名為“Controller Area Network” 今天,幾乎每一輛在歐洲生產的轎車都至少裝配有一個CAN網(wǎng)絡系統(tǒng)。CAN應用在從火車到輪船等其他類型的運輸工

4、具上,以及工業(yè)控制方面。由于CAN總線本身的特點,其應用范圍目前已經(jīng)不局限于汽車行業(yè),而擴展到機械工業(yè)、紡織機械、農業(yè)、機器人、數(shù)控機床及傳感器等領域。其通訊的突出特點為:可靠性、靈活性、實時性,具體可以概括如下:CAN為多主方式工作,網(wǎng)絡上任一節(jié)點均可在任意時刻主動向 網(wǎng)絡上其他節(jié)點發(fā)送信息,而不分主從。在報文標志符上,CAN的節(jié)點分成不同的優(yōu)先級,可滿足不同 的實時要求。CAN采用非破壞性總線總裁技術。CAN節(jié)點只需通過對報文的標志符濾波即可實現(xiàn)點對點、一點 對多點及全局廣播等幾種方式傳輸接收數(shù)據(jù)。 CAN的直接傳輸距離的直接傳輸距離10Km(速率在(速率在5Kbps下)下) 通訊最高速率

5、為通訊最高速率為1Mbps(此時通信的最長距離為(此時通信的最長距離為40m);); CAN的節(jié)點數(shù)的節(jié)點數(shù) 主要取決于總線驅動電路,目前可達到主要取決于總線驅動電路,目前可達到110個個 CAN的每幀信息都有的每幀信息都有CRC校驗及其他校驗措施,具有校驗及其他校驗措施,具有 極好的檢錯效果。極好的檢錯效果。 CAN的通信介質為雙絞線、同軸電纜或光纖的通信介質為雙絞線、同軸電纜或光纖 CAN節(jié)點在嚴重錯誤時具有自動關閉輸出功能,以便節(jié)點在嚴重錯誤時具有自動關閉輸出功能,以便 總線上其他節(jié)點的操作不受影響。總線上其他節(jié)點的操作不受影響。 Vcan-h和和Vcan-l為為CAN總線收發(fā)器與總線之

6、間的兩接口總線收發(fā)器與總線之間的兩接口 引腳,信號是以兩線之間的引腳,信號是以兩線之間的“差分差分”電壓形式出現(xiàn)。電壓形式出現(xiàn)。 CAN就是總線型結構的一種適合工業(yè)現(xiàn)場自動控制的計算機局域網(wǎng)絡。CAN總線通訊技術是通過CANCAN總線控制器總線控制器在硬件上實現(xiàn)的。CAN總線控制器是一塊可編程的邏輯電路,片上集成CAN總線數(shù)據(jù)傳輸協(xié)議,通過硬件實現(xiàn)CAN總線編碼和解碼的功能,方便CAN總線技術在實際開發(fā)中的應用。CAN總線控制器提供與微處理器的物理線路接口,通過對它的編程,CPU可以設置它的工作方式,控制它的工作狀態(tài),進行數(shù)據(jù)的發(fā)送和接收。CAN總線控制器分為兩種類型。 一種是獨立的,片內集成

7、對CAN總線的編解碼協(xié)議,它可以與多種類型的單片機、微處理器的標準總線進行接口連接。另一種是將CAN總線控制器與微處理器作在一起,簡化了電路設計。 SJA1000是一種獨立的CAN控制器,用于一般工業(yè)環(huán)境中區(qū)域網(wǎng)絡控制。 支持CAN2.0A和CAN2.0B通訊協(xié)議; 24MMz時鐘頻率; 可與不同微處理器接口; 根據(jù)CAN協(xié)議對CAN總線上接收到的消息進行解碼,向接收緩沖發(fā)送解碼后的消息; 根據(jù)CAN協(xié)議在CAN總線上傳送消息; F2812處理器中,eCAN模塊映射到兩個不同的地址段。兩段空間各占512字節(jié)。 第一段地址空間分配給控制寄存器、狀態(tài)寄存器、局部接收屏蔽、接受濾波器、定時郵遞和消息

8、對象超時。(600060FF) 第二段地址空間映射到32個郵箱;(610061FF) 消息存儲在RAM中,CAN控制器和CPU都可以對它進行訪問。 eCAN提供32個郵箱,每個郵箱包括8字節(jié)數(shù)據(jù)區(qū)、29位標志符和幾個控制位,每個郵箱都可以配置為接收或發(fā)送郵箱。 eCAN模塊有32個不同的消息郵箱,每個消息對象可以配置成發(fā)送或接收郵箱,每個消息目標都有自己的接收濾波器. 消息郵箱用來存儲接收到的CAN消息,或存放等待發(fā)送的CAN消息。 消息郵箱映射到DSP的RAM存儲器,當消息郵箱沒有存放消息時,CPU可以將相應的RAM空間當做通用存儲器使用。每個郵箱都是由四個32位寄存器構成:MSGID:存儲

9、消息ID。MSGCTRL:定義字節(jié)數(shù)、發(fā)送極性和遠程幀;MDL:4字節(jié)數(shù)據(jù);MDH:4字節(jié)數(shù)據(jù); TPL4:0-發(fā)送優(yōu)先級; RTR:遠程發(fā)送請求位; DLC3:0-發(fā)送或接收數(shù)據(jù)的字節(jié)數(shù); 報文(Messeges)傳輸有如下4個不同類型的幀: 1.數(shù)據(jù)幀(Data Frame):數(shù)據(jù)幀將數(shù)據(jù)從發(fā)送器傳輸?shù)浇邮掌鳌?2.遠程幀(Remote Frame):總線單元發(fā)出遠程幀,請求發(fā)送具有同一標志符的數(shù)據(jù)幀。 3.錯誤幀(Error Frame):任何單元檢測到總線錯誤就發(fā)出錯誤幀; 4.過載幀(Overload Frame):過載幀用在相鄰數(shù)據(jù)幀或遠程幀之間提供附加的延時; 數(shù)據(jù)幀和遠程幀可以

10、使用標準幀及擴展幀2種格式。 郵箱使能寄存器(CANME)Mailbox Enable Register 郵箱方向寄存器(CANMD)Mailbox Direction Register 發(fā)送請求置位寄存器(CANTRS) Transmission Request Set Register 發(fā)送請求復位寄存器(發(fā)送請求復位寄存器(CANTRR) Transmission Request Reset Register 發(fā)送響應寄存器(CANTA) Transmission Acknowledge RegisterME31.0310郵箱控制使能位:郵箱控制使能位:1 CAN模塊中相應的郵箱被使能,

11、在寫標志符之前,模塊中相應的郵箱被使能,在寫標志符之前,必須將所有郵箱屏蔽。必須將所有郵箱屏蔽。0 相關郵箱被屏蔽,郵箱映射為一般存儲空間使用。相關郵箱被屏蔽,郵箱映射為一般存儲空間使用。MD31.0310郵箱方向寄存器:郵箱方向寄存器:1 配置為接收郵箱配置為接收郵箱0 配置為發(fā)送郵箱配置為發(fā)送郵箱TRS31.0310發(fā)送請求設置位:發(fā)送請求設置位:1TRS置位發(fā)送郵箱中的消息,所有循環(huán)發(fā)送的消息的置位發(fā)送郵箱中的消息,所有循環(huán)發(fā)送的消息的TRS位可以同時位可以同時置位;置位; 0 沒有操作;沒有操作;注意:注意: 當多個發(fā)送請求同時置位時,消息可以輪流發(fā)送。首先發(fā)送優(yōu)先級別當多個發(fā)送請求同

12、時置位時,消息可以輪流發(fā)送。首先發(fā)送優(yōu)先級別高的郵箱(郵箱編號最大的具有最高優(yōu)先權),也可以設置高的郵箱(郵箱編號最大的具有最高優(yōu)先權),也可以設置TPL設定設定郵箱的優(yōu)先級別。郵箱的優(yōu)先級別。TRR31.0310發(fā)送請求復位位:發(fā)送請求復位位:1TRR置位取消發(fā)送請求置位取消發(fā)送請求 0 沒有操作;沒有操作;注意:注意:通過通過CPU寫入寫入1,將,將CANTRR寄存器中的位置寄存器中的位置1;如果通過如果通過TRS已經(jīng)初始化相應位,但當前沒有進行消息處理,并且相已經(jīng)初始化相應位,但當前沒有進行消息處理,并且相應的應的TRR位置位,則消息會取消傳送。位置位,則消息會取消傳送。如果發(fā)送成功或消

13、息發(fā)送放棄,則該寄存器的相應位將復位;如果發(fā)送成功或消息發(fā)送放棄,則該寄存器的相應位將復位;TA31.0310發(fā)送響應位:發(fā)送響應位:1如果郵箱中的消息成功發(fā)送,則響應寄存器位置位;如果郵箱中的消息成功發(fā)送,則響應寄存器位置位;0 消息沒被發(fā)出;消息沒被發(fā)出;注意:注意:如果如果CANMIM寄存器中相應的中斷屏蔽位被置位,則寄存器中相應的中斷屏蔽位被置位,則GMIF0/GMIF1會被置位,表示有中斷產生;會被置位,表示有中斷產生;如果已經(jīng)產生中斷,向如果已經(jīng)產生中斷,向CANTA寄存器寫寄存器寫1,可以清除中斷。,可以清除中斷。AA31.0310發(fā)送請求復位位:發(fā)送請求復位位:1郵箱消息發(fā)送失

14、敗,相應位置位郵箱消息發(fā)送失敗,相應位置位0 消息發(fā)送成功;消息發(fā)送成功;RMP31.0310發(fā)送響應位:發(fā)送響應位:1如果郵箱中包含接收到的消息,則寄存器相應位置位;如果郵箱中包含接收到的消息,則寄存器相應位置位;0 消息內沒有消息;消息內沒有消息;注意:注意:如果接收到的消息存儲到郵箱如果接收到的消息存儲到郵箱n中,則中,則RMPn將被置位;將被置位;如果在如果在CANMIM寄存器中的相應的中斷屏蔽位被置位,則寄存器中的相應的中斷屏蔽位被置位,則CANRMP寄存器相應的位會對寄存器相應的位會對GMIF0/GMIF1置位,表示中斷產生;置位,表示中斷產生; 主控寄存器(CANMC)Maste

15、r Control Register CANMC.13(SCB):標準):標準CAN模式兼容控制位模式兼容控制位 1 選擇選擇ECAN模式模式 0 ECAN工作在標準模式,只有工作在標準模式,只有16個郵箱使用個郵箱使用CANMC.12( CCR):改變配置請求):改變配置請求 1 CPU請求向標準模式配置寄存器請求向標準模式配置寄存器CANBTC和接受屏蔽和接受屏蔽寄寄 存器存器CANGAM)寫配置信息。寫配置信息。 CANMC.10( DBO):數(shù)據(jù)字節(jié)順序):數(shù)據(jù)字節(jié)順序 選擇消息數(shù)據(jù)區(qū)字節(jié)的排列次序選擇消息數(shù)據(jù)區(qū)字節(jié)的排列次序 1 首先接收或發(fā)送數(shù)據(jù)的最低有效位首先接收或發(fā)送數(shù)據(jù)的最低

16、有效位 0 首先接收或發(fā)送數(shù)據(jù)的最高有效位首先接收或發(fā)送數(shù)據(jù)的最高有效位 位時序配置寄存器CANBCR Bit-Timing Configuration Register 錯誤和狀態(tài)寄存器CANES Error and Status Register Ecan I/O控制寄存器(CANTIOC、CANRIOC) CANTIOC.3(TXFUNC) CANRIOC.3(TRFUNC) 全局中斷標志寄存器(CANGIF0/CANGIF1) Global Interrupt Flag Registers 全局中斷屏蔽寄存器 (CANGIM) Global Interrupt Mask Registe

17、r 郵箱中斷屏蔽寄存器(CANMIM) Mailbox Interrupt Mask Register 郵箱中斷級別寄存器郵箱中斷級別寄存器(CANMIL) Mailbox Interrupt Level Register EALLOW; /*系統(tǒng)時鐘初始化*/ SysCtrlRegs.HISPCP.all = 0 x0001; SysCtrlRegs.LOSPCP.all = 0 x0002; /*使能外設ECAN模塊時鐘*/ SysCtrlRegs.PCLKCR.bit.ECANENCLK = 1; EDIS; EALLOW;ECanaShadow.CANTIOC.all = ECanaR

18、egs.CANTIOC.all;ECanaShadow.CANTIOC.bit.TXFUNC = 1;ECanaRegs.CANTIOC.all = ECanaShadow.CANRIOC.all;ECanaShadow.CANRIOC.all = ECanaRegs.CANRIOC.all;ECanaShadow.CANRIOC.bit.RXFUNC = 1;ECanaRegs.CANRIOC.all = ECanaShadow.CANRIOC.all;EDIS;注意: CANTX和CANRX引腳作為CAN的通訊接口引腳,需要通過CANTIOC和CANRIOC來設置。 如果上述引腳作為通用I

19、/O口使用,GPFMUX寄存器的相關控制腳需清零 ECAN TXIO控制寄存器含義 3腳 作為CAN模塊的功能使用,必須置1 ECAN RXIO控制寄存器含義 3腳 作為CAN模塊的功能使用,必須置1 EALLOW; GpioMuxRegs.GPFMUX.bit.XF_GPIOF14=0; GpioMuxRegs.GPFDIR.bit.GPIOF14=1; GpioMuxRegs.GPFMUX.bit.CANRXA_GPIOF7=1; GpioMuxRegs.GPFMUX.bit.CANTXA_GPIOF6=1; EDIS; EALLOW;ECanaShadow.CANMC.all = ECa

20、naRegs.CANMC.all;ECanaShadow.CANMC.bit.CCR = 1;/主控寄存器ECanaRegs.CANMC.all = ECanaShadow.CANMC.all;EDIS; do ECanaShadow.CANES.all = ECanaRegs.CANES.all; while(ECanaShadow.CANES.bit.CCE != 1);注意: CUP請求向標準模式的請求向標準模式的CANBTC寫入信息,須將寫入信息,須將CCR位置位置1,且,且CPU必須等必須等到到CANES寄存器的寄存器的CCE標志為標志為1后,才能對后,才能對CANBTC寄存器進行寫

21、入操作。寄存器進行寫入操作。 CCR = 0CPU請求正常操作。只有在配置寄存器請求正常操作。只有在配置寄存器CANBTC設置為允許值設置為允許值后才能實現(xiàn)該操作。后才能實現(xiàn)該操作。EALLOW;/*(BRPREG+1)=10 feeds a 15MHz CAN clock*/ECanaShadow.CANBTC.bit.BRP = 9; /*150/10=15*/ECanaShadow.CANBTC.bit.TSEG2 = 5;ECanaShadow.CANBTC.bit.TSEG1 = 7;ECanaRegs.CANBTC.all = ECanaShadow.CANBTC.all;ECan

22、aShadow.CANMC.all = ECanaRegs.CANMC.all;ECanaShadow.CANMC.bit.CCR = 0;ECanaRegs.CANMC.all = ECanaShadow.CANMC.all;EDIS;波特率波特率 = SYSCLK/BRPBit_time其中:其中: SYSCLK是是CAN 模塊的系統(tǒng)時鐘,與模塊的系統(tǒng)時鐘,與CPU時鐘相同;時鐘相同; BRP是是BRPreg +1的二進制數(shù)值;的二進制數(shù)值; Bit_Time = (TSEG1reg +1) +(TSEG1reg +1)+1CAN總線速度BRPreg +1CAN時鐘1Mbps1015MHz500Kbps207.5MHz250Kbps403.75MHz125Kbps801.875MHz100Kbps1001.5MHz50Kbps2000.75MHzBRP不同值的波特率(不同值的波特率( TSEG1reg=10 ,TSEG2reg =2)EALLOW;ECanaShadow.CANMC.all = ECanaRegs.CANMC.all; ECanaShadow.CANMC.bit.STM = 0; 自測試模式使能位 1 自測試模式 0 模塊正常工作模式ECanaShadow.CANMC.bit.SCM = 1; CA

溫馨提示

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

評論

0/150

提交評論