新聞中心
MEWS CENTER
聯(lián)係17C视频(men)
    • 漢濟智能物聯網科技(蘇州)有限公司
    • 銷售:0512-67512683
    • 傳真:0512-67513319
    • 郵箱:linxi@absopos.cn
    • 地址:蘇(sū)州市工業園區和順(shùn)路28號(hào)一幢一樓
    • 網址:www.absopos.cn
行業新聞

位移傳感器CAN總線(xiàn)簡明易懂教程

發布日期:2020-04-02 點擊次數:10816

工作(zuò)原理


當 CAN 總線上的一個節點(站)發送數(shù)據時,它(tā)以報文的形(xíng)式廣播(bō)給網絡中所有節點,對每個節點來說,無論數據是否是發給(gěi)自己(jǐ)的,都(dōu)對其接收。

每組報文開頭的11 位字符為標識符,定(dìng)義了報(bào)文的優先級,這種報文格式成為麵向內容的(de)編製方案。同一係統中標識符是唯一的,不可(kě)能有兩個站發送具有相同標識符的報(bào)文,當幾個站同(tóng)時競爭(zhēng)總線(xiàn)讀(dú)取時,這種配置十分重要。

大體的工作原理17C视频搞清了,但是(shì)根本的協議17C视频還(hái)要花一番功夫。下麵介紹一個重要的名詞(cí),顯(xiǎn)性”和“隱性”:

在我看到的很多文章裏,有很多顯性和隱性的地(dì)方,為此我頭痛不已,最(zuì)終我把它(tā)們徹底弄明(míng)白了。

首先 CAN 數據總線有兩條導線,一條是黃色的,一條是綠(lǜ)色的------分別是CAN_High 線和CAN_Low 線,當靜止(zhǐ)狀態(tài)時,這兩條導線上的電平一樣,這個電平稱為靜(jìng)電平,大約為2.5 伏(fú)。

這個靜電平狀態(tài)就是(shì)隱形狀態,也稱隱性電平,也就是沒有任(rèn)何幹擾的時候的狀態(tài)稱為隱性狀態。當有信號修改時,CAN_High 線上的電壓值變高了(le),一般來說會升高至少1V;而CAN_Low 線上的電壓(yā)值會降低一個同樣值,也是1v。

那麽這時候,CAN_High 就是(shì) 2.5v+1v=3.5v,它就(jiù)處於激活狀態了。而CAN_Low 降為2.5v-1v=1.5v。可以看看這個(gè)圖

CAN總線簡明易懂教程——《CAN總線(xiàn)嘔心瀝血教程》

由此17C视频(men)得到

在隱性狀態下,CAN_High 線與CAN_Low 沒有電壓差,這樣17C视频看(kàn)到沒有任何變化也就檢測不到信號。但是在顯性狀(zhuàng)態時,改值最低為2V,17C视频(men)就可以利用這種變(biàn)化才傳輸數據了。所以出現了那些(xiē)幀(zhēn),那些幀中的場,那些(xiē)場中的位,雲雲~~~~~~~~~~~

在總(zǒng)線上通(tōng)常邏輯1 表示隱性。而0 表示顯性。這些1 啊,0 啊(ā),就可以利(lì)用起來為(wéi)17C视频傳(chuán)數據了。利用這種電(diàn)壓差,17C视频可以接收信號。

一般來說,控製單元通過收發器連接到 CAN 驅(qū)動(dòng)總線上,這個收發器(顧名(míng)思義,可發送,可接收)內有一個接收器,該接(jiē)收器是安裝在接收一側的差動信號(hào)放大器。然後,這個(gè)放大器很自然地就放大了CAN_High 和CAN_Low 線的電平差,然後(hòu)傳到接收區。如下圖

CAN總線簡明易懂教程(chéng)——《CAN總線嘔心瀝血教程(chéng)》

由上圖可知,當有電壓差,差動信號放大(dà)器放大傳輸,將相(xiàng)應的(de)數(shù)據位轉化為0。

下麵17C视频(men)進入重點難點-----報文

所謂(wèi)報文(wén),就是CAN 總線上要傳輸的數據報(bào),為了安全,17C视频(men)要給(gěi)17C视频傳輸的數據報(bào)編碼定一下協議,這樣才能不容易出(chū)錯,所以出(chū)現了很多的幀,以(yǐ)及仲(zhòng)裁啊,CRC 效驗。這些都是難點。

識別符的概念

識別符(fú)顧名思義,就是為了區分不同報文的可以鑒別的好多字符位。有標準的,和擴展的。標準(zhǔn)的是(shì)11 位,擴展的是29 位(wèi)。他有一個功能就是可以提供(gòng)優先級(jí)也就是決定哪個報文優先(xiān)被(bèi)傳輸(shū),報(bào)文標識符(fú)的值越小,報文具有越(yuè)高的優先權。

