色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

FullCAN和BasicCAN是什么?有何區別

冬至配餃子 ? 來源:開心果 Need Car ? 作者:開心果 Need Car ? 2022-08-29 17:21 ? 次閱讀

在搞清楚FullCAN和BasicCAN是什么之前,我們先搞清楚一些基礎的東西。

1基礎概念

提示:

英飛凌tc397為例。

1、CAN Module與CAN Node、Controller關系

平時開發中,我們說“ECU有3路CAN”,所說的“3路CAN”和3個Node是一個概念嗎?不是。

我們平時所討論的“3路CAN”是指3個網絡,也就是我們口語中的“節點”。而芯片手冊中(Data Sheet),一個CAN Module會包含多個Node(即,Controller),比如:tc397芯片手冊中,MCMCAN Module包含3個CAN Module,每個Module包含4個Controller,如下所示:

pYYBAGMMg-OAYC3EAACJ9INnbJ4061.png

2、Controller與Transceiver關系

在實際的使用中,一個Controller必須配一個Transceiver,Controller+Transceiver = Network,如下所示:

pYYBAGMMg_qAOwu0AAByyEGH10M579.png

所以,平時我們口語話的“3路CAN”是指3個Controller+Transceiver組合,即:3個Network,我們也常稱“3個節點”。

3、Controller與RAM資源關系

剛提到,tc397中,一個CAN Module包含4個Controller,那每個Controller可以發送多少個CAN報文,接收多少個CAN 報文呢?這里我們要區分硬件緩存CAN報文的數量和項目中要求發送/接收報文的數量。

硬件緩存CAN報文數量:是指上層請求發送報文或者接收報文時,CAN驅動最多能緩存的數量;

項目中要求發送/接收報文的數量:是指當前節點要外發或者接收的報文數量。

以發送CAN報文數量為例:需求要求當前網絡節點發送100幀CanID不同的CAN報文,實際該節點CAN Controller可用的硬件發送緩存區最多有32,意味著底層硬件最多緩存32幀發送報文,如果超過32幀發送請求,則會因沒有硬件空間緩存而發送請求失敗。

tc397 CAN Module資源情況如下所示:

poYBAGMMhA-ALhjvAAEM-o0W0yY411.png

提示:上圖中的Controller用“Node”表示。由上可以看出,3個CAN Module,共12個Controller。

每個CAN Module(4個Controller)共用32個發送Tx Buffer,共用64個Rx Buffer

...對于發送緩沖區,每個CAN Module共用32個發送緩沖區,如果配置了32個TxDedicated Buffer,則沒有空間配置Tx FIFO/Queue;同理,每個CAN Module雖然有兩個Rx FIFO,如果配置了64個Rx Dedicated Buffer,則沒有空間配置Rx FIFO。一般,Tx/Rx Buffer配置時,會混合使用,比如:

20TxDedicated Buffer+ 12Tx Queue

40 RxDedicated Buffer+ 24Rx FIFO

MCMCAN

Module RAM區地址劃分順序如下所示:

poYBAGMMhCSAMIl3AADNZfS_IJs890.png

4、Mailbox、HRH、HWObject

Mailbox:郵箱,就是CAN驅動所具有的接收緩存區和發送緩存區,接收緩存區和發送緩存區均在RAM區。

HWObject:硬件對象,包含CAN ID、DLC、Data等信息的RAM區。

HRH:Hardware Receive Handle,接收句柄,一個HRH表示一個接收HWObject。

HTH:HardwareTransmitHandle,發送句柄,一個HTH表示一個發送HWObject。

Mailbox、HWObject、HRH、HTH、Controller、Transceiver之間的關系如下所示:

pYYBAGMMhDqAQ0yiAAC0PLOriVc031.png

2FullCAN和BasicCAN是什么?

首先,FullCAN和BasicCAN是CanIf模塊配置的參數

BasicCAN:一個HWObject(HardwareObject)可以處理一段范圍的CanId

FullCAN:一個HWObject(HardwareObject)只能處理單個CanId

Autosar對FullCAN和BasicCAN的解釋如下所示:

poYBAGMMhImAcUxCAABo9GVkPgI211.png

將上述的解釋進一步細化,如下所示:

pYYBAGMMhEqAXgHCAADCYTX5JVU641.png

使用工程中,MCAL會將緩存區分配成FIFO和Dedicated Buffer,FIFO和Dedicated Buffer的區別是什么呢?Dedicated Buffer區域,Hareware Object與HRH/HTH一一對應,而FIFO區域,一個HRH/HTH對應多個HarewareObject,如下所示:

pYYBAGMMhGqADKl6AAC7wZ8Ce7g609.png

3為什么需要FullCAN和BasicCAN?

