一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

基于AUTOSAR的CAN通訊介紹

工程師鄧生 ? 來(lái)源:汽車(chē)電子與軟件 ? 作者:糊涂振 ? 2022-09-20 18:09 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1、信號(hào)角度

從信號(hào)角度,主要想再說(shuō)明下:信號(hào)在CAN總線上是電壓形式,在軟件中是二進(jìn)制數(shù),這是怎么轉(zhuǎn)換的?信號(hào)在軟件中是如何變化的?

1.1 數(shù)模轉(zhuǎn)換

通過(guò)本系列前面文章,我們知道ECU之間通過(guò)CAN總線通訊。從信號(hào)轉(zhuǎn)換角度:模擬信號(hào)到數(shù)字信號(hào),比如接收,如圖1所示。

其具體過(guò)程為:在CAN總線上,信號(hào)表現(xiàn)為電壓形式,其具體值根據(jù)ISO11898和ISO11519標(biāo)準(zhǔn)的定義而來(lái)。然后電壓信號(hào)經(jīng)過(guò)CAN收發(fā)器轉(zhuǎn)換成數(shù)字信號(hào),即邏輯電平0和1。

接著這些邏輯電平序列將被ECU硬件單元處理,丟棄或存入寄存器。反之,發(fā)送過(guò)程其實(shí)就是一個(gè)數(shù)字信號(hào)到模擬信號(hào)的轉(zhuǎn)換過(guò)程。

pYYBAGMpkbaASI61AABto10r2q0931.jpg


圖1 CAN總線到ECU的信號(hào)轉(zhuǎn)換

這里若需掌握各個(gè)環(huán)節(jié)的細(xì)節(jié):

關(guān)于CAN總線特性,可通過(guò)ISO11898,ISO11519系列標(biāo)準(zhǔn)研究總線的電器和物理特性。

關(guān)于信號(hào)轉(zhuǎn)換實(shí)現(xiàn),可研究CAN收發(fā)器的原理與特性等。

關(guān)于寄存器存儲(chǔ),可細(xì)讀相應(yīng)的芯片手冊(cè),并動(dòng)手去配置芯片和調(diào)試代碼。

1.2 信號(hào)變化

上述的邏輯電平序列有什么規(guī)律?有什么作用?通過(guò)前面文章我們知道CAN協(xié)議標(biāo)準(zhǔn)定義了這些邏輯電平序列,使這些數(shù)據(jù)有了實(shí)際意義,其實(shí)就是一些數(shù)據(jù)幀,遙控幀等的信息。

通過(guò)配置CAN硬件單元,比如利用IDE的數(shù)據(jù)就可以決定ECU是否接收某個(gè)CanId的數(shù)據(jù),進(jìn)而再準(zhǔn)確將接收的相應(yīng)數(shù)據(jù)存入相應(yīng)的寄存器,比如IDE存入IDE相關(guān)的寄存器,DLC存入長(zhǎng)度相關(guān)的寄存器。

當(dāng)軟件通過(guò)硬件接口訪問(wèn)相應(yīng)的寄存器,就可以讀取到對(duì)應(yīng)的數(shù)據(jù),比如長(zhǎng)度,數(shù)據(jù)等信息。這樣軟件按照OSI參考模型的架構(gòu)將這些讀取的數(shù)據(jù)以協(xié)議數(shù)據(jù)單元(PDU)格式逐層向上傳輸,直到將PDU解包成報(bào)文通訊協(xié)議規(guī)定的信號(hào)形式,整個(gè)過(guò)程如下圖2所示。

pYYBAGMpkc2AOeAhAAEH3lCZWwc387.jpg

圖2 CAN通訊的信號(hào)變化過(guò)程 這里若研究各個(gè)環(huán)節(jié)的實(shí)現(xiàn):

關(guān)于CAN幀定義,可細(xì)讀CAN協(xié)議和ISO11898-1標(biāo)準(zhǔn)。

關(guān)于寄存器的存儲(chǔ)與提取,可研究相應(yīng)的芯片手冊(cè)。

關(guān)于CAN通訊架構(gòu),可參考OSI參考模型,ISO17356和AUTOSAR文檔等。

2、軟硬件角度

從軟硬件角度,要實(shí)現(xiàn)怎么樣CAN通訊功能,就決定了要用怎樣的硬件和軟件。那么從軟件工程師角度,是怎么看硬件?又是怎么看軟件的?

2.1 硬件

從軟件工程師角度,主要是根據(jù)芯片手冊(cè),ECU原理圖和其他驅(qū)動(dòng)的用戶手冊(cè)來(lái)助于對(duì)軟件的理解,比如了解CAN的硬件連接,即從總線連接到哪個(gè)PIN,PIN連接到什么收發(fā)器,收發(fā)器連接到芯片的哪些引腳?;蛘吡私馓崛〖拇嫫鲾?shù)據(jù),要對(duì)芯片進(jìn)行的哪些配置,怎么配置等?;蛘吒钊氲鼐褪怯布匦宰兓瘯?huì)對(duì)軟件產(chǎn)生怎樣的影響等等。

