第4章2(CAN控制器1,2014)_第1頁
第4章2(CAN控制器1,2014)_第2頁
第4章2(CAN控制器1,2014)_第3頁
第4章2(CAN控制器1,2014)_第4頁
第4章2(CAN控制器1,2014)_第5頁
已閱讀5頁,還剩59頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、4.2 控制芯片控制芯片SJA10004.2.1 簡介 SJA1000是用于汽車和一般工業(yè)環(huán)境的獨(dú)立CAN總線控制器,它具有完成CAN高性能通信協(xié)議所要求的全部必要特性。 SJA1000可完成物理層和數(shù)據(jù)鏈路層的所有功能。 其硬件與軟件設(shè)計(jì)和PCA82C200的基本CAN模式(BasicCAN)兼容,同時(shí)它新增加的增強(qiáng)CAN模式(PeliCAN)可以支持CAN2.0A及CAN2.0B協(xié)議。 1.SJAl000的特性 和它的前款芯片PCA82C200獨(dú)立CAN控制器引腳兼容、電氣兼容、軟件兼容; BasicCAN模式(與PCA82C200兼容); 擴(kuò)展的功能PeliCAN模式(增強(qiáng)CAN模式):

2、 (a)可讀/寫訪問的錯(cuò)誤計(jì)數(shù)器, (b)可編程的錯(cuò)誤報(bào)警限制, (c)最近一次錯(cuò)誤代碼寄存, (d)對(duì)每一個(gè)CAN總線錯(cuò)誤的中斷, (e)具體控制位控制的仲裁丟失中斷, (f)單次發(fā)送無重發(fā), (g)只聽模式無確認(rèn)無活動(dòng)的出錯(cuò)標(biāo)志, (h)支持熱插拔軟件位速率檢測, (i)驗(yàn)收濾波器擴(kuò)展4B代碼4B屏蔽, (j)自身信息接收自接收請(qǐng)求; 擴(kuò)展的接收緩沖器64B先進(jìn)先出FIFO; 和CAN 2.0B協(xié)議兼容; 同時(shí)支持11位和29位識(shí)別碼; 傳輸速率可達(dá)1Mbs; 24MHz時(shí)鐘頻率; 對(duì)不同微處理器的接口; 可編程的CAN輸出驅(qū)動(dòng)器配置。 2SJAl000的內(nèi)部結(jié)構(gòu)及功能的內(nèi)部結(jié)構(gòu)及功能 S

3、JAl000的內(nèi)部結(jié)構(gòu)及對(duì)外接口的原理如圖4.3所示。 (1)接口管理邏輯IML 接口管理邏輯和CPU連接,解釋來自CPU的命令,控制CAN寄存器的尋址,向主控制器提供中斷信息和狀態(tài)信息。 (2)發(fā)送緩沖器TXB 發(fā)送緩沖器是CPU和BSP (位流處理器)之間的接口,能夠存儲(chǔ)發(fā)送到CAN網(wǎng)絡(luò)上的完整信息。緩沖器長13B,由CPU寫入,BSP讀出。 (3)接收緩沖器RXB RXFIFO 接收緩沖器是驗(yàn)收濾波器和CPU之間的接口,用來儲(chǔ)存從CAN總線上發(fā)送和接收的信息。接收緩沖器(RXB 13B)作為接收FIFO(RXFIFO 64B)的一個(gè)窗口,可被CPU訪問。 CPU在FIFO支持下,可在處理