CAN 的報文格式(shì)有(yǒu)兩種(zhǒng),不同之處其實就是識別符(fú)長度(dù)不同,具有11 位識別符的幀稱為(wéi)標準幀,而還有29 位識別符的幀為擴展幀,CAN 報文(wén)有以下(xià)4 個(gè)不同的幀類型。分別是:

(1) 數據幀:數據幀將(jiāng)數據從發送器傳輸到接(jiē)收(shōu)器;

(2) 遠程(chéng)幀:總(zǒng)線節點發出遠程(chéng)幀,請求(qiú)發送具(jù)有同一標識符的數據幀;

(3) 錯誤(wù)幀:任何節(jiē)點檢測到(dào)總(zǒng)線錯誤就發出錯誤(wù)幀;

(4) 過載幀:過(guò)載幀用已在(zài)先行的後續的(de)數據(jù)幀(或遠程幀)之(zhī)間提供(gòng)一附加的延時。



17C视频先研究數據幀吧。

一,數據幀由 7 個不同位場組成(chéng)(幀起始、仲裁場、控製場、數據場、CRC場、應答場、幀結尾)。

這裏的位場,就是不同位的組合(hé),這名字起的很爛,讓人看了感覺很抽象。17C视频來看(kàn)看這些個不同(tóng)的位場吧。一(yī)開始是一位(wèi)幀起始,也叫(jiào)SOF。它用顯(xiǎn)性位表示,也就是0;它告訴17C视频,兩個線上有電壓差了,也就是有數據了(le)。

這(zhè)個幀起始(shǐ)看起來隻有一位,其實(shí)不簡單了。為了讓所有的分站(zhàn)都同步(bù)於發(fā)送報文的發(fā)送站(zhàn),好接收數據,有很多要考慮的地方。

CAN總線簡明易懂教程(二)


報文的數(shù)據幀(zhēn)結構(gòu)

然後下一(yī)個場是仲裁場。這個(gè)仲裁很抽象(xiàng),其實在這裏就是為了解決一個問題。如果(guǒ)2 個或(huò)2 個以上的單元同時開始傳送報文,那麽就會(huì)有總(zǒng)線訪問衝突,那麽仲(zhòng)裁機製就是(shì)用來根據標識符優先級來一個一個的去掉低級別的數據(jù)。17C视频可以詳細(xì)的描述這場生動的爭搶總線的戰鬥。

當(dāng)總線處於空閑狀態時呈隱性電平,此時任何節(jiē)點都可(kě)以向總線發送顯性電平作為幀的開始。2 個或2 個以上的節點同時發送開始爭(zhēng)搶總線,但是總線隻能被一個人搶走。這(zhè)時候到底怎麽決(jué)定誰留下,誰滾蛋呢。17C视频開始思索,我(wǒ)們以前定義了標識符,標識符有優先級,它越小(xiǎo),它優(yōu)先級越高。那麽怎(zěn)麽實現的(de)呢。看下麵圖:

首先搞明(míng)白兩點,

一、下圖中, 低波形代表0(顯性),高波形代(dài)表1(隱性);

二、當隱性碰到顯性,就變為顯性。

如圖所示,節點 A 和節點B 的標識符的第10、9、8 位電平相同(tóng),因此兩個節點偵聽到的信息和它(tā)們發出的信息相同。第7位(wèi)節(jiē)點B發出一(yī)個“1”,但從節點上接收到的(de)消息卻是“0”。

為什麽呢,因為A 節(jiē)點同時發出顯性位,讓總線也變成顯性了,也就是0。節點(diǎn)B 會退出發送處於單純監聽方式而(ér)不發送(sòng)數據;節點A 成功發送仲裁位從而(ér)獲得總線的控製權,繼而發送全部消息。

總線中的信號持續跟蹤最後獲得總線(xiàn)控(kòng)製權發出的報文,本(běn)例中節點A的報文將被跟蹤(zōng)。這種非破壞性位(wèi)仲裁方法的優點在於,在網絡最終確定哪個節點被傳送前,報文的起始(shǐ)部分(fèn)已經在(zài)網絡中傳輸(shū)了,因此具(jù)有高優先級的節(jiē)點的數據傳輸沒有任何延(yán)時。

在獲得(dé)總線控製權(quán)的(de)節點發送數據過程中(zhōng),其他節點成為報文的接收節點,並且不會在總線再次空閑之前發送報文,在這(zhè)逐位的比較中,最終節點B 因為(wéi)第七位的(de)偏差丟掉了總線(xiàn)。從此單純監聽,江山就拱手讓給了節(jiē)點A 了。這就是仲裁機製

上麵17C视频說過,報文有兩種格式(shì),標準和擴展。這(zhè)裏,不同的格式仲裁場是不一樣的。標準格式下,仲裁場由11 位識別(bié)符和RTR 位組成。

但在擴展格式裏,包括29 位識別符、SRR 位、IDE 位、RTR 位。

