CAN FD幀結構
CAN FD節點可以正常收、發CAN報文,但CAN節點不能正確收、發CAN FD報文,因為其幀格式不一致。
與CAN一樣,CAN FD一共具有:幀起始,仲裁段,控制段,數據段,CRC段,ACK段和幀結束,7部分組成。
2.1、幀起始
CAN與CANFD使用相同的SOF標志位來標志報文的起始。幀起始由1個顯性位構成,標志著報文的開始,并在總線上起著同步作用。
2.2、仲裁段
與CAN不同,CAN FD取消了對遠程幀的支持,用RRS位替換了RTR位,為常顯性。IDE用于區分標準幀和擴展幀。
標準幀仲裁段由11位ID和r1位(顯性)、IDE(顯性)組成,總共13位。擴展幀仲裁段由29位ID和SRR(隱性)、IDE(隱性)、r1位(顯性)組成,總共32位。
SRR:替代CAN標準幀中的RTR位;
IDE:擴展幀標志位;
r1:保留位,為顯性。
2.3、控制段
CAN FD與CAN有著相同的IDE、res和DLC位,同時增加了FDF、BRS、ESI三個bit位。
FDF 位(Flexible Data Rate Format):原 CAN 數據幀中的保留位 r。表示 CAN 報文還是 CAN-FD 報文,FDF
位常為隱性(1),表示 CAN FD 報文;
BRS 位( Bit Rate Switch):表示位速率轉換,當 BRS 為顯性位(0)時數據段的位速率與仲裁段的位速率一致(恒定速率),當 BRS
為隱性位(1)時速率可變(即 BSR 到 CRC 使用轉換速率傳輸);
ESI 位(Error State Indicator):發送節點錯誤狀態指示,主動錯誤時發送顯性位(0),被動錯誤時發送隱性位(1)。
2.4、數據段
CAN FD兼容CAN的數據格式,同時最大還能支持:12、16、 20、 24、 32、 48和64byte。
像在傳統CAN中一樣,CAN FD DLC是4位,表示幀中數據字節的數量。為了維持4位DLC,CAN
FD使用從9到15的其余7個值來表示所使用的數據字節數(12、16、20、24、32、48、64)。
2.5、CRC段
傳統CAN中的循環冗余校驗(CRC)為15位,而在CAN
FD中由固定填充位FSB(6/7位)、填充位計數(4位)、CRC(17/21位)和CRC界定符(1位)組成,總共28或33位組成。在傳統CAN中,CRC中可以包含0到3個填充位,而在CAN
FD中,總是有4個固定填充位以提高通信可靠性。
固定填充位(FSB):CRC段中每4個位固定填充一個與上位相反的位。
采用CRC17時,FSB為6個位;
采用CRC21時,FSB為7個位。
填充位計數:由填充位計數(3位)和奇偶校驗位(1位)組成。
CRC:
報文長度小于16時,采用CRC17,17位組成;
報文長度大于16時,采用CRC21,21位組成。
CRC界定符:固定為隱性位;從該位采樣后,切換為仲裁域波特率。
2.6、ACK段
ACK緊跟著CRC結束標識位。不同的是,CAN FD支持2bits的ACK的識別,由ACK位和ACK界定符位組成。
ACK:接收節點應答位,接收節點應應答顯性位;
ACK界定符,固定為隱性。
2.7、幀結束
與CAN一樣,CAN FD的幀結尾也為連續7位的隱性位。
-
汽車電子
+關注
關注
3026文章
7941瀏覽量
166907 -
CAN
+關注
關注
57文章
2744瀏覽量
463615 -
總線
+關注
關注
10文章
2878瀏覽量
88051
發布評論請先 登錄
相關推薦
評論