4、信息的時(shí)候接收其他信息。 (4)驗(yàn)收濾波器ACF 驗(yàn)收濾波器把它其中的數(shù)據(jù)和接收的識(shí)別碼的內(nèi)容相比較,以決定是否接收信息。 (5)位流處理器BSP 位流處理器是一個(gè)在發(fā)送緩沖器,是RXFIFO和CAN總線之間控制數(shù)據(jù)流的程序裝置。 它還在CAN總線上執(zhí)行錯(cuò)誤檢測、仲裁、填充和錯(cuò)誤處理。 (6)位時(shí)序邏輯BTL 位時(shí)序邏輯監(jiān)視串行的CAN總線和處理與總線有關(guān)的位時(shí)序。 它在信息開頭為“隱性顯性”的總線傳輸時(shí)同步同步CAN總線位流(硬同步),接收信息時(shí)再次同步下一次傳送 (軟同步)。 還提供可編程的時(shí)間段來補(bǔ)償傳播延遲時(shí)間、相位轉(zhuǎn)換、定義采樣點(diǎn)和一位時(shí)間內(nèi)的采樣次數(shù)。 (7)錯(cuò)誤管理邏輯EML E

5、ML負(fù)責(zé)傳送層模塊的錯(cuò)誤管制。它接收位流處理器BSP的出錯(cuò)報(bào)告,通知BSP和接口管理邏輯IML進(jìn)行錯(cuò)誤統(tǒng)計(jì)。 3SJAl000的引腳及封裝 4.2 控制芯片SJA10004.2.2 Basic CAN模式 Basic CAN模式是和PCA82C200兼容的模式。 SJA1000內(nèi)部的地址區(qū)包括控制段和信息緩沖區(qū)。 在初始化載入時(shí),微控制器通過對(duì)控制段的編程以配置通信參數(shù)。 發(fā)送信息應(yīng)寫入發(fā)送緩沖器。 成功接收信息后,微控制器從接收緩沖器中讀取接收信息,然后釋放空間,供之后的接收使用。 微控制器和SJA1000之間狀態(tài)、控制和命令信號(hào)的交換都是在控制段中完成的。 初始載入后,寄存器的驗(yàn)收代碼、驗(yàn)

6、收屏蔽、總線定時(shí)寄存器0和1以及輸出控制器的內(nèi)容就不能改變了。只有控制寄存器的復(fù)位位被置高時(shí),這些寄存器又可被訪問。 在復(fù)位模式和工作模式中訪問寄存器是不同的。 當(dāng)硬件復(fù)位或控制器掉線時(shí)會(huì)自動(dòng)進(jìn)入復(fù)位模式。 工作模式是通過置位控制寄存器的復(fù)位請(qǐng)求位激活的。 對(duì)Basic CAN模式,只作上面這些簡單的介紹,下面主要介紹比較常用的SJA1000的Peri CAN模式。 Basic CAN模式下的SJA1000主要寄存器和PeliCAN模式下的寄存器工作原理相同。4.2 獨(dú)立的控制芯片SJA1000及其使用4.2.3 Peli CAN模式 1. Peli CAN地址列表 因?yàn)镃AN控制器可以工作于

7、工作/復(fù)位兩種不同的模式,所以必須區(qū)分各個(gè)不同的CAN控制寄存器在工作及復(fù)位兩種不同模式下的定義。 Peli CAN模式下的SJA1000內(nèi)部各寄存器的地址及功能如下表所示(先瀏覽,用到時(shí)具體解釋)。(CAN地址9)(CAN地址16)CAN地址27,28(CAN地址31) 2. Peli CAN復(fù)位模式配置(控制段) 檢測到模式寄存器(前表中CAN地址0)的MOD.0=1(復(fù)位模式位置位)后,CAN控制器中止當(dāng)前發(fā)送/接收信息而進(jìn)入復(fù)位模式。 復(fù)位模式位由“1”變“0”時(shí),CAN控制器回到模式寄存器所定義的工作模式。 CAN控制器在復(fù)位模式時(shí)配置的主要寄存器如表4.4所示(瀏覽,表后祥講重點(diǎn))

8、。(具體解釋見后面有關(guān)寄存器的說明) 其中的主要寄存器說明如下。 3. 模式寄存器MOD 模式寄存器(CAN地址0)的內(nèi)容是用來改變CAN控制器的行為的。 CPU把該寄存器作為讀/寫寄存器,其各位的功能如表4.5所示,可以設(shè)置這些位,保留位讀取時(shí)的值為邏輯0。自學(xué) 4. 命令寄存器CMR 命令寄存器(CAN地址1)中的命令位用于初始化CAN控制器傳輸層上的動(dòng)作。這個(gè)寄存器是只寫的(所有位的讀出值都是邏輯1)。因處理的需要,兩條命令之間至少有一個(gè)內(nèi)部時(shí)鐘周期(內(nèi)部時(shí)鐘周期的頻率是外部振蕩器的一半)。命令寄存器各位的功能如表4.6所示。SR.5(詳見狀態(tài)寄存器的介紹)自學(xué)CMR.3 5狀態(tài)寄存器S

9、R 狀態(tài)寄存器(CAN地址2)反映CAN控制器的狀態(tài),其各位功能如表4.7所示。 狀態(tài)寄存器是只讀的。自學(xué) 6中斷寄存器IR 中斷寄存器(CAN地址3)允許中斷源的識(shí)別,各位功能如下表所示。當(dāng)該寄存器有一位以上置位時(shí),CAN中斷將反映到CPU。 中斷寄存器是只讀的,CPU讀此寄存器后,除了接收中斷外的所有位都被復(fù)位。 7中斷使能寄存器IER(CAN地址4) 該寄存器是可讀/寫的。 能使不同類型的中斷源是否使能。 各位功能如表4.9所示。 8.仲裁丟失捕捉寄存器ALC(CAN地址11) 該寄存器包括了仲裁丟失的位置的信息,對(duì)CPU來說是只讀寄存器,讀其到的留位的值為0。仲裁丟失捕捉寄存器的位分配

10、如下: BIT7 BIT6 BIT5 BIT4 BIT3 BIT2 BIT1 BIT0 保留 保留 保留 ALC.4 ALC.3 ALC.2 ALC.1 ALC.0 仲裁丟失具體發(fā)生在第幾位由ALC.4 ALC.0指示:00000(十進(jìn)制01)表示ID.28丟失,詳細(xì)情況由下圖說明。ALC.4ALC.0的值(十進(jìn)制):ALC.4ALC.0=01000(十進(jìn)制:08) 仲裁丟失時(shí),會(huì)產(chǎn)生相應(yīng)的仲裁丟失中斷(中斷寄存器的IR.6(中斷允許時(shí),即中斷使能寄存器的IER.6=1時(shí)))。 同時(shí),位流處理器的當(dāng)前位位置被捕捉送入仲裁丟失捕捉寄存器。寄存器中的內(nèi)容一直保持到用戶通過軟件讀這個(gè)值。讀操作后,捕

11、捉機(jī)制又被激活了。 讀中斷寄存器時(shí),中斷寄存器中相應(yīng)的中斷標(biāo)志位被清除。直到仲裁丟失捕捉寄存器被讀一次之后,新的仲裁丟失中斷才有效。 9. 錯(cuò)誤代碼捕捉寄存器(ALC) CAN地址12,這個(gè)寄存器包含了總線錯(cuò)誤的類型和位置信息,如下表所示。位符 號(hào)名 稱值功 能ECC.71ERRC1錯(cuò)誤代碼1-ECC.61ERRC0錯(cuò)誤代碼0-ECC.5DIR方向1接收時(shí)發(fā)生錯(cuò)0發(fā)送時(shí)發(fā)生錯(cuò)ECC.42SEG4段4-ECC.32SEG4段4-ECC.22SEG4段4-ECC.12SEG4段4-ECC.02SEG4段4- 上表中ECC.7和ECC.6功能的解釋見下表。 前表中ECC.4ECC.0功能的解釋見下表

12、。ECC.7ECC.6功 能00位錯(cuò)誤01格式錯(cuò)誤10填充錯(cuò)誤1l其他錯(cuò)誤ECC.4ECC.3ECC.2ECC.1ECC.0功 能00011幀開始00010ID.28ID.2l00110ID.20ID.1800l00SRTR位00l0lIDE位001llID.17ID.1301l11ID.12ID.501011ID.4ID.001101保留位l01001保留位00l01l數(shù)據(jù)長度碼010l0數(shù)據(jù)區(qū)ECC.4ECC.3ECC.2ECC.1ECC.0功 能01000CRC序列11000CRC界定符l1001應(yīng)答間隙110ll應(yīng)答界定符l1010幀結(jié)束100l0間歇10001活動(dòng)錯(cuò)誤標(biāo)志l0l10消

