新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > eCAN總線模塊的初始化步驟

eCAN總線模塊的初始化步驟

作者: 時(shí)間:2011-07-12 來(lái)源:網(wǎng)絡(luò) 收藏
  在CAN模塊正常操作及初始化之前,必須使能模塊的時(shí)鐘??梢酝ㄟ^寄存器PCLKCR的14位使能/屏蔽CAN模塊的時(shí)鐘。在不使用CAN模塊時(shí),通過該位屏蔽CAN的時(shí)鐘可以降低功耗。該位不能控制CAN模塊的低功耗模式,同其他外設(shè)一樣,復(fù)位后CAN模塊的時(shí)鐘被屏蔽。模塊時(shí)鐘的配置一般在處理器初始化中完成,eCAN模塊的如下。

(1)使能CAN模塊的時(shí)鐘。

(2)設(shè)置CANTX和CANRX作為CAN通信引腳:   

◇寫CANTIOC.3:0=0x08;   

◇寫CANRIOC.3:0=Ox08。

(3)復(fù)位后,OCR(CANMC.12)位和CCE(CANES.4)位置1,允許用戶配置位時(shí)間配置寄存器(CANBTC)。如果CCE位置1(CANES.4=1),進(jìn)行下一步;否則將CCR位置1(CAN-MC,12=1),然后等待直到CCE置1(CANES.4=1)。

(4)使用適當(dāng)?shù)闹祵?duì)CANBTC進(jìn)行配置,確認(rèn)TSEG1和TSEG2不等于0。如果兩個(gè)值等于0,則CAN模塊不能退出初始化模式。

(5)對(duì)于標(biāo)準(zhǔn)CAN模式(SCC),現(xiàn)在對(duì)接收屏蔽寄存器編程。如寫LAM(3)=0x3C0000。

(6)對(duì)主控制寄存器(CANMC)編程,具體如下:   

◇清除OCR(CANMC.12)=0   

◇清除PDR(CANMC.11)=0   

◇清除DBO(CANMC.10)=0   

◇清除WUBA(CANMC.9)=0   

◇清除CDR(CANMC.8)=0   

◇清除ABO(CANMC.7)=0   

◇清除STM(CANMC.6)=0   

◇清除SRES(CANMC.5)=0   

◇清除MBNR(CANMC.4~0)=0   

(7)將MSGCTRLn寄存器的所有位清零進(jìn)行初始化。

(8)檢查CCE是否被清零(CANES.4=0),如果被清零則表明CAN模塊已經(jīng)配置完成。



關(guān)鍵詞: eCAN總線 初始化步驟

評(píng)論


技術(shù)專區(qū)

關(guān)閉