技術(shù)頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國傳動網(wǎng) > 技術(shù)頻道 > 應用方案 > LPC2000系列的CAN總線驗收濾波器應用

LPC2000系列的CAN總線驗收濾波器應用

時間:2007-12-24 09:07:00來源:caojing

導語:?本文介紹了LPC2000系列ARM微控制器的CAN驗收濾波器的特點、功能以及驅(qū)動程序的開發(fā)。
摘要: Philips公司的LPC2000系列32位ARM微控制器為內(nèi)嵌的CAN控制器提供了全局的標識符查詢功能,能實現(xiàn)復雜的報文ID過濾,而且可以大大減輕微控制器的負擔。本文介紹了LPC2000系列ARM微控制器的CAN驗收濾波器的特點、功能以及驅(qū)動程序的開發(fā)。 關鍵詞: LPC2000 ARM CAN總線 驗收濾波器 CAN(Controller Area Network)總線,即控制器局域網(wǎng)總線,是由德國Bosch公司于1982年開發(fā)和推出的最早用于汽車內(nèi)部測量與執(zhí)行部件之間的數(shù)據(jù)通信協(xié)議。在20多年的歷史中,CAN總線在許多領域得到了應用,是到目前為止唯一有國際標準的現(xiàn)場總線。 CAN現(xiàn)場總線按照國際標準化組織ISO提出的“開放系統(tǒng)互聯(lián)(OSI)”參考模式,實現(xiàn)其中的物理層、數(shù)據(jù)鏈路層和應用層。CAN控制器用來實現(xiàn)CAN總線協(xié)議。CAN控制器芯片分為兩類: 一類是獨立的控制器芯片,如SJA1000;另一類是和微控制器做在一起,如Philips公司的LPC2000系列32位ARM微控制器。兩類控制器都提供了報文標識過濾的驗收濾波器。但獨立CAN控制器的驗收濾波器只能對規(guī)律性較強的報文標識符(Identifier,簡稱ID)進行篩選過濾,或是對個數(shù)較少的ID進行任意篩選,難以實現(xiàn)更加復雜的任意ID篩選。Philips公司的LPC2000系列32位ARM微控制器內(nèi)嵌的驗收濾波器為CAN控制器提供了全局的標識符查詢功能,能實現(xiàn)復雜的報文ID過濾,而且可以大大減輕微控制器的負擔。 1 驗收濾波器的特點和功能 1.1 驗收濾波器的特點 LPC2000系列ARM微控制器是采用ARM7TDMIS內(nèi)核的32位嵌入式微處理器,內(nèi)嵌2路或4路CAN控制器和驗收濾波器。驗收濾波器為CAN控制器提供全局的報文標識過濾功能。它包含一個512×32(2 KB)的RAM,在這2 KB的RAM中可以設置1~5個報文標識符表,形成一個查找表LUT(LookUp Table)。整個查找表可以容納1 024個標準標識符或512個擴展標識符,或兩種混合類型的標識符。5個可能的標識符表格包括FullCAN的標準標識符表和獨立標準標識符表、標準標識符范圍表、獨立擴展標識符表以及擴展標識符范圍表。這5個表格不是必須同時存在,可以根據(jù)需要裁減。如果一個表格的起始地址等于下一個表格的起始地址或表格終止寄存器的數(shù)值,則該表格為空,在處理中將被忽略。 1.2 驗收濾波器的功能 LPC2000系列ARM微控制器的CAN驗收濾波器有2種工作模式: 一種是一般模式;另一種被稱為“FullCAN模式”。在一般模式下,當CAN控制器的接收端收到一個完整的標識符時,它將通知接收驗收濾波器。驗收濾波器響應這個信號,讀出CAN控制器編號和標識符大?。藴蕵俗R符11位或擴展標識符29位);然后搜索LUT,查找匹配的標識符。如果找到匹配的標識符,則通知CAN控制器將接收的報文放入CAN控制器接收緩沖中;否則,放棄接收到的這一幀信息。其工作流程如圖1所示。
如果使能FullCAN模式,且CAN控制器報告產(chǎn)生的是一個標準標識符,則驗收過濾器首先查詢FullCAN標準標識符表,然后在FullCAN模式下處理接收。如果在FullCAN標準標識符表中沒有找到匹配的ID,則依次查找下一個存在的表格,直到找到匹配者或查找表結(jié)束。一旦發(fā)現(xiàn)匹配的ID,就將接收到的報文放入特定的報文緩沖中而不是CAN控制器接收緩沖中,這個特定的緩沖位于驗收濾波器的RAM中,而且是在LUT的最后部分。CPU可以在任何時候讀取接收到的報文。FullCAN模式的接收工作流程如圖2所示。
2 驗收濾波器的驅(qū)動程序開發(fā) 2.1 驗收濾波器寄存器描述 以LPC2292為例說明其驗收濾波器驅(qū)動程序的開發(fā)。在LPC2292中內(nèi)嵌2路CAN控制器,它的驗收濾波器寄存器如表1所列。注意: 這里的起始地址是以驗收濾波器RAM的起始地址為基本地址的偏移。如在一般模式下,SFF_sa=0表示獨立標準幀標識符的起始地址位于0xE0038000處。 一個表格的大小由其前后2個表格起始地址寄存器的差值決定。例如,SFF_GRP_sa-SFF_sa為獨立標準幀標識符查找表格大小。若其值為0,即SFF_GRP_sa=SFF_sa,則獨立標準幀標識符查找表格大小為0,在查找時此表格將被忽略。查找表結(jié)束寄存器ENDofTable代表查找表結(jié)束地址,ENDofTable-EFF_GRP_sa為擴展幀組標識符查找表大小。驗收濾波器寄存器AFMR控制其工作模式,具體定義如表2所列。 2.2 查找表中標識符格式
① FullCAN的標準標識符表和獨立標準標識符表。要注意的是,每個FullCAN的標準標識符表和獨立標準標識符表都必須按升序排列,即標識符1大于標識符0;否則,在AF中將引起表格錯誤而使接收過濾失敗。表格格式如下:
② 標準標識符范圍表。標識符上邊界和下邊界(包括上下邊界)之間的ID為允許通過ID。表格格式如下:
③ 獨立擴展標識符表。1個獨立擴展標識符占1個字,而且需要按升序排列。表格格式如下:
④ 擴展標識符范圍表。它總是成對出現(xiàn),占用2個字,因此合法的表格必須以偶數(shù)個字出現(xiàn),而且必須按升序排列。表格格式如下:
2.3 驗收濾波器驅(qū)動程序的設計 根據(jù)以上說明,就可以設計驗收濾波器的驅(qū)動程序了。以LPC2292為例來說明如何設計驅(qū)動程序。 假定獨立標準標識符有ID0和ID1兩個,依次按升序排列,組標準幀標識符范圍為ID2~ID3(ID23 結(jié)論 LPC2000系列ARM微控制器的CAN驗收濾波器能夠有效地屏蔽總線上不允許通過的報文,大大減輕了CPU的負擔,在以CAN總線為通信網(wǎng)絡的應用中發(fā)揮了很大的作用。

標簽:

點贊

分享到:

上一篇:加拿大DALSA Coreco集團機器...

下一篇:微能WIN-V63矢量控制變頻器在...

中國傳動網(wǎng)版權(quán)與免責聲明:凡本網(wǎng)注明[來源:中國傳動網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國傳動網(wǎng)(surachana.com)獨家所有。如需轉(zhuǎn)載請與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個人轉(zhuǎn)載使用時須注明來源“中國傳動網(wǎng)”,違反者本網(wǎng)將追究其法律責任。

本網(wǎng)轉(zhuǎn)載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請保留稿件來源及作者,禁止擅自篡改,違者自負版權(quán)法律責任。

相關資訊

網(wǎng)站簡介|會員服務|聯(lián)系方式|幫助信息|版權(quán)信息|網(wǎng)站地圖|友情鏈接|法律支持|意見反饋|sitemap

傳動網(wǎng)-工業(yè)自動化與智能制造的全媒體“互聯(lián)網(wǎng)+”創(chuàng)新服務平臺

網(wǎng)站客服服務咨詢采購咨詢媒體合作

Chuandong.com Copyright ?2005 - 2025 ,All Rights Reserved 深圳市奧美大唐廣告有限公司 版權(quán)所有
粵ICP備 14004826號 | 營業(yè)執(zhí)照證書 | 不良信息舉報中心 | 粵公網(wǎng)安備 44030402000946號