18.2 相關(guān)寄存器
18.2.1 CAN主控制器:CAN_MCR
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
- | DBF | ||||||||||||||
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RESET | - | TTCM | ABOM | AWUM | NART | RFLM | TXFP | SLEEP | INRQ |
Bit 16:DBF:調(diào)試凍結(jié)
0:在調(diào)試時(shí),CAN照常工作
1:在調(diào)試時(shí),凍結(jié)CAN的接收/發(fā)送。仍然可以正常地讀寫(xiě)和控制接收FIFO
Bit 15:bxCAN軟件復(fù)位
0:本外設(shè)正常工作
1:對(duì)bxCAN進(jìn)行強(qiáng)行復(fù)位,復(fù)位后bxCAN進(jìn)入睡眠模式。此后硬件自動(dòng)對(duì)該位清0
Bit 7:時(shí)間觸發(fā)通信模式
0:禁止時(shí)間觸發(fā)通信模式
1:允許時(shí)間觸發(fā)通信模式
Bit 6:自動(dòng)離線管理
0:離線狀態(tài)的退出過(guò)程是,軟件對(duì)INRQ位進(jìn)行置1隨后清0后,一旦硬件檢測(cè)到128次11位連續(xù)的隱性位,則退出離線狀態(tài)
1:一旦硬件檢測(cè)到128次11位連續(xù)的隱性位,則自動(dòng)退出離線狀態(tài)
Bit 5:自動(dòng)喚醒模式
0:睡眠模式通過(guò)清除CAN_MCR寄存器的SLEEP位,由軟件喚醒
1:睡眠模式通過(guò)檢測(cè)CAN報(bào)文,由硬件自動(dòng)喚醒。喚醒的同時(shí),硬件自動(dòng)對(duì)SLEEP和SLAK位清0
Bit 4:禁止報(bào)文自動(dòng)重傳
0:按照CAN標(biāo)準(zhǔn),CAN硬件在發(fā)送報(bào)文失敗時(shí)會(huì)一直自動(dòng)重傳直到發(fā)送成功
1:CAN報(bào)文只被發(fā)送1次,不管發(fā)送的結(jié)果如何
Bit 3:接收FIFO鎖定模式
0:在接收溢出時(shí)FIFO未被鎖定,當(dāng)接收FIFO的報(bào)文未被讀出,下一個(gè)收到的報(bào)文會(huì)覆蓋原有的報(bào)文
1:在接收溢出時(shí)FIFO被鎖定,當(dāng)接收FIFO的報(bào)文未被讀出,下一個(gè)收到的報(bào)文會(huì)被丟棄
Bit 2:發(fā)送FIFO優(yōu)先級(jí)
0:優(yōu)先級(jí)由報(bào)文的標(biāo)識(shí)符來(lái)決定
1:優(yōu)先級(jí)由發(fā)送請(qǐng)求的順序來(lái)決定
Bit 1:睡眠模式請(qǐng)求(在復(fù)位后該位被置1)
1:可以請(qǐng)求CAN進(jìn)入睡眠模式,一旦當(dāng)前的CAN活動(dòng)結(jié)束,CAN就進(jìn)入睡眠
0:使CAN退出睡眠模式
Bit 0:初始化請(qǐng)求
0:當(dāng)CAN在接收引腳檢測(cè)到連續(xù)的11個(gè)隱性位后,CAN就達(dá)到同步,并為接收和發(fā)送數(shù)據(jù)作好準(zhǔn)備了。為此,硬件相應(yīng)地對(duì)INAK位清0
1:一旦當(dāng)前的CAN活動(dòng)結(jié)束,CAN就進(jìn)入初始化模式。相應(yīng)地,硬件對(duì)INAK位置1
18.2.2 CAN主狀態(tài)寄存器:CAN_MSR
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
- | RX | SAMP | RXM | TXM | - | SLAKI | WKUI | ERRI | SLAK | INAK |
Bit 11:CAN接收電平,該位反映CAN接收引腳的實(shí)際電平
Bit 10:上次采樣值,CAN接收引腳的上次采樣值(對(duì)應(yīng)于當(dāng)前接收位的值)
Bit 9:接收模式,該位為1表示CAN當(dāng)前為接收器
Bit 8:發(fā)送模式,該位為1表示CAN當(dāng)前為發(fā)送器
Bit 4:睡眠確認(rèn)中斷,當(dāng)SLKIE=1,一旦CAN進(jìn)入睡眠模式硬件就對(duì)該位置1,緊接著相應(yīng)的中斷被觸發(fā)軟件可對(duì)該位清0,當(dāng)SLAK位被清0時(shí)硬件也對(duì)該位清0
Bit 3:?jiǎn)拘阎袛鄴焯?hào),當(dāng)CAN處于睡眠狀態(tài),一旦檢測(cè)到幀起始位,硬件就置該位為1
Bit 2:出錯(cuò)中斷掛號(hào),當(dāng)檢測(cè)到錯(cuò)誤時(shí),CAN_ESR寄存器的某位被置1,如果CAN_IER寄存器的相應(yīng)中斷使能位也被置1時(shí),則硬件對(duì)該位置1
Bit 1:睡眠模式確認(rèn)
0:CAN退出睡眠模式
1:CAN模塊正處于睡眠模式
Bit 0:初始化確認(rèn)
0:CAN退出初始化模式時(shí)
1:CAN模塊正處于初始化模式
18.2.3 CAN位時(shí)序寄存器:CAN_BTR
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
SILM | LBKM | - | SJW[1:0] | - | TS2[2:0] | TS1[3:0] | |||||||||
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
- | BRP[9:0] |
Bit 31:靜默模式(用于調(diào)試)
0:正常狀態(tài)
1:靜默模式
Bit 30:環(huán)回模式(用于調(diào)試)
0:禁止環(huán)回模式
1:允許環(huán)回模式
Bit 25~Bit 24:重新同步跳躍寬度,該位域定義了CAN硬件在每位中可以延長(zhǎng)或縮短多少個(gè)時(shí)間單元的上限,t RJW =t CAN ×(SJW[1:0]+1)
Bit 22~Bit 20:時(shí)間段2,該位域定義了時(shí)間段2占用了多少個(gè)時(shí)間單元,t BS2 =t CAN ×(TS2[2:0]+1)
Bit 19~Bit 16:時(shí)間段1,該位域定義了時(shí)間段1占用了多少個(gè)時(shí)間單元,t BS1 =t CAN ×(TS1[3:0]+1)
Bit 9Bit 0:波特率分頻器,該位域定義了時(shí)間單元tq的時(shí)間長(zhǎng)度,t PCLK~q =(BRP[9:0]+1)×t
18.2.4 CAN發(fā)送狀態(tài)寄存器:CAN_TSR
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
LOW2 | LOW1 | LOW0 | TME2 | TME1 | TME0 | CODE[1:0] | ABRQ2 | - | TERR2 | ALST2 | TXOK2 | RQCP2 | |||
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
ABRQ1 | - | TERR1 | ALST1 | TXOK1 | RQCP1 | ABRQ0 | - | TERR0 | ALST0 | TXOK0 | RQCP0 |
Bit 31,Bit30,Bit 29:郵箱x最低優(yōu)先級(jí)標(biāo)志
當(dāng)多個(gè)郵箱在等待發(fā)送報(bào)文,且郵箱x的優(yōu)先級(jí)最低時(shí),硬件對(duì)該位置1
Bit 28,Bit 27,Bit 26:發(fā)送郵箱x空
Bit 25~Bit 24:郵箱號(hào)
當(dāng)有至少1個(gè)發(fā)送郵箱為空時(shí),表示下一個(gè)空的發(fā)送郵箱號(hào)。
當(dāng)所有的發(fā)送郵箱都為空時(shí),表示優(yōu)先級(jí)最低的那個(gè)發(fā)送郵箱號(hào)
Bit 23,Bit 15,Bit 7:郵箱x終止發(fā)送
Bit 19,Bit 11,Bit 3:郵箱x發(fā)送失敗
Bit 18,Bit 10,Bit 2:郵箱x仲裁丟失
Bit 17,Bit 9,Bit 1:郵箱x發(fā)送成功
Bit 16,Bit 8,Bit 0:郵箱x請(qǐng)求完成
18.2.5 CAN接收FIFOx寄存器:CAN_RFxR
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
- | ROFM | FOVR | FULL | - | FMP[1:0] |
Bit 5:釋放接收FIFO,輸出郵箱軟件通過(guò)對(duì)該位置1來(lái)釋放接收FIFO的輸出郵箱。如果接收FIFO為空,那么對(duì)該位置1沒(méi)有任何效果,即只有當(dāng)FIFO中有報(bào)文時(shí)對(duì)該位置1才有意義。如果FIFO中有2個(gè)以上的報(bào)文,由于FIFO的特點(diǎn),軟件需要釋放輸出郵箱才能訪問(wèn)第2個(gè)報(bào)文,當(dāng)輸出郵箱被釋放時(shí),硬件對(duì)該位清0
Bit 4:FIFO溢出,當(dāng)FIFO0已滿(mǎn),又收到新的報(bào)文且報(bào)文符合過(guò)濾條件,硬件對(duì)該位置1,該位由軟件清0
Bit 3:FIFO滿(mǎn),當(dāng)FIFO0中有3個(gè)報(bào)文時(shí),硬件對(duì)該位置1,該位由軟件清0
Bit 1~Bit 0:FIFO報(bào)文數(shù)目,表示當(dāng)前接收FIFO0中存放的報(bào)文數(shù)目
每當(dāng)1個(gè)新的報(bào)文被存入接收FIFO0,硬件就對(duì)FMP0加1
每當(dāng)軟件對(duì)RFOM位寫(xiě)1來(lái)釋放輸出郵箱,F(xiàn)MP就被減1,直到其為0
18.2.6 CAN過(guò)濾器主控寄存器:CAN_FMR
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
- | FINIT |
Bit 0:過(guò)濾器初始化模式
0:過(guò)濾器組工作在正常模式
1:過(guò)濾器組工作在初始化模式
18.2.7 CAN過(guò)濾器模式寄存器:CAN_FM1R
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
- | FBM[27:16] | ||||||||||||||
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
FBM[15:0] |
Bit 29~Bit 0:過(guò)濾器模式
0:過(guò)濾器組x的2個(gè)32位寄存器工作在標(biāo)識(shí)符屏蔽位模式
1:過(guò)濾器組x的2個(gè)32位寄存器工作在標(biāo)識(shí)符列表模式
18.2.8 CAN過(guò)濾器位寬寄存器:CAN_FS1R
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
- | FSC[27:16] | ||||||||||||||
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
FSC[15:0] |
Bit 29~Bit 0:過(guò)濾器位寬設(shè)置
0:過(guò)濾器位寬為2個(gè)16位
1:過(guò)濾器位寬為單個(gè)32位
-
通信協(xié)議
+關(guān)注
關(guān)注
28文章
887瀏覽量
40317 -
數(shù)據(jù)傳輸
+關(guān)注
關(guān)注
9文章
1914瀏覽量
64642 -
CAN
+關(guān)注
關(guān)注
57文章
2756瀏覽量
463829
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論