RTR 位,Remote Tranmission Request BIT 全稱為遠程發送請(qǐng)求位。它在數據(jù)幀裏必須為顯性0 ,但在遠程幀裏為隱性1。

我暈,為什麽這麽搞呢,不急,先(xiān)留著這(zhè)個問題。

SRR 位,替代遠程請求位,SRR 是一(yī)隱性位(wèi),也就是1,它在擴展格式的標準幀RTR 位(wèi)位置,那麽標(biāo)準幀怪不得優先於擴展幀(zhēn)了,因為在(zài)傳(chuán)輸完11 位標識符(fú)之後(擴展幀的後(hòu)18 位(wèi)在(zài)最後發送,先發送(sòng)11 位標識符),輪到標(biāo)準幀的RTR 位和(hé)擴展(zhǎn)幀的SRR 位了。

這時候,標準幀的RTR 為顯性,而擴展幀SRR 為(wéi)隱性,這樣,總線自然就被標準幀占據。

同時上(shàng)麵那個問題(tí),也一目了然了,CAN 總線協議設(shè)計者,肯定是設計了數據幀優先於遠程幀。所以IDE(Identifier Extension Bit),全稱識(shí)別符擴展位,它(tā)屬於擴展格式的仲裁場

對於擴展格式,IDE位(wèi)屬於仲裁場;對於標準格(gé)式,IDE位(wèi)屬於控製場。標準(zhǔn)格式的IDE位為“顯性”,而(ér)擴展格(gé)式的IDE

位(wèi)為“隱性”。



標準格式中的數據幀(zhēn)

拓展格式中的數據幀(zhēn)

控製場

控製場(chǎng)由6個位組成,標準格式和擴展格式的控製場格式不同。標準格式裏的(de)幀包括(kuò)數據長(zhǎng)度代碼、IDE位(為顯性位)及保留位r0。擴展格式裏的幀包括數據長度代碼(mǎ)和兩個保留位:r1和r0。其保留位必須發送為顯性,但是(shì)接收器認可“顯性”和“隱性”位的任何組合。其結構如圖所示:

控製場結構(gòu)

數據長度(dù)代碼(標準格式(shì)以及(jí)擴展格式)DLC,如下表所示



數據幀長度代碼DLC

數據長(zhǎng)度代碼(mǎ)指示了數據場裏的字節數量。其中:d—“顯性”, r—“隱性”,數據幀允(yǔn)許的數據字節數為{0,1,...,7,8}。其他的數值不允許使用。

數據場

數據場由數據幀裏的發送數據組(zǔ)成。它可以(yǐ)為0~8個字節(jiē),每字節包含了8個位,首先發送最高有效位(MSB)。

循環冗餘碼CRC場

是數(shù)據通信領域中最常用的(de)一種差錯(cuò)校驗(yàn)碼,其特征是信息字(zì)段和校(xiào)驗字段(duàn)的長度(dù)可以任意選定。

CRC場包括CRC序列(CRC Sequence),其後是CRC界定(dìng)符(CRC Delimiter),結構如圖:



生成 CRC 碼的基本原理:

任意一個由(yóu)二進製位串組成的代碼都可以(yǐ)和一個係數僅為‘0’和‘1’取值的多項式一(yī)一(yī)對應。例如:代碼1010111 對應的多項式為x6+x4+x2+x+1,而多項式為x5+x3+x2+x+1 對應的代碼101111。

參考一下下麵的例題,自已再領悟一(yī)下吧!已知信息位為1101,生成多項式G(x)= x3+x+1,求CRC 碼。

要傳輸(shū)的信息序列為1101,在末尾添加所給多(duō)項式的最高次階個0,如(rú)本題(tí)為x^3,則添加3個0,變為:1101000;

由多項式G(X)=X3+X+1,得其階數為1的(de)二進製編碼為:1011;1101000對1011進行模二除法,所得到的餘數即為校驗碼,把校驗碼添加在原數據尾部即為所(suǒ)求的編碼,則實(shí)際發送的數據序列為1101001。校驗碼計算過程如圖(tú)所示:



模二除(chú)法

應答場(ACK Field)

應(yīng)答場長度為2個位,包含應答間(jiān)隙(ACK Slot)和(hé)應答界定符(ACK Delimiter),如圖所示。在ACK場(應答場)裏,發(fā)送節點發送兩個(gè)“隱性”位。

當接收器正確地接收到有效的報文,接收器就會在應答間隙(xì)(ACK Slot)期間向發送器發(fā)送一(yī)“顯性”位以示應(yīng)答。



幀結(jié)尾(wěi)

每一個數據幀(zhēn)和(hé)遠(yuǎn)程幀均由一標誌序(xù)列(liè)界定。這個標誌序列由7個“隱性”位組成。




网站地图 17C视频_17c红桃国际_17c永久隐藏入口_17c一起起草官网