13、極錯(cuò)誤標(biāo)志10011顯位容差10l1l錯(cuò)誤界定符11100過載標(biāo)志 總線發(fā)生錯(cuò)誤時(shí)被迫產(chǎn)生相應(yīng)的錯(cuò)誤中斷IR.7(中斷允許時(shí)),同時(shí)位流處理器的當(dāng)前位置被捕捉送入錯(cuò)誤代碼捕捉寄存器,其內(nèi)容直到用戶通過軟件讀出時(shí)才發(fā)生變化,讀出后捕捉機(jī)制又被激活。訪問中斷寄存器(詳見表4.8)期間,中斷寄存器中相應(yīng)的中斷標(biāo)志位被清除,新的中斷直到捕捉寄存器被讀出一次才有效。 10. 發(fā)送緩沖器 發(fā)送緩沖器分為描述符區(qū)和數(shù)據(jù)區(qū)。描述符區(qū)的第一個(gè)字節(jié)是幀信息,它說明了幀格式(標(biāo)準(zhǔn)幀SFF或擴(kuò)展幀EFF)、遠(yuǎn)程或數(shù)據(jù)幀及數(shù)據(jù)長度。SFF有2個(gè)字節(jié)的識(shí)別碼,EFF有4個(gè)字節(jié)的識(shí)別碼。數(shù)據(jù)區(qū)最長為8個(gè)數(shù)據(jù)字節(jié),發(fā)送緩沖器

14、長13個(gè)字節(jié),CAN地址為1628。發(fā)送緩沖器列表如圖3.6所示。 TX幀信息字節(jié)(CAN地址16)配置如下表所示: 注: 1幀格式,1=EFF(擴(kuò)展幀),0=SFF(標(biāo)準(zhǔn)幀)。 2遠(yuǎn)程發(fā)送請(qǐng)求位,1=遠(yuǎn)程幀,0=數(shù)據(jù)幀。 3不影響。推薦在使用自接收設(shè)備(自檢測)時(shí)和接收緩沖器(0)兼容。 4數(shù)據(jù)長度碼位,編碼范圍為18。BIT7BIT6BIT5BIT4BIT3BIT2BIT1BIT0FF1RTR2X3X3DLC.34DLC.24DLC.14DLC.04 TX識(shí)別碼如表334所示。CAN地址幀格式位BIT7BIT6BIT5BIT4BIT3BIT2BITlB1T017SFFID.28ID.27I

15、D.26ID.25ID.24ID.23ID.22ID.21EFFID.28ID.27ID.26ID.25ID.24ID.23ID.22ID.2l18SFFID.20ID.19ID.18XlX2X2X2X2EFFID.20ID.19ID.18ID.17ID.16ID.15ID.14ID.1319SFF未使用(數(shù)據(jù)字節(jié)1)EFFID.12ID.1lID.10ID.9ID.8ID.7ID.6ID.520SFF未使用(數(shù)據(jù)字節(jié)2)EFFID.4ID.3ID.2ID.1ID.0X1X2X2注:1不影響。推薦在使用自接收設(shè)備(自檢測)時(shí)和接收緩沖器(RTR)兼容。 2不影響。推薦在使用自接收設(shè)備(自檢測)時(shí)和接收緩沖器(0)兼容。 11. 接收緩沖器RXB 接收緩沖器與前面的發(fā)送緩沖器很相似,每條信息也都分為描述符區(qū)和數(shù)據(jù)區(qū)。 接收緩沖器(13B)是RXFIFO(64B)的可訪問部分,也位于CAN地址的1628(對(duì)這些CAN地址,讀操作訪問的是接收緩沖器

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論