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

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

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

關(guān)于CAN的高層協(xié)議J1939的基礎(chǔ)和應(yīng)用以及開發(fā)詳解

嵌入式程序員 ? 來源:CSDN技術(shù)社區(qū) ? 作者:嵌入式程序猿 ? 2021-04-19 10:17 ? 次閱讀

CAN做為應(yīng)用比較廣泛的通信總線,受到了越來越多的客戶喜歡和青睞,廣泛應(yīng)用于工業(yè)和汽車,常見的高層協(xié)議有CANopen,J1939,DeviceNet等,在公眾號(hào)曾經(jīng)分享過超過15篇有關(guān)CAN的高層協(xié)議J1939的有關(guān)內(nèi)容,今天起我們將連續(xù)分6次推文來詳細(xì)介紹CAN的高層協(xié)議J1939的基礎(chǔ)和應(yīng)用以及開發(fā),應(yīng)該算是比較全面系統(tǒng)的介紹,希望對大家有幫助,如果對你有幫助,歡迎關(guān)注嵌入式程序猿公眾號(hào)。今天我們來看第二部分?jǐn)?shù)據(jù)鏈路層的上半部分,數(shù)據(jù)鏈路層比較重要,內(nèi)容也比較多,分為上下兩部分來講。

SAE J1939通信是基于CAN通信的一種高層協(xié)議,廣泛應(yīng)用于商用車,各種卡車,重型建筑車輛,發(fā)電機(jī)組,農(nóng)業(yè)機(jī)械,森林防火車輛,以及特種車輛,現(xiàn)在也被廣泛應(yīng)用移植于工業(yè)控制?,F(xiàn)在也廣泛應(yīng)用于新能源。

SAEJ1939 協(xié)議是由汽車工程協(xié)會(huì)(SAE)定義的,基于傳輸可靠性能優(yōu)越的CAN-bus總線,常用250Kbps,500Kbps的通訊速率。在協(xié)議中,報(bào)文內(nèi)容本身做了精確的定義, SAE J1939 協(xié)議由美國SAE( Society of AutomotiveEngineers)組織維護(hù)和推廣。

今天我們來看數(shù)據(jù)鏈路層的第二部分,主要搞懂以下問題

如果一個(gè)節(jié)點(diǎn)不能處理其它的會(huì)話通信,就應(yīng)該拒絕其它節(jié)點(diǎn)的建立連接要求

網(wǎng)絡(luò)上的每個(gè)節(jié)點(diǎn)每次可以發(fā)起一個(gè)給定目標(biāo)地址的指定目標(biāo)地址連接傳送。

在一個(gè)指定時(shí)刻,一個(gè)發(fā)送者只能發(fā)送一個(gè)多包 BAM 消息

響應(yīng)者必須能識(shí)別來自多個(gè)不同發(fā)送者的多包消息,接收時(shí)不能搞混。

一個(gè)節(jié)點(diǎn)必須能夠支持同時(shí)來自于同一個(gè)源地址的一個(gè) RTS/CTS 會(huì)話和一個(gè) BAM 會(huì)話發(fā)送者和響應(yīng)者分別有自己的傳輸和接收時(shí)間要求。

44540518-9ff4-11eb-8b86-12bb97331649.jpg

44943f2a-9ff4-11eb-8b86-12bb97331649.jpg

44e6a99a-9ff4-11eb-8b86-12bb97331649.jpg

4500a368-9ff4-11eb-8b86-12bb97331649.jpg

457b9974-9ff4-11eb-8b86-12bb97331649.jpg

46023344-9ff4-11eb-8b86-12bb97331649.jpg

466e3d8c-9ff4-11eb-8b86-12bb97331649.jpg

46e42eca-9ff4-11eb-8b86-12bb97331649.jpg

473425ce-9ff4-11eb-8b86-12bb97331649.jpg

4742627e-9ff4-11eb-8b86-12bb97331649.jpg

47524874-9ff4-11eb-8b86-12bb97331649.jpg

475dff48-9ff4-11eb-8b86-12bb97331649.jpg

47c52ad8-9ff4-11eb-8b86-12bb97331649.jpg

4887be0e-9ff4-11eb-8b86-12bb97331649.jpg

48d49a1c-9ff4-11eb-8b86-12bb97331649.jpg

