国产肉体XXXX裸体137大胆,国产成人久久精品流白浆,国产乱子伦视频在线观看,无码中文字幕免费一区二区三区 国产成人手机在线-午夜国产精品无套-swag国产精品-国产毛片久久国产

博客專欄

EEPW首頁(yè) > 博客 > 洞察幽微 繼續(xù)談CAN總線的小門(mén)道

洞察幽微 繼續(xù)談CAN總線的小門(mén)道

發(fā)布人:三德子 時(shí)間:2022-07-11 來(lái)源:工程師 發(fā)布文章

曾幾何時(shí),汽車(chē)這么一個(gè)夕陽(yáng)產(chǎn)業(yè)突然病樹(shù)前頭萬(wàn)木春,一下子成了各大技術(shù)創(chuàng)新的母體和載體。 

近年來(lái),隨著車(chē)載以太網(wǎng)的強(qiáng)勢(shì)登場(chǎng),CAN總線也突然變得老土了起來(lái)。 

那么,CAN總線還有用武之地嗎?還有學(xué)習(xí)的必要嗎? 

且不說(shuō)工控、樓宇等其它領(lǐng)域里,CAN總線依然熱火朝天。就是在不斷追求高大上的汽車(chē)行業(yè)里,車(chē)載以太網(wǎng)跟CAN總線也是大路朝天,各走一邊。 

在動(dòng)力控制域、車(chē)身控制域里,并不涉及大量的數(shù)據(jù)傳輸,上車(chē)載以太網(wǎng)有大材小用之嫌,這些控制器之間的通信,CAN總線也能玩得轉(zhuǎn),性價(jià)比十分亮眼。 

成本才是王道!所以,貓有貓的道,狗有狗的道,說(shuō)起CAN總線的壽命,它能陪你退休,伴你到老。 

打消了技術(shù)過(guò)時(shí)淘汰的顧慮,下面,灑家就書(shū)接上文,再嘮一嘮CAN總線那些不為人知的小門(mén)道。


報(bào)文ID分配的學(xué)問(wèn)

上文說(shuō)過(guò),RS485為每個(gè)設(shè)備分配地址,屬于“設(shè)備尋址”,CAN總線是基于ID進(jìn)行“功能尋址”。 

CAN報(bào)文的ID除了內(nèi)容尋址、功能尋址外,還有競(jìng)爭(zhēng)總線的作用,機(jī)制也很簡(jiǎn)單,比大小。 

在這個(gè)叢林社會(huì)的現(xiàn)實(shí)世界,“尊嚴(yán)只在劍鋒之上,真理只在大炮射程之內(nèi)”,換句話說(shuō),誰(shuí)大誰(shuí)說(shuō)了算! 

但是在CAN總線的世界里,卻是孔融讓梨,互相謙虛,誰(shuí)小誰(shuí)說(shuō)了算。 

誰(shuí)小誰(shuí)占先,這個(gè)規(guī)律擺在面前。那么,搞CAN總線開(kāi)發(fā)的朋友們,如果讓你們自己來(lái)定一個(gè)CAN網(wǎng)絡(luò)的矩陣,這個(gè)網(wǎng)絡(luò)里有幾十條報(bào)文,有的是事件觸發(fā)型,有的是周期輪轉(zhuǎn)型,有的周期長(zhǎng),有的周期短,這里的ID分配,到底該怎么辦? 

絕大部分人,可能真的沒(méi)有想到過(guò)這一點(diǎn)。 

在這里跟大家分享一個(gè)來(lái)自某車(chē)廠的網(wǎng)絡(luò)矩陣表,有心的小伙伴,可以自行體會(huì)體會(huì)。

圖片1.png

都說(shuō)外行看熱鬧,內(nèi)行看門(mén)道。這張讓人有點(diǎn)眼花繚亂的圖,到底藏著哪些道道? 

