新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > eCAN總線模塊的初始化步驟

        eCAN總線模塊的初始化步驟

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

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

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

        ◇寫CANTIOC.3:0=0x08;   

        ◇寫CANRIOC.3:0=Ox08。

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

        (4)使用適當的值對CANBTC進行配置,確認TSEG1和TSEG2不等于0。如果兩個值等于0,則CAN模塊不能退出初始化模式。

        (5)對于標準CAN模式(SCC),現在對接收屏蔽寄存器編程。如寫LAM(3)=0x3C0000。

        (6)對主控制寄存器(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寄存器的所有位清零進行初始化。

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



        評論


        技術專區

        關閉
        主站蜘蛛池模板: 绍兴县| 宣威市| 汕尾市| 民勤县| 新野县| 辽源市| 金乡县| 井陉县| 通河县| 芜湖市| 婺源县| 岳阳市| 陆良县| 浦县| 红安县| 石渠县| 铜鼓县| 凉城县| 平遥县| 加查县| 靖远县| 瑞丽市| 天峨县| 蕉岭县| 宁海县| 邢台县| 江孜县| 龙南县| 黄骅市| 谢通门县| 清流县| 台江县| 寿阳县| 闽清县| 潞西市| 乐都县| 凉城县| 青浦区| 胶州市| 兖州市| 沐川县|