48eaad3e-9ff4-11eb-8b86-12bb97331649.jpg

4909078e-9ff4-11eb-8b86-12bb97331649.jpg

49598a2e-9ff4-11eb-8b86-12bb97331649.jpg

49bbb690-9ff4-11eb-8b86-12bb97331649.jpg

49c96056-9ff4-11eb-8b86-12bb97331649.jpg

49d7b8fe-9ff4-11eb-8b86-12bb97331649.jpg

這個(gè)系列已經(jīng)更新過半,收到了不少私信留言,謝謝大家的支持。
編輯:lyn

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

    關(guān)注

    57

    文章

    2760

    瀏覽量

    463993
  • J1939
    +關(guān)注

    關(guān)注

    1

    文章

    11

    瀏覽量

    10701

原文標(biāo)題:詳解CAN的高層協(xié)議(三)

文章出處:【微信號(hào):InterruptISR,微信公眾號(hào):嵌入式程序員】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    深入解析J1939-73:車輛診斷通信的標(biāo)準(zhǔn)與應(yīng)用

    和設(shè)備之間的實(shí)時(shí)數(shù)據(jù)交換。J1939基于CAN(ControllerAreaNetwork)總線技術(shù),使用29bit的擴(kuò)展標(biāo)識(shí)符和擴(kuò)展數(shù)據(jù)幀,CAN通信速率為250K
    的頭像 發(fā)表于 12-11 10:01 ?802次閱讀
    深入解析<b class='flag-5'>J1939</b>-73:車輛診斷通信的標(biāo)準(zhǔn)與應(yīng)用

    SAE J1939中英文資料

    最全的J1939中英文協(xié)議資料
    發(fā)表于 11-26 15:06 ?0次下載

    CAN總線通信協(xié)議詳解

    一、CAN總線概述 CAN總線是一種多主控制的串行通信協(xié)議,它允許多個(gè)設(shè)備共享同一通信線路,而無需中央控制單元。這種設(shè)計(jì)使得CAN總線非常適合于分布式控制系統(tǒng),如汽車電子系統(tǒng)。 二、
    的頭像 發(fā)表于 11-12 09:46 ?1293次閱讀

    CAN主站轉(zhuǎn)Profinet協(xié)議網(wǎng)關(guān)(JM-PN-CAN

    的應(yīng)用、工業(yè)控制中的應(yīng)用、智能家庭和生活小區(qū)管理中的應(yīng)用以及機(jī)器人網(wǎng)絡(luò)互聯(lián)中的應(yīng)用等等 二,捷米特JM-PN-CAN拓?fù)鋱D 三,技術(shù)參數(shù)
    的頭像 發(fā)表于 08-28 15:28 ?329次閱讀
    <b class='flag-5'>CAN</b>主站轉(zhuǎn)Profinet<b class='flag-5'>協(xié)議</b>網(wǎng)關(guān)(JM-PN-<b class='flag-5'>CAN</b>)

    CAN主站轉(zhuǎn)Profinet從站協(xié)議網(wǎng)關(guān)(JM-PN-CAN

    的應(yīng)用、工業(yè)控制中的應(yīng)用、智能家庭和生活小區(qū)管理中的應(yīng)用以及機(jī)器人網(wǎng)絡(luò)互聯(lián)中的應(yīng)用等等 二,捷米特JM-PN-CAN拓?fù)鋱D 三,技術(shù)參
    的頭像 發(fā)表于 08-17 15:47 ?250次閱讀
    <b class='flag-5'>CAN</b>主站轉(zhuǎn)Profinet從站<b class='flag-5'>協(xié)議</b>網(wǎng)關(guān)(JM-PN-<b class='flag-5'>CAN</b>)

    CAN/CAN FD/CAN XL三大總線協(xié)議解讀,是逐步替代關(guān)系嗎?

    進(jìn)入核心市場。 不過,從市場表現(xiàn)來看,目前CAN/CAN FD/CAN XL各有各的市場,并非逐步取代的關(guān)系,背后的原因是什么呢? ? CAN/CA
    的頭像 發(fā)表于 08-12 01:12 ?4497次閱讀

    CAN轉(zhuǎn)ModbusRTU協(xié)議轉(zhuǎn)化網(wǎng)關(guān)功能與配置詳解

    介紹。 一,設(shè)備主要功能 遠(yuǎn)創(chuàng)智控YC-CAN-RTU是一款用于CAN-Modbus現(xiàn)場總線與RS-232總線或 RS-485 總線之間數(shù)據(jù)轉(zhuǎn)換的協(xié)議型轉(zhuǎn)換器,支持標(biāo)準(zhǔn) Modbus RTU
    的頭像 發(fā)表于 07-25 11:55 ?616次閱讀
    <b class='flag-5'>CAN</b>轉(zhuǎn)ModbusRTU<b class='flag-5'>協(xié)議</b>轉(zhuǎn)化網(wǎng)關(guān)功能與配置<b class='flag-5'>詳解</b>

    LwIP協(xié)議棧源碼詳解—TCP/IP協(xié)議的實(shí)現(xiàn)

    電子發(fā)燒友網(wǎng)站提供《LwIP協(xié)議棧源碼詳解—TCP/IP協(xié)議的實(shí)現(xiàn).pdf》資料免費(fèi)下載
    發(fā)表于 07-03 11:22 ?3次下載

    什么是CAN總線協(xié)議?它有哪些特性和應(yīng)用?

    CAN總線協(xié)議(Controller Area Network,簡稱CAN),是一種在汽車和工業(yè)自動(dòng)化領(lǐng)域廣泛應(yīng)用的串行通信協(xié)議。自1986年由德國博世公司提出以來,
    的頭像 發(fā)表于 05-27 16:32 ?1413次閱讀

    請問ENC28J60不使用TCPIP協(xié)議可否使用?

    今天突發(fā)奇想,ENC28J60應(yīng)該是實(shí)現(xiàn)了以太網(wǎng)的物理層的。如果我只需要和自己的產(chǎn)品建立連接,是否可以自己在ENC28J60的基礎(chǔ)上自定一個(gè)協(xié)議,這樣能否達(dá)到簡便使用以太網(wǎng)物理層的目的
    發(fā)表于 05-11 07:20

    什么是CAN2.0協(xié)議

    CAN2.0協(xié)議是控制器局域網(wǎng)絡(luò)(ControllerAreaNetwork,CAN)的一種版本,也被稱為傳統(tǒng)CAN協(xié)議,由德國博世BOSC
    的頭像 發(fā)表于 03-29 08:19 ?1377次閱讀
    什么是<b class='flag-5'>CAN</b>2.0<b class='flag-5'>協(xié)議</b>?

    CAN總線實(shí)現(xiàn)高效數(shù)據(jù)通信的關(guān)鍵技術(shù)

    CAN 總線協(xié)議已經(jīng)成為汽車計(jì)算機(jī)控制系統(tǒng)和嵌入式工業(yè)控制局域網(wǎng)的標(biāo)準(zhǔn)總線,并且擁有以CAN 為底層協(xié)議專為大型貨車和重工機(jī)械車輛設(shè)計(jì)的 J1939
    發(fā)表于 03-20 11:21 ?477次閱讀
    <b class='flag-5'>CAN</b>總線實(shí)現(xiàn)高效數(shù)據(jù)通信的關(guān)鍵技術(shù)

    CAN和CANFD協(xié)議簡介(下)

    CAN和CANFD協(xié)議簡介(下)
    的頭像 發(fā)表于 02-19 12:08 ?1183次閱讀
    <b class='flag-5'>CAN</b>和CANFD<b class='flag-5'>協(xié)議</b>簡介(下)

    CAN和CANFD協(xié)議簡介(上)

    CAN和CANFD協(xié)議簡介(上)
    的頭像 發(fā)表于 01-26 08:06 ?1492次閱讀
    <b class='flag-5'>CAN</b>和CANFD<b class='flag-5'>協(xié)議</b>簡介(上)

    求助,為什么在CAN數(shù)據(jù)庫(.dbc文本文件)中找不到報(bào)文?

    我有CAN數(shù)據(jù)庫(dbc文件)。這是一個(gè)文本文件。此文件的擴(kuò)展名為 dbc。在Vector CANdb++編輯器中打開它時(shí),將填充J1939報(bào)文和CAN ID。 但是,在.dbc文本文件中找不到
    發(fā)表于 01-23 06:28