先說(shuō)事件幀和周期幀,發(fā)現(xiàn)沒(méi)?事件幀報(bào)文的ID都小于周期幀報(bào)文。 

在時(shí)間無(wú)涯的荒野里,沒(méi)有早一步,也沒(méi)有晚一步,時(shí)間一到,周期幀就按時(shí)發(fā)報(bào)。那也沒(méi)有別的話好說(shuō),它唯有輕輕地問(wèn)一句:“哦?沒(méi)有事件幀哈!” 

周期幀有著無(wú)垠的時(shí)間,不疾不徐,事件幀,緊急觸發(fā),風(fēng)風(fēng)火火,自然需要一個(gè)小ID,對(duì)著周期幀喊聲“對(duì)不起,請(qǐng)讓讓”。 

那么,周期幀本身的ID呢?當(dāng)然取決于它出自哪一個(gè)節(jié)點(diǎn)。 

條條大路通羅馬,有人出生在羅馬。人,生來(lái)不平等,才吶喊著、追求著“生而平等”,所以,報(bào)文ID的出身決定論,也是合理的了。 

再回到上面那張圖。發(fā)動(dòng)機(jī)管理單元EMS、變速器控制單元TCU,掌管汽車(chē)動(dòng)力,生殺予奪,自帶豪門(mén)屬性,自然需要分配優(yōu)先級(jí)最高的ID,空調(diào)AC、儀表IC實(shí)時(shí)性要求不高,車(chē)載Tbox可有可無(wú),自然分配優(yōu)先級(jí)最低的ID。 

雖說(shuō)同是汽車(chē)電子零部件,但還是要分個(gè)三六九等。其實(shí),這些電子單元,也沒(méi)必要叫屈喊冤,還有個(gè)冤大頭,在報(bào)文ID的分配里,更加沒(méi)有發(fā)言權(quán)。 

這個(gè)冤大頭,叫OBD,即診斷單元。 

做過(guò)診斷的朋友知道,診斷報(bào)文的ID介于0x700-0x7ff之間,細(xì)心的開(kāi)發(fā)者還會(huì)發(fā)現(xiàn),通信報(bào)文從來(lái)沒(méi)有占用過(guò)這個(gè)區(qū)間,即信息控制類的報(bào)文優(yōu)先級(jí)高于診斷報(bào)文。 

這說(shuō)明了什么? 

都說(shuō)政府機(jī)關(guān)、事業(yè)單位是三分之一在干,三分之一在看,還有三分之一在搗蛋。在CAN總線的世界里,診斷單元屬于在一旁看著的工種,怎能奢望優(yōu)先級(jí)較高的ID,來(lái)給正常的通信服務(wù)搗蛋呢?


總線負(fù)載率

CAN總線網(wǎng)絡(luò)里,還有一個(gè)經(jīng)常被大家提起的概念-總線負(fù)載率。 

負(fù)載率,顧名思義,就是指這段時(shí)間內(nèi)總線上實(shí)際傳輸?shù)男畔⒘?/span>/理論上可傳輸?shù)淖畲笮畔⒘俊?/span> 

不知道大家平時(shí)怎么理解一個(gè)“概念”或“定義”,灑家的小竅門(mén)是“咬文爵字”和“摳字眼”。 

具體要摳哪些字眼,可以參考老羅的錘子手機(jī)原創(chuàng)、最近被微信抄了去的big bang大爆炸。這個(gè)概念里,有兩個(gè)需要重點(diǎn)理解的點(diǎn):“這段時(shí)間”、“理論最大信息量”。 

“這段時(shí)間”可長(zhǎng)可短,也意味著負(fù)載率是可變的。需要特別關(guān)注的有兩個(gè):平均負(fù)載率和峰值負(fù)載率。根據(jù)灑家多年的小經(jīng)驗(yàn),平均負(fù)載率大多低于40-50%,峰值負(fù)載率也不超過(guò)70-80%。 

至于說(shuō),負(fù)載率超了會(huì)怎么樣? 

