專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

LPC1778 CAN ID過濾設置需注意的地方

作者:未知   來源:本站原創(chuàng)   點擊數:  更新時間:2014年08月13日   【字體:

1.驗收濾波器模式
    濾波設置前設置關閉模式,設置完成后設置為工作模式。


   Efcan:擴展幀ID時,沒有FULLCAN模式,此位置0。


2.區(qū)域寄存器設置

        只有在驗收濾波器關閉模式和旁路模式中才能對所有區(qū)配置寄存器進行寫訪問。允許在所
有的驗收濾波器模式下對寄存器進行讀訪問。

         ID 查找表 RAM 只能進行字訪問,并且只能在驗收濾波器關閉或旁路模式下進行寫訪問。但讀訪問可以在所有的驗收濾波器模式下進行。 


        寄存器的低兩位未用,但不需將設置值左移后寫入。


 

3.不同CAN通道的區(qū)分
        以高三位數值確定。

16.15 配置和搜索算法
CAN 標識符查找表存儲器可以存放標準和擴展 CAN 幀格式的明確標識符和 CAN 標識符組。它們組成一個排好序的列表和表格,在每個區(qū)中源 CAN 通道(SCC)和 CAN 標識符都按照升序來排列。
SCC 值和 CAN 控制器-x 相等,即,SCC=0 和 CAN1 匹配,SCC=1 與 CAN2 匹配。
每個 CAN 標識符連接到一個 ID 索引編號。在 CAN 標識符匹配時,匹配的 ID 索引存放在
相應 CAN 控制器的幀狀態(tài)寄存器(CANxRFS)中的標識符索引中。
16.15.1 驗收濾波器搜索算法
驗收濾波器的標識符篩選過程按照下列順序來啟動:
a)FullCAN(標準幀格式)標識符區(qū)。
b)獨立的標準幀格式標識符區(qū)。
c)標準幀組格式標識符區(qū)。
d)獨立的擴展幀格式標識符區(qū)。
e)擴展幀組格式標識符區(qū)。
注:只有激活的區(qū)才能參與篩選過程。
當多個區(qū)中定義了相同幀格式的同一個報文標識符時,第一次匹配就會終止這個標識符的
篩選過程。

 



4.舉例

 
LPC_CANAF->AFMR = 0x1;                                             /* 設置為關閉模式               */
  
LPC_CANAF->SFF_sa=0x00;              // 明確標準幀格式起始地址0x00
LPC_CANAF->SFF_GRP_sa=0x00;          // 標準幀組格式起始地址0x00
LPC_CANAF->EFF_sa=0x20;           // 明確擴展幀組格式起始地址0x20
LPC_CANAF->EFF_GRP_sa=0x34;       // 擴展幀組格式起始地址0x34
LPC_CANAF->ENDofTable=0x44;       // AF表結束地址0x44
regaddr = 0x40038020;
                RGE(regaddr) =(0x00000060);//
    

regaddr = 0x40038034;

RGE(regaddr) =(0x00000066|(1<<29));//

regaddr = 0x40038038;

RGE(regaddr) =(0x00020066|(1<<29));//
 
              LPC_CAN2->CMR |= (1 << 1) | (1 << 2) | (1 << 3);
              LPC_CAN2->IER |= (1<<0);
              LPC_CAN2->GSR |= (0<<0);
             i = LPC_CAN2->ICR;

            //LPC_CANAF->AFMR = 0x02;                        /* 設置為旁路模式      */
           LPC_CANAF->AFMR = 0;     /* 設置正常工作模式   */ 
關閉窗口

相關文章