2.2 軟件

從前面文章我們知道,先明確了一個(gè)清晰的軟件架構(gòu),如下圖3的中間部分,再?gòu)目刂屏骱蛿?shù)據(jù)流考慮。若采用一個(gè)極其簡(jiǎn)單的架構(gòu),如圖3最左側(cè)部分,從寄存器提取完數(shù)據(jù),直接給應(yīng)用層去解析。

但這樣的架構(gòu)顯然滿足不了軟件的安全性,可移植性,可重用性和可擴(kuò)展性等要求,所以為了滿足這些要求,會(huì)采用基于OSI參考模型的AUTOSAR架構(gòu),如圖3最右側(cè)部分,只允許CAN Driver 訪問(wèn)硬件,向上只對(duì)接CAN Interface,與上層的模塊通訊均由CAN Interface統(tǒng)一管理,通過(guò)PduR路由到更多的上層模塊,減少接口等等。

當(dāng)然前面文章出于內(nèi)容更易懂且精煉的考慮,采用了圖3中間部分的基于OSI參考模型的AUTOSAR架構(gòu)的簡(jiǎn)約版。

poYBAGMpkeKARYI8AAEYebpCsl0163.jpg

圖3 CAN通訊的軟件架構(gòu),引自[1]

這個(gè)軟件架構(gòu)的CAN通訊控制流如下圖4所示。前面文章已經(jīng)大體上介紹了CAN發(fā)送與接收的控制過(guò)程,比如不同模塊如何進(jìn)行數(shù)據(jù)傳輸,同一模塊中數(shù)據(jù)傳輸所需具備的條件。另外也介紹了這些過(guò)程所涉及的接收通知,發(fā)送,發(fā)送確認(rèn)的相關(guān)函數(shù)與動(dòng)作。抽象地講就是實(shí)現(xiàn)一個(gè)功能需先要以一定的時(shí)序組織不同的模塊,然后各個(gè)模塊要滿足各自一定的條件才去采取執(zhí)行某些活動(dòng),最后考慮這些活動(dòng)如何具體地一步一步實(shí)施。

pYYBAGMpkfeADnLTAACpfpTaY_o486.jpg

圖4

當(dāng)然通過(guò)控制流不難發(fā)現(xiàn),數(shù)據(jù)流也極其重要?;贠SI參考模型,協(xié)議數(shù)據(jù)單元(PDU)在不同的層會(huì)有不同的名字,比如數(shù)據(jù)鏈路層的PDU叫L-PDU,網(wǎng)絡(luò)層的PDU叫N-PDU,交互層的PDU叫I-PDU。我們根據(jù)這些PDU和其他信息的映射關(guān)系,鏈接關(guān)系,就可構(gòu)建起整個(gè)CAN通訊功能的數(shù)據(jù)流,類(lèi)似于圖5。

這樣使得我們能更好理解AUTOSAR配置工具,比如VECTOR或EB工具配置內(nèi)容的設(shè)置和鏈接關(guān)系;也能更深入AUTOSAR的CAN通訊實(shí)現(xiàn)原理與方法,比如硬件的訪問(wèn)機(jī)制,從L-PDU到N-PDU到I-PDU的映射邏輯等。

pYYBAGMpkhiANhFdAAEa6MWkdaY177.jpg
poYBAGMpkh6AYIbfAACwb_tsZB4456.jpg

圖5 PDU的傳輸,引自[1]

這里若想研究軟件的各個(gè)模塊,可根據(jù)ISO11898-1, ISO17356-4和相關(guān)AUTOSAR文檔。

3、功能視角

功能需求決定了硬件和軟件,所以先看軟件實(shí)現(xiàn)了怎么樣的功能,然后再看軟件具體是怎樣實(shí)現(xiàn)的。正如目前文章介紹的只是最常見(jiàn)的CAN通訊發(fā)送與接收功能,沒(méi)有考慮通訊錯(cuò)誤的情況,也沒(méi)有考慮總線關(guān)閉的情況。為了完善CAN通訊基本功能,也為了強(qiáng)化CAN通訊功能,下面將大概列舉出來(lái),也算是預(yù)告下后面文章的內(nèi)容。

對(duì)于CAN通訊錯(cuò)誤的情況,CAN協(xié)議標(biāo)準(zhǔn)定義了一套完成的錯(cuò)誤處理機(jī)制。比如: 針對(duì)總線信號(hào)有定義錯(cuò)誤幀,下圖6所示。

poYBAGMpklaAFxaEAACbtXE-Z90093.jpg

圖6 錯(cuò)誤幀定義,引自[2]