也許,針對(duì)某個(gè)具體的CAN網(wǎng)絡(luò),從技術(shù)上來(lái)說(shuō),把原本30%的平均負(fù)載率提高到50%也沒(méi)啥。但是,從“行政”上來(lái)說(shuō),您這個(gè)提議提高負(fù)載率的技術(shù)人員需要寫(xiě)報(bào)告,說(shuō)明白為啥要提,提到50%有沒(méi)有什么風(fēng)險(xiǎn),怎么證明沒(méi)有風(fēng)險(xiǎn),有沒(méi)有理論分析,有沒(méi)有實(shí)測(cè)報(bào)告,有沒(méi)有。。。。 

好吧,30%最保險(xiǎn)了~~ 

另一個(gè),“理論上可以傳輸?shù)淖畲笮畔⒘俊比Q于總線速率。具體來(lái)說(shuō),低速CAN125kbps,高速CAN500kbpsCAN-FD2Mbps,再往上,Flexray站出來(lái)說(shuō)了“此吾家事,汝不得預(yù)也!”。 

在制定負(fù)載率時(shí),會(huì)牽涉到一個(gè)概念-報(bào)文時(shí)長(zhǎng)。灑家不少同事說(shuō)起報(bào)文時(shí)長(zhǎng)來(lái),經(jīng)常不清不楚,模模糊糊。其實(shí),真正找到關(guān)鍵,問(wèn)題就很簡(jiǎn)單了。 

關(guān)鍵在哪?在計(jì)算公式: 

報(bào)文時(shí)長(zhǎng)=位時(shí)長(zhǎng)x報(bào)文位數(shù)。 

在這個(gè)公式里,位時(shí)長(zhǎng)當(dāng)然等于速率的倒數(shù),比如125kbps的通信速率,位時(shí)長(zhǎng)=8us。而報(bào)文位數(shù),則取決于CAN報(bào)文的結(jié)構(gòu)。報(bào)文結(jié)構(gòu)如下圖所示:

圖片2.png一個(gè)完整的CAN報(bào)文由七個(gè)不同的Field(場(chǎng)//段)組成幀起始、仲裁場(chǎng)、控制場(chǎng)、數(shù)據(jù)場(chǎng)、CRC場(chǎng)、應(yīng)答場(chǎng)、幀結(jié)尾。 

每個(gè)Field的位數(shù)相加,不就齊了? 

下面就單獨(dú)就每個(gè)場(chǎng)進(jìn)行分析。 

SOF幀起始,標(biāo)志數(shù)據(jù)幀和遠(yuǎn)程幀的起始,由一個(gè)單獨(dú)的顯性位組成。 

仲裁場(chǎng)包括識(shí)別符和遠(yuǎn)程發(fā)送請(qǐng)求位(RTR)。識(shí)別符的長(zhǎng)度為11位。 

控制場(chǎng)由6個(gè)位組成,包括數(shù)據(jù)長(zhǎng)度代碼和兩個(gè)將來(lái)作為擴(kuò)展用的保留位。 

數(shù)據(jù)場(chǎng)由數(shù)據(jù)幀中的發(fā)送數(shù)據(jù)組成。它可以為08 個(gè)字節(jié)。 

CRC場(chǎng)包括CRC序列(CRC SEQUENCE),其后是CRC界定符(CRC DELIMITER)。CRC序列為15位,CRC界定符包含一個(gè)單獨(dú)的隱性位 。 

應(yīng)答場(chǎng)長(zhǎng)度為2個(gè)位,包含應(yīng)答間隙(ACK SLOT)和應(yīng)答界定符(ACK DELIMITER)。 

幀結(jié)尾由一標(biāo)志序列界定。這個(gè)標(biāo)志序列由7 個(gè)隱性位組成。 

所以一個(gè)8字節(jié)的數(shù)據(jù)幀的位數(shù)為1(幀起始)+ 12(仲裁場(chǎng))+ 6(控制場(chǎng))+ 64(數(shù)據(jù)場(chǎng))+ 16CRC場(chǎng))+ 2(應(yīng)答場(chǎng))+ 7(幀結(jié)尾)= 108位。 

