1.工具安裝
1)下載 Keil MDK v5.37 并將其安裝在您的 Windows PC 上(如果還沒有的話)。
2)確保在 MDK 中激活MDK-Professional Edition,因為這是運行 AVH 模型所必需的。如果 MDK-Professional 許可證不可用,您可以申請評估許可證。
2.項目配置
Arm 虛擬硬件 CPU 的 MDK 項目中需要特別注意兩個重要的配置區(qū)域:
1)項目中的目標選擇。
2)在項目中運行和調試配置。
下表列出了 Arm 虛擬硬件支持的 Cortex-M 內核、相應的設備名稱、具有設備支持的 CMSIS Pack 以及 MDK 提供的仿真模型。
Arm Cortex-M 內核 | AVH設備名稱 | 帶有設備定義的 CMSIS 包 | MDK中的虛擬硬件模型 | 描述 |
Cortex-M0 | CMSDK_CM0_VHT | Keil.V2M-MPS2_CMx_BSP v1.8.0 | VHT_MPS2_Cortex-M0.exe | 具有 Cortex-M0 內核的 CPU |
Cortex-M0+ | CMSDK_CM0plus_VHT | Keil.V2M-MPS2_CMx_BSP v1.8.0 | VHT_MPS2_Cortex-M0plus.exe | 具有 Cortex-M0+ 內核的 CPU |
Cortex-M3 | CMSDK_CM3_VHT | Keil.V2M-MPS2_CMx_BSP v1.8.0 | VHT_MPS2_Cortex-M3.exe | 具有 Cortex-M3 內核的 CPU |
Cortex-M4 | CMSDK_CM4_VHT | Keil.V2M-MPS2_CMx_BSP v1.8.0 | VHT_MPS2_Cortex-M4.exe | 具有 Cortex-M4 內核的 CPU |
Cortex-M4,F(xiàn)P | CMSDK_CM4_FP_VHT | Keil.V2M-MPS2_CMx_BSP v1.8.0 | VHT_MPS2_Cortex-M4.exe | 具有 Cortex-M4 內核和浮點單元 (FPU) 支持的 CPU |
Cortex-M7 | CMSDK_CM7_VHT | Keil.V2M-MPS2_CMx_BSP v1.8.0 | VHT_MPS2_Cortex-M7.exe | 具有 Cortex-M7 內核的 CPU |
Cortex-M7, FP(SP) | CMSDK_CM7_SP_VHT | Keil.V2M-MPS2_CMx_BSP v1.8.0 | VHT_MPS2_Cortex-M7.exe | 具有 Cortex-M7 內核和單精度 FPU 支持的 CPU |
Cortex-M7, FP(DP) | CMSDK_CM7_DP_VHT | Keil.V2M-MPS2_CMx_BSP v1.8.0 | VHT_MPS2_Cortex-M7.exe | 具有 Cortex-M7 內核和雙精度 FPU 支持的 CPU |
Cortex-M23 | IOTKit_CM23_VHT | Keil.V2M-MPS2_IOTKit_BSP v1.5.0 | VHT_MPS2_Cortex-M23.exe | 具有 Cortex-M23 內核的 CPU |
Cortex-M33 | IOTKit_CM33_VHT | Keil.V2M-MPS2_IOTKit_BSP v1.5.0 | VHT_MPS2_Cortex-M33.exe | 具有 Cortex-M33 內核的 CPU |
Cortex-M33,F(xiàn)P | IOTKit_CM33_FP_VHT | Keil.V2M-MPS2_IOTKit_BSP v1.5.0 | VHT_MPS2_Cortex-M33.exe | 具有 Cortex-M33 內核和浮點單元 (FPU) 支持的 CPU |
Cortex-M55 | SSE-300-MPS3 | ARM.V2M_MPS3_SSE_300_BSP v1.2.0 | VHT_MPS3_Corstone_SSE-300.exe VHT_Corstone_SSE-300_Ethos-U55.exe VHT_Corstone_SSE-300_Ethos-U65.exe | 帶有 Cortex-M55 的 Corstone-300 SoC。 使用相同的設備定義,但應根據(jù)所需的 microNPU 選擇型號(無、Ethos-U55 或 Ethos-U65) |
Cortex-M85 | SSE-310-MPS3 | 還不可用 | VHT_Corstone_SSE-310.exe | 具有 Cortex-M85 內核的 CPU |
注:虛擬硬件模型 可以在MDK 安裝目錄中的/ARM/VHT/文件夾中找到,例如C:/Keil_v5/ARM/VHT/.
3.目標選擇
AVH 設備支持使用與實際硬件目標相同的 CMSIS 原則實現(xiàn),并在CMSIS Pack和CMSIS-Core(M)中進行了說明。
打開現(xiàn)有 MDK 項目或從 .cprj 文件導入它時,系統(tǒng)會詢問您是否應安裝項目所需的任何缺失包。如果您同意,則項目中使用的目標設備的必要設備定義包也將自動安裝。
創(chuàng)建新項目或更改現(xiàn)有項目中的目標時,您需要選擇 AVH 目標,如下所示:
安裝帶有目標設備定義的 CMSIS 包(如果尚不存在):
啟動Pack Installer實用程序。
在Devices選項卡中展開ARM部分并選擇目標 Cortex-M 內核。
在設備特定類別下的包選項卡中,根據(jù)項目配置中的表選擇實現(xiàn)所需 AVH 設備的目標 CMSIS 包。
按操作字段中的安裝或更新按鈕以安裝最新版本。例如對于 Arm Cortex-M4:

