<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > STM32的CAN總線的標(biāo)識(shí)符過濾器組使用注意事項(xiàng)

          STM32的CAN總線的標(biāo)識(shí)符過濾器組使用注意事項(xiàng)

          作者: 時(shí)間:2016-11-09 來源:網(wǎng)絡(luò) 收藏
          CAN總線標(biāo)識(shí)符過濾器很重要。

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

          2 什么是標(biāo)識(shí)符?
          標(biāo)識(shí)符主要包括如下,也可以簡單的理解僅包含ID號(hào),但是在這里下面這些都是要包含的。


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




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


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


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

          本文引用地址:http://www.ex-cimer.com/article/201611/317908.htm

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


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



          評(píng)論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();