在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

CAN總線通信報(bào)文驗(yàn)收濾波、位定時(shí)與同步詳解

h1654155282.3538 ? 來(lái)源:網(wǎng)絡(luò)整理 ? 2018-05-07 16:16 ? 次閱讀

CAN(Controller Area NetWork)總線,即控制器局域網(wǎng)總線,是由德國(guó)Bosch公司于1982年開(kāi)發(fā)和推出的最早用于汽車內(nèi)部測(cè)量與執(zhí)行部件之間的數(shù)據(jù)通信協(xié)議。在20多年的歷史中,CAN總線在許多領(lǐng)域得到了應(yīng)用,是到目前為止唯一有國(guó)際標(biāo)準(zhǔn)的現(xiàn)場(chǎng)總線。CAN現(xiàn)場(chǎng)總線按照國(guó)際標(biāo)準(zhǔn)化組織ISO提出的“開(kāi)放系統(tǒng)互聯(lián)(OSI)”參考模式,實(shí)現(xiàn)其中的物理層、數(shù)據(jù)鏈路層和應(yīng)用層。CAN控制器用來(lái)實(shí)現(xiàn)CAN總線協(xié)議。本文主要對(duì)CAN總線通信報(bào)文驗(yàn)收濾波、位定時(shí)與同步做了詳細(xì)介紹,具體的跟隨小編一起來(lái)了解一下。

一、CAN總線通信報(bào)文驗(yàn)收濾波

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

1)驗(yàn)收濾波器的特點(diǎn)

LPC2000系列ARM微控制器是采用ARM7TDMI-S內(nèi)核的32位嵌入式微處理器,內(nèi)嵌2路或4路CAN控制器和驗(yàn)收濾波器。驗(yàn)收濾波器為CAN控制器提供全局的報(bào)文標(biāo)識(shí)過(guò)濾功能。它包含一個(gè)512×32(2 KB)的RAM,在這2 KB的RAM中可以設(shè)置1~5個(gè)報(bào)文標(biāo)識(shí)符表,形成一個(gè)查找表LUT(LookUp Table)。整個(gè)查找表可以容納1024個(gè)標(biāo)準(zhǔn)標(biāo)識(shí)符或512個(gè)擴(kuò)展標(biāo)識(shí)符,或兩種混合類型的標(biāo)識(shí)符。5個(gè)可能的標(biāo)識(shí)符表格包括FullCAN的標(biāo)準(zhǔn)標(biāo)識(shí)符表和獨(dú)立標(biāo)準(zhǔn)標(biāo)識(shí)符表、標(biāo)準(zhǔn)標(biāo)識(shí)符范圍表、獨(dú)立擴(kuò)展標(biāo)識(shí)符表以及擴(kuò)展標(biāo)識(shí)符范圍表。這5個(gè)表格不是必須同時(shí)存在,可以根據(jù)需要裁減。如果一個(gè)表格的起始地址等于下一個(gè)表格的起始地址或表格終止寄存器的數(shù)值,則該表格為空,在處理中將被忽略。

2)驗(yàn)收濾波器的功能

LPC2000系列ARM微控制器的CAN驗(yàn)收濾波器有2種工作模式:一種是一般模式;另一種被稱為“FullCAN模式”。在一般模式下,當(dāng) CAN控制器的接收端收到一個(gè)完整的標(biāo)識(shí)符時(shí),它將通知接收驗(yàn)收濾波器。驗(yàn)收濾波器響應(yīng)這個(gè)信號(hào),讀出CAN控制器編號(hào)和標(biāo)識(shí)符大?。?biāo)準(zhǔn)標(biāo)識(shí)符11位或擴(kuò)展標(biāo)識(shí)符29位);然后搜索LUT,查找匹配的標(biāo)識(shí)符。如果找到匹配的標(biāo)識(shí)符,則通知CAN控制器將接收的報(bào)文放入CAN控制器接收緩沖中;否則,放棄接收到的這一幀信息。其工作流程如圖1所示。

CAN總線通信報(bào)文驗(yàn)收濾波、位定時(shí)與同步

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

CAN總線通信報(bào)文驗(yàn)收濾波、位定時(shí)與同步

2、驗(yàn)收濾波器的驅(qū)動(dòng)程序開(kāi)發(fā)

2.1、驗(yàn)收濾波器寄存器描述

以LPC2292為例說(shuō)明其驗(yàn)收濾波器驅(qū)動(dòng)程序的開(kāi)發(fā)。在LPC2292中內(nèi)嵌2路CAN控制器,它的驗(yàn)收濾波器寄存器如表1所列。注意:這里的起始地址是以驗(yàn)收濾波器RAM的起始地址為基本地址的偏移。如在一般模式下,SFF_sa=O表示獨(dú)立標(biāo)準(zhǔn)幀標(biāo)識(shí)符的起始地址位于0xE0038000 處。

一個(gè)表格的大小由其前后2個(gè)表格起始地址寄存器的差值決定。例如,SFF_GRP_sa-SFF_sa為獨(dú)立標(biāo)準(zhǔn)幀標(biāo)識(shí)符查找表格大小。若其值為0,即SFF_GRP_sa=SFF_sa,則獨(dú)立標(biāo)準(zhǔn)幀標(biāo)識(shí)符查找表格大小為0,在查找時(shí)此表格將被忽略。查找表結(jié)束寄存器ENDofTable代表查找表結(jié)束地址,ENDofTable-EFF_GRP_sa為擴(kuò)展幀組標(biāo)識(shí)符查找表大小。驗(yàn)收濾波器寄存器AFMR控制其工作模式,具體定義如表2所列。

CAN總線通信報(bào)文驗(yàn)收濾波、位定時(shí)與同步

2.2、查找表中標(biāo)識(shí)符格式

①FullCAN的標(biāo)準(zhǔn)標(biāo)識(shí)符表和獨(dú)立標(biāo)準(zhǔn)標(biāo)識(shí)符表。

要注意的是,每個(gè)FullCAN的標(biāo)準(zhǔn)標(biāo)識(shí)符表和獨(dú)立標(biāo)準(zhǔn)標(biāo)識(shí)符表都必須按升序排列,即標(biāo)識(shí)符1大于標(biāo)識(shí)符O;否則,在AF中將引起表格錯(cuò)誤而使接收過(guò)濾失敗。表格格式如下:

CAN總線通信報(bào)文驗(yàn)收濾波、位定時(shí)與同步

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

CAN總線通信報(bào)文驗(yàn)收濾波、位定時(shí)與同步

③獨(dú)立擴(kuò)展標(biāo)識(shí)符表。1個(gè)獨(dú)立擴(kuò)展標(biāo)識(shí)符占1個(gè)字,而且需要按升序排列。表格格式如下:

CAN總線通信報(bào)文驗(yàn)收濾波、位定時(shí)與同步

④擴(kuò)展標(biāo)識(shí)符范圍表。它總是成對(duì)出現(xiàn),占用2個(gè)字,因此合法的表格必須以偶數(shù)個(gè)字出現(xiàn),而且必須按升序排列。表格格式如下:

CAN總線通信報(bào)文驗(yàn)收濾波、位定時(shí)與同步

2.3、驗(yàn)收濾波器驅(qū)動(dòng)程序的設(shè)計(jì)

根據(jù)以上說(shuō)明,就可以設(shè)計(jì)驗(yàn)收濾波器的驅(qū)動(dòng)程序了。以LPC2292為例來(lái)說(shuō)明如何設(shè)計(jì)驅(qū)動(dòng)程序。

假定獨(dú)立標(biāo)準(zhǔn)標(biāo)識(shí)符有ID0和ID1兩個(gè),依次按升序排列,組標(biāo)準(zhǔn)幀標(biāo)識(shí)符范圍為ID2~I(xiàn)D3(ID2www.mesnet.com.cn--編者注)

3、結(jié)論

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

二、CAN總線位定時(shí)和同步詳解

CAN(Controller Area Network)是有效支持分布式實(shí)時(shí)控制的串行通訊網(wǎng)絡(luò)。從位定時(shí)的同步方式考慮,它實(shí)質(zhì)上屬于異步通訊協(xié)議,每傳輸一幀,以幀起始位開(kāi)始,而以幀結(jié)束及隨后的間歇場(chǎng)結(jié)束。這就要求收/發(fā)雙方從幀起始位開(kāi)始必須保持幀內(nèi)信息代碼中的每一位嚴(yán)格的同步。從位定時(shí)編碼考慮,它采用的是非歸零編碼方式,位流傳輸不像差分碼那樣可以直接用電平的變化來(lái)代表同步信號(hào),因此為保證同步質(zhì)量,CAN協(xié)議定義了自己的位同步方式:硬同步和重同步。