在CAN驅動層,可以通過過濾的方式,過濾一段范圍內的CanID,也就是說:會有一段范圍內的報文接收進來,但是接收進來的這一段范圍的報文并不一定都是上層所需要的,怎么辦呢?用軟件方式,再過濾一遍,由CanIf過濾所需要的CAN報文。因此,提出了FullCAN和BasicCAN的概念。

比如:HRH對應BASIC CAN類型,接收CanID范圍:0x10~0x18,CanIf根據過濾算法,在0x10~0x18范圍內過濾出需要的0x10、0x13、0x14、0x16、0x17送給上層,而其余的丟棄,如下所示:

poYBAGMMhJ-AQzbBAADAas-Dt-k646.png

CanIf可以通過設置CANIF_HRHRANGE_LOWER_CANID、CANIF_HRHRANGE_UPPER_CANID方式過濾,也可以通過設置CANIF_HRHRANGE_BASEID、CANIF_HRHRANGE_MASK進行過濾。

不同報文類型如何選擇FULL CAN/BASICCAN

應用報文:一般選擇配置成FULL CAN類型,對于應用報文,一般不需要緩存,使用最新接收的數據即可。對于發送的應用報文,都配置成FULL CAN類型需要一個前提:上層需要發送應用報文數量<底層硬件緩存區數量。比如:底層發送硬件緩存區數量為32,節點需要發送的應用報文數量為50,顯然無法將50個發送的應用報文都配置成FULL CAN。遇到這種情況,一般會將重要的應用報文配置成FULL CAN,而其他要發送的應用報文配置成BASIC CAN。這樣配置以后,硬件緩存區的分配就需要混用,即:Dedicated Tx Buffers+Tx Queue或者 Dedicated Tx Buffers+Tx FIFO,如下所示:

poYBAGMMhLKAa0SPAAC5rWvshB8966.png

如上圖,ID3、ID15、ID20是比較重要的應用報文,配置成FULL CAN,分別給一個獨立的緩存區;其他的緩存區則配置成BASIC CAN,即:一個緩存區可以發送多個不同CanID的報文。

診斷報文:一般選擇配置成BASIC CAN類型(結合FIFO Buffer使用),因為診斷報文的請求/響應不能錯序,需按照順序處理,且數據不能覆蓋;

網絡管理報文:接收一般選擇配置成BASIC CAN類型,因為一個節點一般會要求接收一段范圍的網絡管理報文,eg:0x500~0x53F。發送網絡管理報文配置成FULL/BASIC CAN類型均可,如果資源夠用,推薦配置成FULL CAN類型,因為每個節點的發送網絡管理報文唯一;

標定報文:一般選擇配置成FULL CAN類型。



審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • CAN
    CAN
    +關注

    關注

    57

    文章

    2764

    瀏覽量

    464137
  • RAM
    RAM
    +關注

    關注

    8

    文章

    1369

    瀏覽量

    114880
  • fifo
    +關注

    關注

    3

    文章

    389

    瀏覽量

    43811
