汽车电子学习笔记---AutoSAR概述
汽車電子學習筆記—AutoSAR概述
- 1、概述
Automotive Open System ARchitecture,汽車開放系統架構
-
2、架構
1)架構圖
2)詳細描述 -
應用軟件層(AppL)
由一個個SWC組成的,如車窗,鎖,車燈等,每個SWC咱們可以理解為一個.c文件
-
實時運行環境(RTE)
1)可以理解成一個中間層,負責各模塊中轉調用和管理,將BSW和SWC做隔絕,使SWC與ECU的映射無關
2)將一個SWC的信息通過RTE連接到其他SWC或者BSW上
4)在Vector的工具鏈中,RTE是自動生成的
5)作用:- 提供 跨ECU / ECU內部 的通信管理,實現SWC之間的通信
- 提供 對runnable的管理功能(觸發、喚醒等,簡單說就是runnable需要映射到Task上運行嘛,而這個映射就是通過RTE具體實現的)
- RTE就是VFB(虛擬功能總線)的具體實現
- 配置OS的一部分(tasks, events, alarms)
- 抽象了OS,防止SWC直接訪問OS和BSW
-
基礎軟件層(BSW)
a)硬件抽象層(MCAL)
硬件抽象層又叫MCAL,就是將芯片的寄存器操作都封裝成一個AutoSAR規定的統一的庫Api,或者說將芯片上的功能都封裝稱一個一個的AutoSAR規定定義的API函數,供上層調用。- 目的:使上層軟件與微處理器型號無關
- 功能:包含MCU中內部外設的驅動和使用MCU內存映射的外部設備的驅動
b)ECU抽象層
對ECU上包括主芯片在內的所有設備的封裝,這些設備其實也是要通過主芯片控制的,如外置存儲,外置看門狗等,需要和主芯片相連接,由主芯片的接口去配置它。因此,其底層還是需要MCAL的支持- 目的:使上層軟件與ECU硬件設計無關
- 功能:包含ECU板上外部設備的驅動和內部設備與外部設備的接口(I/O)
c)服務層
將所有與硬件相關的功能都抽象成一個具體應用服務,如通信,這里就將CAN、I2C和串口等一系列的通信統一抽象稱COM通信,應用層可以無需知道該通信具體是走哪種通信方式- 目的:提供給應用程序可用的服務
- 功能:服務層里是包含操作系統的功能、車輛網絡通信管理服務、存儲器服務(NVRAM管理)、診斷服務(包括UDS通信、錯誤存儲和故障處理)、ECU狀態管理,模式管理、邏輯和時間程序流監控(Wdg管理器)、密碼服務(密碼服務管理)、調度管理(Schedule
Manager) 功能劃分:系統服務、存儲器服務、通信服務
d)復雜驅動
又稱為CDD,主要工作是將AutoSAR未定義的一些功能封裝起來,給應用層提供接口來調用這些功能- 目的:提供復雜傳感器和執行器的驅動
- 功能:重要的應用模塊可以直接訪問硬件資源,例如: 噴油量控制, 胎壓監測
3)詳細架構圖
4)工具
DaVinci Developer: 主要用來設計AppL的程序架構
DaVinci Configurator pro: 主要用來配置BSW和自動生成RTE的
5)接口類型
- Send/Receiver(S/R)接口:傳輸數據。通過RTE傳輸數據,并且通過RTE管理數據的傳輸,避免數據出問題
- Client/Server(C/S)接口: 提供操作。就是Server提供函數供Client調用,可以同步或異步調用
6)SWC
應用層的SWC:燈,門鎖,車窗…
BSW中的SWC:IO硬件抽象層(IoHwAb)、復雜驅動(Cdd)
7)Runnable
- Runnable就是SWC中的入口函數,DaVinci軟件生成的時候,Runnable是空函數,需要手動添加代碼來實現其實際的功能
- Runnable實際是被task調用,具體可以在rte.c中查看到各個swc的runnable,被不同時間的task調用
-
一個SWC可以配置多個不同時間的runnable
不同SWC之間的通信,無論是ECU內部還是ECU之間,都不會遇到數據一致性問題,因為RTE會負責保證數據一致性。
而同一個SWC,運行在不同task的runnable可能存在數據不一致性問題,解決辦法:
a)專用區域(Exclusive Areas )
b)內部變量(Inter-runnable variables)
-
Runnables的觸發條件
a)RTE給runnables提供觸發條件,也就是runnable在設計的時候,需要有觸發條件,不然無法運行
b)AutoSAR中主要規定了以下一些觸發條件(DaVinci軟件中的配置):初始化事件:初始化自動觸發
定時器事件:給一個周期定時器,時間到了就觸發
接收數據事件(S/R):Receiver Port 一旦收到數據,就觸發
接收數據錯誤事件(S/R)
數據發送完成事件(S/R):Send Port 發送完成,就觸發
操作調用事件(C/S):當調用到了該函數的時候
異步服務返回事件(C/S)
模式切換事件
模式切換應答事件c)DaVinci軟件中的配置項
總結
以上是生活随笔為你收集整理的汽车电子学习笔记---AutoSAR概述的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: google之admob
- 下一篇: 文具行业调研报告 - 市场现状分析与发展