1、位周期的結(jié)構(gòu)

CAN總線通信報(bào)文驗(yàn)收濾波、位定時(shí)與同步

2、同步機(jī)制

CAN總線的位同步只有在節(jié)點(diǎn)檢測(cè)到“隱性位”(邏輯1)到“顯性位”(邏輯0)的跳變時(shí)才會(huì)產(chǎn)生,當(dāng)跳變沿不位于位周期的同步段之內(nèi)時(shí)將會(huì)產(chǎn)生相位誤差。該相位誤差就是跳變沿與同步段結(jié)束位置之間的距離。如果跳變沿發(fā)生在同步段之后采樣點(diǎn)之前為正的相位誤差;如果跳變沿位于同步段之前采樣點(diǎn)之后為負(fù)的相位誤差。相位誤差源于節(jié)點(diǎn)的振蕩器漂移,網(wǎng)絡(luò)節(jié)點(diǎn)之間的傳播延遲以及噪聲干擾等。CAN協(xié)議規(guī)定了兩種類型的同步:硬同步和重同步。

2.1、硬同步

硬同步只在總線空閑時(shí)通過(guò)一個(gè)下降沿(幀起始)來(lái)完成,此時(shí)不管有沒(méi)有相位誤差,所有節(jié)點(diǎn)的位時(shí)間重新開(kāi)始。強(qiáng)迫引起硬同步的跳變沿位于重新開(kāi)始的位時(shí)間的同步段之內(nèi)。

2.2、重同步

在消息幀的隨后位中,每當(dāng)有從“隱性位”到“顯性位”的跳變,并且該跳變落在了同步段之外,就會(huì)引起一次重同步。重同步機(jī)制可以根據(jù)跳變沿增長(zhǎng)或者縮短位時(shí)間以調(diào)整采樣點(diǎn)的位置,保證正確采樣。

CAN總線通信報(bào)文驗(yàn)收濾波、位定時(shí)與同步

CAN總線通信報(bào)文驗(yàn)收濾波、位定時(shí)與同步

如圖2,跳變沿落在了同步段之后采樣點(diǎn)之前,為正的相位誤差,接收器會(huì)認(rèn)為這是一個(gè)慢速發(fā)送器發(fā)送的滯后邊沿。此時(shí)節(jié)點(diǎn)為了匹配發(fā)送器的時(shí)間,會(huì)增長(zhǎng)自己的相位緩沖段1(陰影部分)。增長(zhǎng)的時(shí)間為相位差的絕對(duì)值,但是上限是重同步跳轉(zhuǎn)寬度SJW。

如圖3,跳變沿落在了采樣點(diǎn)之后同步段之前,為負(fù)的相位誤差,接收器把它解釋為一個(gè)快速發(fā)送器發(fā)送的下一個(gè)位周期的提前邊沿。同樣節(jié)點(diǎn)為了匹配發(fā)送器的時(shí)間,會(huì)縮短自己的相位緩沖段2(陰影部分),下一個(gè)位時(shí)間立即開(kāi)始??s短的時(shí)間也為相位差的絕對(duì)值,上限是重同步跳轉(zhuǎn)寬度SJW。

相位緩沖段只在當(dāng)前位周期內(nèi)被增長(zhǎng)或者縮短,接下來(lái)的位周期,只要沒(méi)有重同步,各段將恢復(fù)為位時(shí)間的編程預(yù)設(shè)值。

當(dāng)相位差的絕對(duì)值小于或者等于重同步跳轉(zhuǎn)寬度SJW時(shí),重同步和硬同步的效果是相同的,能實(shí)現(xiàn)相位差的補(bǔ)償;但是如果相位差的絕對(duì)值比重同步跳轉(zhuǎn)寬度大,由于補(bǔ)償?shù)淖畲笾凳侵赝教D(zhuǎn)寬度,致使重同步不能完全補(bǔ)償相位差。

CAN總線通信報(bào)文驗(yàn)收濾波、位定時(shí)與同步

