基于Sycconfig配置CAN通信(TMS320F280039)
TMS320F280039共有一個MCAN模塊和一個CAN模塊,本文介紹CAN模塊,CAN模塊結(jié)構(gòu)框圖如下圖所示:

配置步驟如下:
一.配置CAN通道引腳

二.配置CAN通信速率
TMS320F280039的主頻為120MHz,輸入CAN模塊的時鐘頻率為120MHz。這里將CAN速率配置為500kbit/s,采樣點配置為80%。Baud Rate = 1 / bit time,其中bit time如下圖所示:

由上圖可知,bit time由Sync_Seg(同步段) + Prop_Seg(傳播段) + Phase_Seg1(相位緩沖段1) + Phase_Seg2(相位緩沖段2)共計4個段組成。具體配置為:將預分頻器設(shè)置為12分頻,同步段Sync_Seg默認為1,傳播段默認為2,不可更改,故Bit Time segment before sample point (Tq)設(shè)置為13,Bit Time segment after sample point(Tq)設(shè)置為4,則波特率為:(120M / 12) / (1 + 2 + 13 + 14) = 500k。在Sysconfig中配置如下圖所示:

三.Bus-Off機制以及進入Bus-Off狀態(tài)獲取
當發(fā)生BusOff故障時,產(chǎn)生CANA interrupt 0中斷,讀取CAN_ES寄存器(Error and Status Register),并對返回的標志CAN_clearGlobalInterruptStatus()清除全局中斷標志寄存器以及調(diào)用Interrupt_clearACKGroup()清楚INTERRUPT_ACK_GROUP9標志位。中斷配置在Sysconfig中如下圖所示:
