dSPACE MCAL
模組參考
dSPACE 為 V-ECU 的 SIL 測試提供一整套模擬版 MCAL(微控制器抽象層)與 Utility BSW 模組。本頁逐一說明各 MCAL 驅動模組與 dSPACE 專屬模組的定義、用途與配置要點。
MCAL(Microcontroller Abstraction Layer,微控制器抽象層)是 AUTOSAR 基礎軟體(BSW)的最底層,負責直接存取微控制器硬體,並向上層提供硬體無關的 API。在 SIL 測試中,真實硬體並不存在,因此 SystemDesk 提供 dSPACE 模擬版的 MCAL 與 Utility BSW 模組,讓 V-ECU 能在 VEOS 上以環境模型取代實體硬體進行模擬。本頁內容整理自 dSPACE 原廠 SystemDesk Manual(RLS2024-B)。
1. dSPACE MCAL 模組概觀
- 用途供 V-ECU 的 SIL 測試使用;以模擬方式抽象化 ADC、Dio、CAN、Flash 等微控制器硬體。
- 模組定義來源模組定義於
.\Bsw\ModuleDefs\dSPACE_EcuCParamDef_ViVa_3.4.arxml。 - standards遵循 AUTOSAR各驅動對應 AUTOSAR SWS 文件(如
AUTOSAR_SWS_ADCDriver、AUTOSAR_SWS_CANDriver),並含少量 dSPACE 專屬參數以支援模擬。
2. 在 AUTOSAR 分層中的定位
3. 三大模組群
模擬應用軟體的 BSW
Rte、MemMap、CanIf、Com、Cdd、Det、EcuC、EcuM、IoHwAb、LinIf、NvM、Os、PduR…
MCAL 驅動模組
Adc、Can、Dio、Eep、Eth、Fls、Gpt、Icu、Lin、Mcu、Ocu、Port、Pwm、Spi、Wdg
Utility BSW(dSPACE 專屬)
Apu、Dap、Edge、RptAccess、Rfm、Shu、SpiDev、Sfc、Sab…
4. MCAL 驅動模組一覽
| 模組 | 名稱 | 定義 |
|---|---|---|
| Adc | Analog-to-Digital Converter Driver | 初始化與控制微控制器內建 ADC;模擬類比輸入所必需。 |
| Can | CAN Bus Driver | 設定 V-ECU 的 CAN 控制器;為 CanIf 提供硬體無關 API。 |
| Dio | Digital I/O | 存取微控制器的數位 I/O 腳位與埠。 |
| Eep | EEPROM Driver | 存取內外部 EEPROM(讀/寫/抹除;支援多重實例)。 |
| Eth | Ethernet Driver | 設定 V-ECU 的乙太網路控制器。 |
| Fls | Flash Driver | 設定內外部 flash 記憶體。 |
| Gpt | General-Purpose Timer | 初始化與控制 ECU 內建通用計時器。 |
| Icu | Input Capture Unit Driver | 以 ICU 硬體解調 PWM、計數脈衝、量測頻率/占空比並產生中斷。 |
| Lin | LIN Driver | 設定 V-ECU 的 LIN 控制器。 |
| Mcu | Microcontroller Unit | 提供微控制器基本初始化等服務。 |
| Ocu | Output Compare Unit Driver | 依門檻值與環形計數器比較結果觸發動作。 |
| Port | Port Driver | 設定並初始化埠與腳位結構。 |
| Pwm | Pulse Width Modulation Driver | 設定微控制器的 PWM 訊號。 |
| Spi | SPI Handler/Driver | 管理與 EEPROM/watchdog 等裝置的 SPI 通訊;設定 on-chip SPI master。 |
| Wdg | Watchdog Driver | 設定 V-ECU 的 watchdog。 |
5. 重點模組詳解
Adc — 類比數位轉換驅動
屬 I/O driver 群組,含多個 ADC 通道設定並分組於硬體單元。關鍵設定:AdcConfigSet(一或多個 ADC 硬體單元)、ADC channel(AdcChannelResolution、上/下參考電壓 AdcChannelRefSrcVoltHigh/Low)、ADC group(AdcGroupDefinition)。AdcLowerLayerRef 可選 DAP 訊號或經 Sample and Hold Unit 讀取實體輸入。以 Dap 模組的 Update Adc Configuration 指令可為每個 ADC 通道建立 DAP 訊號。
Can — CAN 匯流排驅動
執行 CAN 通訊所需的硬體存取,為 CanIf 提供硬體無關 API。硬體物件:HTH(傳送)/HRH(接收);濾波:FULL CAN(依 CanID)/BASIC CAN;事件通知:Interrupt / Polling。關鍵設定含 CanControllerDefaultBaudrate、CanHardwareObject(BASIC/FULL、RECEIVE/TRANSMIT)。支援 CanIf AUTOSAR 4.0.1/4.1.1/4.3.0。限制:不支援 time-triggered CAN 與 Icom 控制器。
Dio — 數位 I/O
提供讀寫數位 I/O 的 API(腳位/埠結構的整體設定屬 Port 模組)。可由 Port 模組的 Generate Dio Configuration 導出,或自行匯入/建立。dSPACE 專屬參數:DioDirection(input/output)、DioRefDapSignal(連到 DAP 訊號,經 VPU port 在 VEOS 與環境模型連接)。以 Update Dap Configuration 指令可為每個 DIO 通道建立 DAP 訊號。
6. Utility BSW 模組(dSPACE 專屬)
| 模組 | 名稱 | 用途 |
|---|---|---|
| Apu | Angular Processing Unit | 模擬量測旋轉軸特定角度的硬體。 |
| Dap | Data Access Points | 將 V-ECU 對外通訊從底層通訊機制抽象化(模擬 I/O 與環境模型的橋樑)。 |
| Edge | Edge | 模擬偵測訊號邊緣的 ECU 硬體。 |
| RptAccess | Rapid Prototyping Access | 選取要 bypass 的應用軟體 runnable,並為 bypass 服務產生程式碼。 |
| — | Rapid Prototyping Service Interface | 設定 V-ECU 與 rapid prototyping 硬體的介面。 |
| Rfm | Resource File Manager | 以資源檔處理模擬中的持久性記憶體。 |
| Shu | Sample and Hold Unit | 於特定時間點取樣並保持實體輸入。 |
| SpiDev | Serial Peripheral Device | 連接使用 SPI handler/driver 的介面以模擬 SPI 硬體。 |
| Sfc | Signal-to-Frame Converter | 讓「以建模匯流排通訊」的 V-ECU 與使用訊號式通訊的環境模型/其他 V-ECU(如 SIC、FMU)或不支援的匯流排連接。 |
| Sab | Simulator Abstraction | 設定用於 SIL 測試的模擬平台。 |
7. DAP 在 MCAL 模擬中的關鍵角色
DAP 是模擬版 MCAL 與環境模型之間的橋樑。真實 MCAL 直接連硬體腳位;在 SIL 中,MCAL 驅動(如 Adc、Dio)改為透過 DAP 訊號對外,DAP 再以 VPU port 在 VEOS 中與環境模型連接。多數驅動提供 Update <模組> Configuration plug-in 指令,可自動為各通道建立對應的 DAP 訊號並設定參考(如 DioRefDapSignal、AdcLowerLayerRef)。
8. 配置與程式碼產生
- Auto Configure and Generate各模組皆可透過 SystemDesk 的此指令進行設定與產生程式碼。
- Plug-in 指令如 Generate Dio Configuration(由 Port 導出 Dio)、Update Adc / Dap Configuration(建立 DAP 訊號)。
- 模組定義檔SIL 測試用模組定義於
dSPACE_EcuCParamDef_ViVa_3.4.arxml;各模組另有對應的*_Cfg.h等產生檔。
9. 與 V-ECU / FMU 匯出的關係
這些 MCAL 與 Utility 模組共同構成可在 VEOS 上進行 SIL 模擬的 V-ECU。若目標為 FMU 匯出,SystemDesk 另提供符合 FMI 的 BSW 模組集:
| FMI 相容模組 | 用途 |
|---|---|
| FmiAd(FMI Adapter) | FMI 介面轉接。 |
| Can / Fr | CAN / FlexRay 匯流排驅動(FMI 相容模擬器)。 |
| Xcp(XCP Service) | 量測與校正服務。 |
延伸閱讀:V-ECU 與 SIL 見 TargetLink V-ECU 模擬解決方案。
原始文件出處(dSPACE RLS2024-B)
| 文件 / 章節 | 檔名 |
|---|---|
| SystemDesk Manual — Using dSPACE Basic Software Modules for SIL Testing、BSW Modules of the MCAL、Utility BSW Modules | SystemDeskManual.pdf |
| 模組定義檔(ViVa 3.4) | dSPACE_EcuCParamDef_ViVa_3.4.arxml |
| AUTOSAR SWS(各驅動對應) | AUTOSAR_SWS_*Driver(www.autosar.org) |
路徑前綴:C:\Users\Public\Acolada\Cobrili\HelpSetStorage\dSPACEPDF\RLS2024-B\en\