CAN協(xié)議的位填充機(jī)制除實(shí)現(xiàn)仲裁場(chǎng),控制場(chǎng),數(shù)據(jù)場(chǎng)和CRC序列的數(shù)據(jù)的透明性外,還增加了從“隱性位”到“顯性位”跳變的機(jī)會(huì),也就是增多重同步的數(shù)量,提高同步質(zhì)量。在沒(méi)有出錯(cuò)影響的情況下,位填充原則保證了兩次重同步跳轉(zhuǎn)邊沿之間不會(huì)多于10個(gè)位周期(即5個(gè)顯性位,5個(gè)隱性位),而實(shí)際的系統(tǒng)會(huì)有錯(cuò)誤發(fā)生,使得實(shí)際的兩次重同步跳轉(zhuǎn)邊沿之間的間隔可能為17到23個(gè)位時(shí)間(活動(dòng)錯(cuò)誤標(biāo)志及其疊加6到12個(gè)位時(shí)間,錯(cuò)誤界定符8個(gè)位時(shí)間,間歇場(chǎng)3個(gè)位時(shí)間)。

3、結(jié)論

在實(shí)際的系統(tǒng)設(shè)計(jì)中,用戶可以根據(jù)振蕩器時(shí)鐘頻率,總線波特率以及總線的最大傳輸距離等因素,對(duì)CAN控制器的位定時(shí)參數(shù)進(jìn)行優(yōu)化設(shè)置,協(xié)調(diào)影響位定時(shí)設(shè)置的兩個(gè)主要因素:振蕩器容差和最大總線長(zhǎng)度,合理安排位周期中采樣點(diǎn)的位置和采樣次數(shù),保證總線上位流的有效同步的同時(shí),優(yōu)化系統(tǒng)的通訊性能,進(jìn)一步推進(jìn)CAN總線的廣泛應(yīng)用。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • CAN總線
    +關(guān)注

    關(guān)注

    145

    文章

    1954

    瀏覽量

    130918
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    CAN總線如何驗(yàn)收濾波

    CAN總線在的幀數(shù)據(jù)在總線上傳送時(shí),其它的CAN控制器是通過(guò)驗(yàn)收濾波來(lái)決定
    發(fā)表于 04-28 10:11 ?5641次閱讀
    <b class='flag-5'>CAN</b><b class='flag-5'>總線</b>如何<b class='flag-5'>驗(yàn)收</b><b class='flag-5'>濾波</b>

    CAN總線學(xué)習(xí)筆記:驗(yàn)收濾波

     了解CAN總線的人都知道,CAN總線在的幀數(shù)據(jù)在總線上傳送時(shí),其它的CAN控制器是通過(guò)
    發(fā)表于 10-26 14:10 ?1653次閱讀
    <b class='flag-5'>CAN</b><b class='flag-5'>總線</b>學(xué)習(xí)筆記:<b class='flag-5'>驗(yàn)收</b><b class='flag-5'>濾波</b>

    CAN總線定時(shí)

    對(duì)一般的開(kāi)發(fā)者來(lái)說(shuō),CAN總線定時(shí)概念并不常見(jiàn)。不過(guò),如果給整車廠做過(guò)零部件,經(jīng)受過(guò)他們的CAN通信
    的頭像 發(fā)表于 08-26 17:15 ?4018次閱讀
    <b class='flag-5'>CAN</b><b class='flag-5'>總線</b>的<b class='flag-5'>位</b><b class='flag-5'>定時(shí)</b>

    CAN總線定時(shí)同步機(jī)制#汽車CAN總線?

    CAN總線
    北匯信息POLELINK
    發(fā)布于 :2023年07月17日 10:57:12

    CAN總線ID 報(bào)文接收問(wèn)題

    CAN報(bào)文接收時(shí)MASK的值為0時(shí) 不管ID是多少 都接收MASK為1時(shí)看發(fā)送節(jié)點(diǎn)ID與驗(yàn)收碼是否一致同一上同是0或者同是1則接收,否則不接收對(duì)嗎????
    發(fā)表于 01-02 20:04

    CAN總線

    點(diǎn)間的傳輸過(guò)程,主要是連接介質(zhì)、線路電氣特性、數(shù)據(jù)的編碼/解碼、定時(shí)同步的實(shí)施標(biāo)準(zhǔn)。總線競(jìng)爭(zhēng)的原則  BOSCH CAN基本上沒(méi)有對(duì)物理
    發(fā)表于 04-27 15:16

    嵌入式CAN總線系統(tǒng)——汽車車身網(wǎng)絡(luò)系統(tǒng)

    對(duì)另一個(gè)進(jìn)行寫(xiě)操作。流處理器是一個(gè)控制發(fā)送緩存器和接收緩存器(并行數(shù)據(jù))與CAN總線(串行數(shù)據(jù))之間數(shù)據(jù)流的序列發(fā)生器。定時(shí)邏輯將SJA
    發(fā)表于 08-17 14:21

    CAN總線如何進(jìn)行驗(yàn)收濾波?

      CAN總線在的幀數(shù)據(jù)在總線上傳送時(shí),其它的CAN控制器是通過(guò)驗(yàn)收濾波來(lái)決定
    發(fā)表于 08-20 08:12

    關(guān)于CAN總線定時(shí)同步機(jī)制的簡(jiǎn)要分析

    關(guān)于CAN總線定時(shí)同步機(jī)制的簡(jiǎn)要分析
    發(fā)表于 05-28 06:05

    CAN 總線定時(shí)參數(shù)的確定

    CAN 通信中, 波特率、周期內(nèi)取樣點(diǎn)數(shù)和位置可以編程設(shè)置, 這些設(shè)置為用戶根據(jù)其應(yīng)用優(yōu)化網(wǎng)絡(luò)通信性能提供了方便。優(yōu)化
    發(fā)表于 05-15 15:08 ?6次下載

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

    LPC2000系列的CAN總線驗(yàn)收濾波器應(yīng)用 CAN(Controller Area NetWork)
    發(fā)表于 02-10 14:45 ?25次下載

    CAN總線通信詳解

    CAN總線通信詳解。
    發(fā)表于 03-30 16:46 ?0次下載

    詳解CAN總線信號(hào)傳輸定時(shí)同步

    CAN協(xié)議與其它現(xiàn)場(chǎng)總線協(xié)議的區(qū)別中有一個(gè)是:它使用同步數(shù)據(jù)傳輸而不是異步傳輸(面向字符)。這意味著傳輸性能得到更有效的發(fā)揮,但是另一方面,這需要更加復(fù)雜的
    發(fā)表于 08-16 16:56 ?2226次閱讀

    CAN總線通信好與壞,驗(yàn)收濾波很關(guān)鍵

    CAN總線在的幀數(shù)據(jù)在總線上傳送時(shí),其它的CAN控制器是通過(guò)驗(yàn)收濾波來(lái)決定
    發(fā)表于 12-07 10:19 ?7次下載
    <b class='flag-5'>CAN</b><b class='flag-5'>總線</b><b class='flag-5'>通信</b>好與壞,<b class='flag-5'>驗(yàn)收</b><b class='flag-5'>濾波</b>很關(guān)鍵

    CAN總線協(xié)議教程|CAN報(bào)文分析

    功能,讓每個(gè)節(jié)點(diǎn)對(duì)報(bào)文有選擇性地做出響應(yīng)。 總線使用不歸零填充。模塊以線與邏輯連接到總線:如果只有一個(gè)節(jié)點(diǎn)向總線傳輸邏輯0,那么不管有多少
    發(fā)表于 04-03 15:32 ?1.4w次閱讀
    主站蜘蛛池模板: 最新亚洲一区二区三区四区| 色吧综合网| 欧美天天| 中文字幕在线不卡| 久久成人影视| 亚洲永久免费视频| 新天堂网| 97影院理论| 国产成人一区二区三中文| 免费中国一级啪啪片| 毛片啪啪| 欧美色图久久| 久久精品国产夜色| 免费黄色福利| 国产免费高清福利拍拍拍| 4虎影院最近地址| 成年女人毛片免费视频| 精品国产香港三级| 成人a毛片视频免费看| 午夜免费观看_视频在线观看| a理论片| 天天舔日日干| 国产午夜精品一区二区三区| h在线免费| 在线一区观看| 亚洲一二| 性夜影院爽黄a爽免费视| 亚洲综合在线观看一区www| 狠狠色噜噜狠狠狠狠黑人| 天天做天天添婷婷我也去| 欧美一级高清免费a| 国产三级日产三级韩国三级 | 九月色婷婷| 成人啪啪网站| 亚洲你懂的| 免费看的一级毛片| www.a级片| 天天做天天爱天天干| japanese日本护士xx亚洲| 九九精品免费观看在线| 中国一级做a爰片久久毛片|