針對(duì)總線通訊單元有定義主動(dòng)錯(cuò)誤,被動(dòng)錯(cuò)誤和總線關(guān)閉狀態(tài),如圖7所示。


poYBAGMpkm-AWnXNAAC2D6I8YBs151.jpg

圖7 單元的錯(cuò)誤狀態(tài),引自[2]

針對(duì)CAN通訊網(wǎng)絡(luò)有定義無(wú)通訊模式,靜默模式,完全通訊模式,如圖8所示。


poYBAGMpko6AGbw5AACW9wMVmUc358.jpg

圖8 CanSM狀態(tài)機(jī),引自[3]

對(duì)于CAN數(shù)據(jù)幀數(shù)據(jù)長(zhǎng)度不夠的情況,有提出一種更靈活的CAN數(shù)據(jù)幀,即CANFD。


poYBAGMpkqqAYYLDAAFtK34PXDI366.jpg

圖9 CANFD概念,引自[4]

對(duì)于CAN通訊網(wǎng)絡(luò)能被喚醒的情況,如下圖10所示。

pYYBAGMpksWAJiLMAACzt1uKLHA069.jpg

圖10 具備喚醒的CAN網(wǎng)絡(luò)示意,引自[5]

就先列出這些典型的CAN通訊功能,通過(guò)這些新功能不難發(fā)現(xiàn):為了應(yīng)對(duì)日益增加的功能需求,不管是針對(duì)個(gè)人還是企業(yè),硬件還是軟件,其實(shí)都需要不斷地進(jìn)行更新和強(qiáng)化。

到此我們就從3個(gè)視角既回顧了CAN通訊的基本發(fā)送與接收功能,也提出了CAN通訊的新功能,為了讓大家更加全面且系統(tǒng)地了解CAN通訊功能,后面文章將在CAN發(fā)送與接收的主樹(shù)干上繼續(xù)生枝發(fā)葉。



審核編輯:劉清

聲明:本文內(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)投訴
  • 收發(fā)器
    +關(guān)注

    關(guān)注

    10

    文章

    3673

    瀏覽量

    107961
  • AUTOSAR
    +關(guān)注

    關(guān)注

    10

    文章

    380

    瀏覽量

    22669
  • can通訊
    +關(guān)注

    關(guān)注

    1

    文章

    31

    瀏覽量

    10989

原文標(biāo)題:從3個(gè)視角談CAN通訊

