<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > LPC2000系列的CAN總線(xiàn)驗收濾波器應用

LPC2000系列的CAN總線(xiàn)驗收濾波器應用

作者: 時(shí)間:2008-01-09 來(lái)源:網(wǎng)絡(luò ) 收藏
摘要 Philips套司的32位ARM微控制器為內嵌的控制器提供了全局的標識符查詢(xún)功能,能實(shí)現復雜的報文ID過(guò)濾,而且可以大大減輕微控制器的負擔。本文介紹了ARM微控制器的的特點(diǎn)、功能以及驅動(dòng)程序的開(kāi)發(fā)。
關(guān)鍵詞 ARM


CAN(Controller Area Network)。即控制器局域網(wǎng),是由德國B(niǎo)osch公司于1982年開(kāi)發(fā)和推出的最早用于汽車(chē)內部測量與執行部件之間的數據通信協(xié)議。在20多年的歷史中,CAN總線(xiàn)在許多領(lǐng)域得到了,是到目前為止唯一有國際標準的現場(chǎng)總線(xiàn)。
CAN現場(chǎng)總線(xiàn)按照國際標準化組織ISO提出的“開(kāi)放系統互聯(lián)(OSI)”參考模式,實(shí)現其中的物理層、數據鏈路層和層。CAN控制器用來(lái)實(shí)現CAN總線(xiàn)協(xié)議。CAN控制器芯片分為兩類(lèi):一類(lèi)是獨立的控制器芯片,如SJAlO00;另一類(lèi)是和微控制器做在一起,如Philips公司的LPC20032位ARM微控制器。兩類(lèi)控制器都提供了報文標識過(guò)濾的。但獨立CAN控制器的驗收濾波器只能對規律性較強的報文標識符(Identi-fier,簡(jiǎn)稱(chēng)ID)進(jìn)行篩選過(guò)濾,或是對個(gè)數較少的ID進(jìn)行任意篩選,難以實(shí)現更加復雜的任意ID篩選。Phillps公司的LPC2000系列32位ARM微控制器內嵌的驗收濾波器為CAN控制器提供了全局的標識符查詢(xún)功能,能實(shí)現復雜的報文ID過(guò)濾,而且可以大大減輕微控制器的負擔。


1 驗收濾波器的特點(diǎn)和功能
1.1 驗收濾波器的特點(diǎn)

LPC2000系列ARM微控制器是采用ARM7TDMI-S內核的32位嵌入式微處理器,內嵌2路或4路CAN控制器和驗收濾波器。驗收濾波器為CAN控制器提供全局的報文標識過(guò)濾功能。它包含一個(gè)51232(2 KB)的RAM,在這2 KB的RAM中可以設置1~5個(gè)報文標識符表,形成一個(gè)查找表LUT(Lookup Table)。整個(gè)查找表可以容納l 024個(gè)標準標識符或512個(gè)擴展標識符,或兩種混合類(lèi)型的標識符。5個(gè)可能的標識符表格包括FullCAN的標準標識符表和獨立標準標識符表、標準標識符范圍表、獨立擴展標識符表以及擴展標識符范圍表。這5個(gè)表格不是必須同時(shí)存在,可以根據需要裁減。如果一個(gè)表格的起始地址等于下一個(gè)表格的起始地址或表格終止寄存器的數值,則該表格為空,在處理中將被忽略。
1.2 驗收濾波器的功能
LPC2000系列ARM微控制器的CAN驗收濾波器有2種工作模式:一種是一般模式;另一種被稱(chēng)為“FullCAN模式”。在一般模式下,當CAN控制器的接收端收到一個(gè)完整的標識符時(shí),它將通知接收驗收濾波器。驗收濾波器響應這個(gè)信號,讀出CAN控制器編號和標識符大小(標準標識符ll位或擴展標識符29位);然后搜索LUT,查找匹配的標識符。如果找到匹配的標識符,則通知CAN控制器將接收的報文放入CAN控制器接收緩沖中;否則,放棄接收到的這一幀信息。其工作流程如圖l所示。

