TECH ARTICLE
EB tresos Classic AUTOSAR:
EB tresos Classic AUTOSAR:
基礎軟體 (BSW) 基礎技術解析
深入探討 AUTOSAR 軟體架構中基礎軟體 (BSW) 層的重要部分,包含通訊堆疊與配置原理,協助您理解車輛網路通訊的標準化與模組化設計。
本篇文章基於 Elektrobit 提供的「EB tresos Classic AUTOSAR BSW-Communication stack 基礎培訓」影片內容整理。影片介紹了 AUTOSAR 軟體架構中基礎軟體(BSW)層的重要部分——通訊堆疊(Communication stack)及其配置原理概述,與匯流排無關的 BSW 模組和匯流排專用的 BSW 子棧,可以幫助您理解並實現車輛網路通訊的標準化和模組化設計,從而創建、設計和實現特定 ECU 的功能,使您能夠開發變得簡單高效。
1. BSW 在架構中的定位
在 AUTOSAR 分層架構中,基礎軟體 (Basic Software, BSW) 位於運行時環境 (RTE) 之下,直接與微控制器 (MCU) 硬體互動。它的主要任務是為上層應用提供標準化、與硬體無關的服務。
2. BSW 的四個子分層
影片中強調了 BSW 內部由四個主要部分組成,這也是配置 EB tresos 時的核心模組:
| 分層名稱 | 縮寫 | 核心功能 | 範例模組 |
|---|---|---|---|
| 服務層 | Services | 提供作業系統、網路管理、記憶體管理及診斷服務。 | OS, DCM, NvM |
| ECU 抽象層 | ECU Abstraction | 中間層,將硬體特定的埠(Pins)轉化為邏輯信號。 | CanIf, PduR |
| 微控制器抽象層 | MCAL | 最底層,直接驅動 MCU 暫存器,實現硬體無關性。 | Can, Spi, Dio |
| 複雜驅動程序 | CDD | 處理對時間極其敏感或非標準的特殊硬體功能。 | PWM 輸出, 特殊感測 |
3. BSW 的配置與生成流程
在使用 EB tresos 工具開發時,BSW 的實現遵循以下邏輯:
01
模組選擇
根據項目需求(如是否需要 CAN 通訊、是否需要存取 EEPROM)選擇對應的 BSW 模組。
02
參數配置
設定每個模組的具體參數(例如波特率、定時器週期、記憶體位址)。
03
程式碼生成
工具會根據配置生成符合規範的 C 語言原始碼,這些程式碼會與 RTE 連結,最後編譯成 ECU 的固件。
4. 關鍵技術要點
-
hardware
硬體抽象化: 透過 MCAL 層,當更換不同品牌的晶片(如從 Infineon 換到 NXP)時,上層應用程式碼幾乎不需要修改。
-
api
標準化介面: 所有 BSW 模組都遵循 AUTOSAR 規定的 API 介面,確保了不同供應商軟體模組之間的互操作性。