文章出處:【微信號(hào):智能汽車(chē)電子與軟件,微信公眾號(hào):智能汽車(chē)電子與軟件】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    如何解決CAN通訊故障?原因分析與解決方法全攻略

    在日常工作中,我們經(jīng)常收到客戶的反饋,他們表示CAN卡無(wú)法正常通訊,這給工作帶來(lái)了諸多不便。今天,就讓我們深入探討一下導(dǎo)致CAN通訊失敗的常見(jiàn)原因,以及相應(yīng)的解決方法。單個(gè)
    的頭像 發(fā)表于 06-16 11:39 ?428次閱讀
    如何解決<b class='flag-5'>CAN</b><b class='flag-5'>通訊</b>故障?原因分析與解決方法全攻略

    CAN報(bào)文流程解析

    CAN報(bào)文流程解析,直流充電樁上的CAN通訊解析過(guò)程
    發(fā)表于 03-24 14:03 ?1次下載

    使用STM32H7的FDCAN通訊,為什么CAN1會(huì)收到CAN2的幀ID,CAN2也會(huì)收到CAN1的?

    使用STM32H7的FDCAN通訊,請(qǐng)問(wèn)為什么CAN1會(huì)收到CAN2的幀ID,CAN2也會(huì)收到CAN1的?
    發(fā)表于 03-14 10:33

    AUTOSAR通信對(duì)自動(dòng)駕駛的影響 AUTOSAR通信與嵌入式系統(tǒng)設(shè)計(jì)

    AUTOSAR(Automotive Open System Architecture)通信對(duì)自動(dòng)駕駛的影響深遠(yuǎn),它不僅優(yōu)化了汽車(chē)電子系統(tǒng)的通信結(jié)構(gòu),還提高了自動(dòng)駕駛系統(tǒng)的安全性和可靠性。同時(shí)
    的頭像 發(fā)表于 12-17 15:09 ?721次閱讀

    AUTOSAR通信與網(wǎng)絡(luò)安全 AUTOSAR通信在車(chē)輛中的應(yīng)用

    隨著汽車(chē)行業(yè)的發(fā)展,車(chē)輛的電子化和智能化水平不斷提高,這使得車(chē)輛的通信系統(tǒng)變得日益復(fù)雜。AUTOSAR(AUTomotive Open System ARchitecture)是一個(gè)全球性的汽車(chē)軟件
    的頭像 發(fā)表于 12-17 15:06 ?919次閱讀

    AUTOSAR中通信堆棧的配置 AUTOSAR通信模塊測(cè)試方法

    AUTOSAR(AUTomotive Open System ARchitecture)是一個(gè)全球性的汽車(chē)軟件架構(gòu)合作伙伴計(jì)劃,旨在創(chuàng)建并建立一個(gè)開(kāi)放的標(biāo)準(zhǔn)化軟件架構(gòu),以簡(jiǎn)化汽車(chē)電子控制單元(ECU
    的頭像 發(fā)表于 12-17 15:01 ?989次閱讀

    AUTOSAR通信框架的優(yōu)勢(shì) AUTOSAR通信實(shí)例與應(yīng)用場(chǎng)景

    AUTOSAR通信框架的優(yōu)勢(shì) AUTOSAR(AUTomotive Open System ARchitecture)是一個(gè)全球性的汽車(chē)軟件架構(gòu)合作伙伴計(jì)劃,旨在創(chuàng)建并建立一個(gè)開(kāi)放的標(biāo)準(zhǔn)化軟件架構(gòu)
    的頭像 發(fā)表于 12-17 14:58 ?1008次閱讀

    AUTOSAR通信與CAN協(xié)議的關(guān)系

    的概念,允許應(yīng)用層組件(如軟件組件和ECU抽象層)通過(guò)定義良好的接口進(jìn)行通信。 1. 通信服務(wù): AUTOSAR提供了一系列通信服務(wù),包括復(fù)雜驅(qū)動(dòng)通信(COM)、網(wǎng)絡(luò)管理(NM)、診斷通信(DCM)和CAN通信(CAN)。這些服
    的頭像 發(fā)表于 12-17 14:57 ?999次閱讀

    AUTOSAR通信組件介紹 AUTOSAR通信層功能分析

    AUTOSAR通信組件介紹 AUTOSAR(AUTomotive Open System ARchitecture)是一個(gè)全球性的汽車(chē)軟件架構(gòu)合作伙伴計(jì)劃,旨在創(chuàng)建和建立一個(gè)開(kāi)放的標(biāo)準(zhǔn)化軟件架構(gòu),以
    的頭像 發(fā)表于 12-17 14:55 ?1481次閱讀

    AUTOSAR通信協(xié)議解析 如何實(shí)現(xiàn)AUTOSAR通信

    AUTOSAR(Automotive Open System Architecture)即汽車(chē)開(kāi)放系統(tǒng)架構(gòu),該架構(gòu)支持汽車(chē)電子控制單元(ECU)之間的通信,實(shí)現(xiàn)了高度模塊化和可重用性。AUTOSAR
    的頭像 發(fā)表于 12-17 14:54 ?2834次閱讀

    CAN總線通信原理介紹 CAN總線模塊選擇指南

    于工業(yè)自動(dòng)化、醫(yī)療設(shè)備、船舶系統(tǒng)等領(lǐng)域。 CAN總線通信原理介紹 1. CAN總線概述 CAN總線是一種多主控制的串行通信協(xié)議,它允許多個(gè)設(shè)備共享同一通信線路,實(shí)現(xiàn)數(shù)據(jù)的實(shí)時(shí)傳輸。
    的頭像 發(fā)表于 11-21 10:21 ?2410次閱讀

    快速了解CAN通訊原理及應(yīng)用

    一張圖看懂CAN總線的原理 圖1 CAN通信原理 參考上圖,簡(jiǎn)單來(lái)說(shuō)CAN總線就如兩根黃線,通信的原理就好比開(kāi)一個(gè)電話會(huì)議,大家都同時(shí)撥進(jìn)來(lái),然后有各種不同的狀態(tài),比如:一個(gè)人說(shuō)話,其他人聽(tīng);或者
    的頭像 發(fā)表于 11-19 10:16 ?2507次閱讀
    快速了解<b class='flag-5'>CAN</b><b class='flag-5'>通訊</b>原理及應(yīng)用

    AUTOSAR解決方案 — INTEWORK-EAS-AP

    經(jīng)緯恒潤(rùn)自主研發(fā)的Adaptive AUTOSAR平臺(tái)產(chǎn)品, 遵循AUTOSAR Adaptive R19-11和R22-11規(guī)范, 使用C++11、C++17語(yǔ)言開(kāi)發(fā)??赏ㄟ^(guò)極易上手的自研工具配置,實(shí)現(xiàn)AUTOSAR AP協(xié)議
    的頭像 發(fā)表于 11-06 16:11 ?1205次閱讀
    <b class='flag-5'>AUTOSAR</b>解決方案 — INTEWORK-EAS-AP

    CAN時(shí)鐘--位時(shí)間介紹#CAN #CANoe

    CAN
    北匯信息POLELINK
    發(fā)布于 :2024年10月29日 14:11:09