報(bào)文之間存在幀間空間INTERFRAME SPACE。幀間包括間歇場(chǎng)、總線空閑的位場(chǎng)。間歇場(chǎng)包括3 個(gè)隱性的位。總線空閑的(時(shí)間)長(zhǎng)度是任意的。

 所以,一個(gè)8字節(jié)的數(shù)據(jù)幀至少需要(108+3+1* bitrate的時(shí)長(zhǎng),對(duì)于125kbps,需要0.896ms。


CAN總線的位定時(shí)

對(duì)一般的開(kāi)發(fā)者來(lái)說(shuō),CAN總線的位定時(shí)概念并不常見(jiàn)。不過(guò),如果給整車(chē)廠做過(guò)零部件,經(jīng)受過(guò)他們的CAN通信測(cè)試考驗(yàn),您可能就知道,這也是比較重要的一個(gè)知識(shí)點(diǎn)。 

前文說(shuō)了,CAN報(bào)文由七個(gè)不同的場(chǎng)/段組成。那么,具體到單個(gè)bit位呢?上一張圖,大家就有概念了。

圖片3.png 

一個(gè)位,由同步段+傳播段+相位緩沖段1+相位緩沖段2組成。 

這四個(gè)段的時(shí)間均為基本時(shí)間單位“時(shí)間份額”的若干倍,時(shí)間份額Tq派生于振蕩器周期,可以由振蕩器進(jìn)行分頻。 

由這張圖可以看出,在相位緩沖段1相位緩沖段2的交接處,藏著一個(gè)“采樣點(diǎn)”,或者說(shuō)“采樣時(shí)刻”,這也是CAN通信測(cè)試中比較重要的一個(gè)測(cè)試項(xiàng)。 

下面這張圖,是一個(gè)CAN通信需求規(guī)范中的位定時(shí)要求。

圖片4.png 

在實(shí)際的編程開(kāi)發(fā)工作中,需要根據(jù)這個(gè)位定時(shí)規(guī)范,對(duì)照MCUCAN模塊的寄存器特點(diǎn),對(duì)寄存器進(jìn)行針對(duì)性設(shè)置。 

比如飛思卡爾微控制器中的MSCAN模塊,其位定時(shí)寄存器如下所示:

圖片5.png 

在這款CAN控制器中,把CAN的位分成了三段,同步段、段1和段2CAN2.0協(xié)議中定義的“同步段+傳播段+相位緩沖段1+相位緩沖段2”進(jìn)行對(duì)比,便可以發(fā)現(xiàn),MSCAN中的1CAN2.0協(xié)議中的“傳播段+相位緩沖段1  

如何具體設(shè)置CAN控制器寄存器呢? 

根據(jù)規(guī)范要求,一個(gè)8usCAN比特位包含16個(gè)Tq,采樣位置在該bit75%的時(shí)刻,所以,可以Time Segment1 設(shè)為 11,Time Segment2 設(shè)為 4這樣,既能保證包含16個(gè)Tq(1 + Time Segment1 + Time Segment2 = 16),又可以保證采樣時(shí)刻=(1 + Time Segment1)/16=75%

 

寫(xiě)在最后

CAN總線有著廣泛的應(yīng)用,也有著長(zhǎng)久的生命周期。深入思考并鉆研CAN總線的一些小門(mén)道,可以幫助您在一些表層的知識(shí)之下加深對(duì)這門(mén)技術(shù)本質(zhì)的認(rèn)識(shí),同時(shí),在面對(duì)一些規(guī)范要求時(shí),可以做到知其然并知其所以然,何樂(lè)而不為?

 


*博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請(qǐng)聯(lián)系工作人員刪除。




相關(guān)推薦

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

關(guān)閉