觀察按鈕狀態(tài)更改為Up to date并返回 μVision 中的項目。
選擇 AVH 設備作為項目中的目標:
在項目中打開Options for target...對話框并選擇Device選項卡。
在設備供應商列表中展開ARM組。
展開目標 Cortex-M 內核的組。
在列表中,根據(jù)Project Configuration中的表格選擇目標設備,然后按OK。
例如對于 Arm Cortex-M4:

4.運行和調試配置
執(zhí)行以下步驟以在 AVH 設備上配置 MDK 項目的執(zhí)行和調試:
打開Options for Target...對話框并導航到Debug選項卡。
在Use:下拉菜單中選擇Models Debugger。
確切名稱因目標設備內核而略有不同:
適用于Cortex-M0/M0+/M3/M4/M7 設備的型號 Cortex-M 調試器
適用于 Cortex-M23/M33/M55/M85 的型號 ARMv8-M 調試器。
例如對于帶有 Cortex-M55 內核的 Corstone-300:

單擊設置按鈕。這將打開相應的 Models Target Driver Setup_ 對話框。
填寫以下字段很重要:
Command:應包含對應于所選 AVH 設備的 AVH 模型可執(zhí)行文件的路徑。請參閱項目配置中的表格。
Arguments:可用于指定要與模型執(zhí)行一起使用的其他FVP 命令行選項。
Target:指定要用于執(zhí)行的 CPU。單擊瀏覽按鈕 (...) 并選擇目標上可用的目標 CPU。
Configuration File:指向帶有模型配置參數(shù)的文件(通過-f選項傳遞給模型可執(zhí)行文件)。
Corestone-300 的正確配置如下:

Fast Models Debug Driver Configuration詳細解釋了配置對話框。
5.項目導出
使用 Arm 虛擬硬件云環(huán)境構建程序需要通用.cprj 格式。因此,保持 MDK 項目文件和cprj文件同步很重要。為此,在 MDK 項目中保存修改后,轉到 μVision 菜單Project?-?Export并選擇Save project to CPRJ format。
6.程序構建和調試
AVH的項目構建和調試可以通過與任何其他 Keil MDK 項目類似的方式完成:
按μVision 工具欄中的Rebuild按鈕(或使用F7熱鍵)。
從 μVision 工具欄(或使用Ctrl-F5)啟動調試會話。
像往常一樣使用 μVision 功能調試項目。有關用戶界面和調試功能的詳細信息,請參閱μVision 用戶指南。
更多嵌入式咨詢,請關注“億道電子”公眾號。