如果使能FullcAN模式,且CAN控制器報告產(chǎn)生的是一個(gè)標準標識符,則驗收過(guò)濾器首先查詢(xún)FullCAN標準標識符表,然后在FullCAN模式下處理接收。如果在FullCAN標準標識符表中沒(méi)有找到匹配的ID,則依次查找下一個(gè)存在的表格,直到找到匹配者或查找表結束。一旦發(fā)現匹配的ID,就將接收到的報文放入特定的報文緩沖中而不是CAN控制器接收緩沖中,這個(gè)特定的緩沖位于驗收濾波器的RAM中,而且是在LUT的最后部分。CPU可以在任何時(shí)候讀取接收到的報文。FullCAN模式的接收工作流程如圖2所示。

2 驗收濾波器的驅動(dòng)程序開(kāi)發(fā)
2.1 驗收濾波器寄存器描述
以L(fǎng)PC2292為例說(shuō)明其驗收濾波器驅動(dòng)程序的開(kāi)發(fā)。在LPC2292中內嵌2路CAN控制器,它的驗收濾波器寄存器如表1所列。注意:這里的起始地址是以驗收濾波器RAM的起始地址為基本地址的偏移。如在一般模式下,SFF_sa=0表示獨立標準幀標識符的起始地址位于0xE0038000處。
一個(gè)表格的大小由其前后2個(gè)表格起始地址寄存器的差值決定。例如,SFF_GRP_sa―SFF_sa為獨立標準幀標識符查找表格大小。若其值為O,即SFF_GRP_sa=SFF_sa,則獨立標準幀標識符查找表格大小為0,在查找時(shí)此表格將被忽略。查找表結束寄存器ENDofTable代表查找表結束地址,ENDofTable-EFF_GRP_sa為擴展幀組標識符查找表大小。驗收濾波器寄存器AFMR控制其工作模式,具體定義如表2所列。

2.2 查找表中標識符格式
①FullCAN的標準標識符表和獨立標準標識符表。要注意的是,每個(gè)FullCAN的標準標識符表和獨立標準標識符表都必須按升序排列,即標識符1大于標識符0;否則,在A(yíng)F中將引起表格錯誤而使接收過(guò)濾失敗。表格格式如下:


②標準標識符范圍表。標識符上邊界和下邊界(包括上下邊界)之間的ID為允許通過(guò)ID。表格格式如下:


③獨立擴展標識符表。1個(gè)獨立擴展標識符占1個(gè)字,而且需要按升序排列。表格格式如下:


④擴展標識符范圍表。它總是成對出現,占用2個(gè)字,因此合法的表格必須以偶數個(gè)字出現,而且必須按升序排列。表格格式如下:


2.3 驗收濾波器驅動(dòng)程序的設計
根據以上說(shuō)明,就可以設計驗收濾波器的驅動(dòng)程序了。以L(fǎng)PC2292為例來(lái)說(shuō)明如何設計驅動(dòng)程序。

假定獨立標準標識符有ID0和IDl兩個(gè),依次按升序排列,組標準幀標識符范圍為ID2~ID3(ID2ID3);獨立擴展幀標識符有ID4和1D5兩個(gè),升序排列,組擴展幀標識符范圍為ID6~ID7(ID6ID7)。限于篇幅,這里只以少量ID為例。標準和擴展的獨立ID的個(gè)數可以增減;標準和擴展的幀ID范圍組個(gè)數也可根據需要增減,比如可以有2個(gè)或2個(gè)以上的標準幀ID范圍組。(驅動(dòng)程序詳見(jiàn)本刊網(wǎng)站wwvq.mesnet.com.cn――編者注)

3 結論
LPC2000系列ARM微控制器的CAN驗收濾波器能夠有效地屏蔽總線(xiàn)上不允許通過(guò)的報文,大大減輕了CPU的負擔,在以CAN總線(xiàn)為通信網(wǎng)絡(luò )的中發(fā)揮了很大的作用。



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>