收藏 人收藏

    評論

    相關推薦

    audio CODEC AGC跟DRC區別

    audio CODEC AGC 跟DRC 區別?求詳解,thanks
    發表于 01-09 07:29

    你聽說過MIPS嗎?它和ARM區別

    基于MIPS指令集的君正X2000處理器。有些工程師對于MIPS不怎么了解,究竟MIPS和ARM區別呢?本期文對MIPS做一個簡單介紹。MIPS和ARM都屬于
    的頭像 發表于 11-23 01:05 ?313次閱讀
    你聽說過MIPS嗎?它和ARM<b class='flag-5'>有</b><b class='flag-5'>何</b><b class='flag-5'>區別</b>?

    【迅為電子】龍芯LS2K1000LA和LS2K1000區別

    【迅為電子】龍芯LS2K1000LA和LS2K1000區別
    的頭像 發表于 11-13 14:13 ?324次閱讀
    【迅為電子】龍芯LS2K1000LA和LS2K1000<b class='flag-5'>有</b><b class='flag-5'>何</b><b class='flag-5'>區別</b>?

    TPA3112D1PWPR與TPA3112D1PWP區別

    TPA3112D1PWPR與TPA3112D1PWP區別
    發表于 09-09 07:48

    請問單端音頻和差分音頻區別

    單端音頻和差分音頻區別?一個是單聲道一個是立體聲?
    發表于 08-13 07:37

    DVI連接器的3種類型5種規格區別

    DVI(Digital Visual Interface)連接器,即數字視頻接口。共有3種類型,5種規格,你知道區別嗎? 3種類型分別為: 1.DVI-A(DVI-Analog)接口,只傳輸
    的頭像 發表于 05-15 17:53 ?1927次閱讀

    谷景帶你了解共模繞線電感和共模電感區別

    谷景帶你了解共模繞線電感和共模電感區別 編輯:谷景電子 電感是電子電路中的關鍵電感元件,它對電路穩定性的影響有著非常重要的作用。在眾多電感類型,共模電感和繞線電感是應用比較多的兩種。有人想知道共
    的頭像 發表于 04-28 23:26 ?447次閱讀

    英偉達AI服務器NVLink版與PCIe版區別?又如何選擇呢?

    在人工智能領域,英偉達作為行業領軍者,推出了兩種主要的GPU版本供AI服務器選擇——NVLink版(實為SXM版)與PCIe版。這兩者本質區別?又該如何根據應用場景做出最佳選擇呢?讓我們深入探討一下。
    的頭像 發表于 03-19 11:21 ?5871次閱讀
    英偉達AI服務器NVLink版與PCIe版<b class='flag-5'>有</b><b class='flag-5'>何</b><b class='flag-5'>區別</b>?又如何選擇呢?

    藍牙降噪耳機的工作原理是什么?主動降噪和通話降噪的技術區別

    藍牙降噪耳機的工作原理是什么?主動降噪和通話降噪的技術區別? 藍牙降噪耳機的工作原理是通過一系列技術手段來消除環境噪音,使用戶能夠更好地享受音樂、通話等體驗。主動降噪和通話降噪是兩種常見的降噪
    的頭像 發表于 03-14 15:46 ?3974次閱讀

    什么是勵磁電感?與漏磁電感區別呢?

    什么是勵磁電感?與漏磁電感區別呢? 勵磁電感和漏磁電感是電感元件中的兩個重要概念,它們在電磁學和電路應用中有著不同的作用和特性。本文將詳細介紹勵磁電感和漏磁電感的定義、特點以及區別
    的頭像 發表于 03-08 16:39 ?7078次閱讀

    數組和鏈表區別

    數組和鏈表的區別,這個問題,不僅面試中經常遇到,考研的同學也得掌握才行。
    的頭像 發表于 02-19 15:33 ?552次閱讀
    數組和鏈表<b class='flag-5'>有</b><b class='flag-5'>何</b><b class='flag-5'>區別</b>

    作為導線,銅線和鋁線區別?可以接在一起嗎?

    作為導線,銅線和鋁線區別?可以接在一起嗎? 銅線和鋁線是兩種常用的導線材料,用于電力輸送和電器連接。雖然它們都具備導電功能,但在性能、用途和優勢方面存在一些區別。本文將對銅線和鋁線
    的頭像 發表于 02-18 13:52 ?6891次閱讀

    譯碼不只有DECB,還有DEC,它們區別

    譯碼不只有DECB,還有DEC,它們區別? DECB譯碼和DEC譯碼都是編碼技術中常見的方法,它們在使用上有一些區別。 首先,讓我們了解一下什么是譯碼。在計算機科學中,譯碼是將計算
    的頭像 發表于 02-18 11:14 ?1377次閱讀

    法拉電容器和電解電容器區別

    法拉電容器和電解電容器區別? 法拉電容器和電解電容器是兩種常見的電容器類型,在結構、工作原理、特性和應用等方面有很多區別。下面是對這兩種電容器的詳盡、詳實、細致的比較和介紹。 一、
    的頭像 發表于 02-02 13:36 ?2736次閱讀

    觸發電路中同步電壓與同步信號區別

    觸發電路中同步電壓與同步信號區別? 觸發電路中同步電壓與同步信號是兩個常用的概念。 首先,我們來了解觸發電路的基本概念。觸發電路是電子設備中廣泛使用的一種電路,用于控制信號的時序和信號的準確觸發
    的頭像 發表于 01-31 10:57 ?1283次閱讀
    主站蜘蛛池模板: 日本美女bb| 扒开小处30p| 九九热视频这里只有精| 浴室里强摁做开腿呻吟的漫画男男 | 国产精品在线手机视频| 孕妇泬出白浆18P| 日久精品不卡一区二区 | 国产精品国产三级国产an| 亚洲在线国产日韩欧美| 全球真实小U女视频合集| 国内精品久久久久久久999下| 5g天天影院天天看天天爽| 无限资源日本2019版免费| 美女露出乳胸扒开尿口| 国产女合集第六部| jizzxxxx18中国内地| 亚洲欧洲日韩视频在钱| 日本无码毛片一区二区手机看| 久久精品动漫网一区二区| 公交车被CAO到合不拢腿| 在线观看中文字幕国产| 午夜福利在线观看6080| 男女免费观看在线爽爽爽视频| 国产成人自产拍免费视频| 在线视频 亚洲| 小sao货水好多真紧h的视频| 欧美大片免费观看| 久久国产免费观看精品1| 国产精品ⅴ视频免费观看| AV72啪啪网站| 欲奴第一季在线观看全集| 午夜一个人在线观看完整版 | 国产探花在线精品一区二区| jizz女学| 中文字幕视频免费在线观看| 午夜神器老司机高清无码| 青柠电影高清在线观看| 美女MM131爽爽爽| 一边摸一边桶一边脱免费| 色多多污污在线播放免费| 男人把女人桶到高潮嗷嗷叫|