<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è) > 嵌入式系統 > 設計應用 > STM32的CAN總線(xiàn)的標識符過(guò)濾器組使用注意事項

STM32的CAN總線(xiàn)的標識符過(guò)濾器組使用注意事項

作者: 時(shí)間:2016-11-09 來(lái)源:網(wǎng)絡(luò ) 收藏
CAN總線(xiàn)標識符過(guò)濾器很重要。

1. 標識符過(guò)濾器是用于接收的,發(fā)送的時(shí)候無(wú)需設置過(guò)濾器,這點(diǎn)一定要整明白。
根據發(fā)送端發(fā)送來(lái)的幀數據,通過(guò)標識符過(guò)濾器就可以設置僅接收需要接收的幀數據有效降低CPU多余的處理時(shí)間。

2 什么是標識符?
標識符主要包括如下,也可以簡(jiǎn)單的理解僅包含ID號,但是在這里下面這些都是要包含的。


比如:數據幀和遙控幀,標識符就包含在其中,所以發(fā)送端發(fā)幀數據給接收端后,接收端就可以通過(guò)硬件標識符過(guò)濾器進(jìn)行篩選,節省了CPU時(shí)間:




3. 下面就是最重要的,STM32的CAN總線(xiàn)標識符濾波器組包含兩種實(shí)現方法:
屏蔽位模式和標識符列表模式,這兩種方式怎么理解呢,重點(diǎn)看下面的截圖:


書(shū)面上解釋屏蔽位模式和標識符列表模式的區別
屏蔽位模式
在屏蔽位模式下,標識符寄存器和屏蔽寄存器一起,指定報文標識符的任何一位,應該按照“必須匹配”或“不用關(guān)心”處理。
標識符列表模式
在標識符列表模式下,屏蔽寄存器也被當作標識符寄存器用。因此,不是采用一個(gè)標識符加一個(gè)屏蔽位的方式,而是使用2個(gè)標識符寄存器。接收報文標識符的每一位都必須跟過(guò)濾器標識符相同。
===================================
標識符的列表模式比較好理解,就是指的所有的過(guò)濾器寄存器位全部用于過(guò)濾,簡(jiǎn)單的說(shuō)就是發(fā)送端發(fā)送的標識符所有的位必須跟接收端的濾波器寄存器定義一樣。有一個(gè)位定義不一樣,拒收此消息。


比STM32F103有14個(gè)過(guò)濾器組,如果采用兩個(gè)16位的過(guò)濾器形式,那么就可以固定識別出14 * 4 = 56個(gè)不同的標識符,實(shí)際使用中也夠用了。為什么是乘以4,注意看上面的截圖,4個(gè)16位過(guò)濾器--標識符列表
===================================

本文引用地址:http://dyxdggzs.com/article/201611/317908.htm

屏蔽位模式要稍麻煩一些,我們以2個(gè)16位過(guò)濾器---標識符屏蔽為例進(jìn)行說(shuō)明:


將過(guò)濾器寄存器分成兩個(gè)部分,標識符寄存器和屏蔽位寄存器。
上面截圖中ID部分就是標識符寄存器,屏蔽部分就是屏蔽位寄存器。
比如
ID : 0xFED0;
屏蔽:0xFFE0;
那就是表示,接收端接受幀數據時(shí),前11位的數值必須跟ID中定義的前11位一致,后面的5位數據忽略。
不管是什么值都可以。也即是說(shuō)屏蔽位中的數值:
0: 不關(guān)心,該位不用于比較;
1: 必須匹配,到來(lái)的標識符位必須與濾波器對應的標識符寄存器位相一致。
基于此原因:
為了過(guò)濾出一組標識符,應該設置過(guò)濾器組工作在屏蔽位模式。
為了過(guò)濾出一個(gè)標識符,應該設置過(guò)濾器組工作在標識符列表模式。



評論


技術(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>