【方輝專欄】Arm 虛擬硬件 (AVH) 與Keil MDK一起用于開發(fā)和調(diào)試嵌入式應(yīng)用程序
2022-07-12
1.工具安裝1)下載 Keil MDK v5.37 并將其安裝在您的 Windows PC 上(如果還沒有的話)。2)確保在 MDK 中激活MDK-Professional Edition,因為這是運行 AVH 模型所必需的。如果 MDK-Professional 許可證不可用,您可以申請評估許可證。 2.項目配置Arm 虛擬硬件 CPU 的 MDK 項目中需要特別注意兩個重要的配置區(qū)域:1)項目中的目標(biāo)選擇。2)在項目中運行和調(diào)試配置。下表列出了 Arm 虛擬硬件支持的 Cortex-M 內(nèi)核、相應(yīng)的設(shè)備名稱、具有設(shè)備支持的 CMSIS Pack 以及 MDK 提供的仿真模型。Arm Cortex-M 內(nèi)核AVH設(shè)備名稱帶有設(shè)備定義的 CMSIS 包MDK中的虛擬硬件模型描述Cortex-M0CMSDK_CM0_VHTKeil.V2M-MPS2_CMx_BSPv1.8.0VHT_MPS2_Cortex-M0.exe具有 Cortex-M0 內(nèi)核的 CPUCortex-M0+CMSDK_CM0plus_VHTKeil.V2M-MPS2_CMx_BSPv1.8.0VHT_MPS2_Cortex-M0plus.exe具有 Cortex-M0+ 內(nèi)核的 CPUCortex-M3CMSDK_CM3_VHTKeil.V2M-MPS2_CMx_BSPv1.8.0VHT_MPS2_Cortex-M3.exe具有 Cortex-M3 內(nèi)核的 CPUCortex-M4CMSDK_CM4_VHTKeil.V2M-MPS2_CMx_BSPv1.8.0VHT_MPS2_Cortex-M4.exe具有 Cortex-M4 內(nèi)核的 CPUCortex-M4,F(xiàn)PCMSDK_CM4_FP_VHTKeil.V2M-MPS2_CMx_BSPv1.8.0VHT_MPS2_Cortex-M4.exe具有 Cortex-M4 內(nèi)核和浮點單元 (FPU) 支持的 CPUCortex-M7CMSDK_CM7_VHTKeil.V2M-MPS2_CMx_BSPv1.8.0VHT_MPS2_Cortex-M7.exe具有 Cortex-M7 內(nèi)核的 CPUCortex-M7, FP(SP)CMSDK_CM7_SP_VHTKeil.V2M-MPS2_CMx_BSPv1.8.0VHT_MPS2_Cortex-M7.exe具有 Cortex-M7 內(nèi)核和單精度 FPU 支持的 CPUCortex-M7, FP(DP)CMSDK_CM7_DP_VHTKeil.V2M-MPS2_CMx_BSPv1.8.0VHT_MPS2_Cortex-M7.exe具有 Cortex-M7 內(nèi)核和雙精度 FPU 支持的 CPUCortex-M23IOTKit_CM23_VHTKeil.V2M-MPS2_IOTKit_BSP v1.5.0VHT_MPS2_Cortex-M23.exe具有 Cortex-M23 內(nèi)核的 CPUCortex-M33IOTKit_CM33_VHTKeil.V2M-MPS2_IOTKit_BSP v1.5.0VHT_MPS2_Cortex-M33.exe具有 Cortex-M33 內(nèi)核的 CPUCortex-M33,F(xiàn)PIOTKit_CM33_FP_VHTKeil.V2M-MPS2_IOTKit_BSP v1.5.0VHT_MPS2_Cortex-M33.exe具有 Cortex-M33 內(nèi)核和浮點單元 (FPU) 支持的 CPUCortex-M55SSE-300-MPS3ARM.V2M_MPS3_SSE_300_BSP v1.2.0VHT_MPS3_Corstone_SSE-300.exeVHT_Corstone_SSE-300_Ethos-U55.exeVHT_Corstone_SSE-300_Ethos-U65.exe帶有 Cortex-M55 的 Corstone-300 SoC。使用相同的設(shè)備定義,但應(yīng)根據(jù)所需的 microNPU 選擇型號(無、Ethos-U55 或 Ethos-U65)Cortex-M85SSE-310-MPS3還不可用VHT_Corstone_SSE-310.exe具有 Cortex-M85 內(nèi)核的 CPU注:虛擬硬件模型 可以在MDK 安裝目錄中的/ARM/VHT/文件夾中找到,例如C:/Keil_v5/ARM/VHT/. 3.目標(biāo)選擇AVH 設(shè)備支持使用與實際硬件目標(biāo)相同的 CMSIS 原則實現(xiàn),并在CMSIS Pack和CMSIS-Core(M)中進行了說明。打開現(xiàn)有 MDK 項目或從 .cprj 文件導(dǎo)入它時,系統(tǒng)會詢問您是否應(yīng)安裝項目所需的任何缺失包。如果您同意,則項目中使用的目標(biāo)設(shè)備的必要設(shè)備定義包也將自動安裝。創(chuàng)建新項目或更改現(xiàn)有項目中的目標(biāo)時,您需要選擇 AVH 目標(biāo),如下所示:安裝帶有目標(biāo)設(shè)備定義的 CMSIS 包(如果尚不存在):啟動Pack Installer實用程序。在Devices選項卡中展開ARM部分并選擇目標(biāo) Cortex-M 內(nèi)核。在設(shè)備特定類別下的包選項卡中,根據(jù)項目配置中的表選擇實現(xiàn)所需 AVH 設(shè)備的目標(biāo) CMSIS 包。按操作字段中的安裝或更新按鈕以安裝最新版本。例如對于 Arm Cortex-M4:觀察按鈕狀態(tài)更改為Up to date并返回 μVision 中的項目。選擇 AVH 設(shè)備作為項目中的目標(biāo):在項目中打開Options for target...對話框并選擇Device選項卡。在設(shè)備供應(yīng)商列表中展開ARM組。展開目標(biāo) Cortex-M 內(nèi)核的組。在列表中,根據(jù)Project Configuration中的表格選擇目標(biāo)設(shè)備,然后按OK。例如對于 Arm Cortex-M4:4.運行和調(diào)試配置執(zhí)行以下步驟以在 AVH 設(shè)備上配置 MDK 項目的執(zhí)行和調(diào)試:打開Options for Target...對話框并導(dǎo)航到Debug選項卡。在Use:下拉菜單中選擇Models Debugger。確切名稱因目標(biāo)設(shè)備內(nèi)核而略有不同:適用于Cortex-M0/M0+/M3/M4/M7 設(shè)備的型號 Cortex-M 調(diào)試器適用于 Cortex-M23/M33/M55/M85 的型號 ARMv8-M 調(diào)試器。例如對于帶有 Cortex-M55 內(nèi)核的 Corstone-300:單擊設(shè)置按鈕。這將打開相應(yīng)的 Models Target Driver Setup_ 對話框。填寫以下字段很重要:Command:應(yīng)包含對應(yīng)于所選 AVH 設(shè)備的 AVH 模型可執(zhí)行文件的路徑。請參閱項目配置中的表格。Arguments:可用于指定要與模型執(zhí)行一起使用的其他FVP 命令行選項。Target:指定要用于執(zhí)行的 CPU。單擊瀏覽按鈕 (...) 并選擇目標(biāo)上可用的目標(biāo) CPU。Configuration File:指向帶有模型配置參數(shù)的文件(通過-f選項傳遞給模型可執(zhí)行文件)。Corestone-300 的正確配置如下:Fast Models Debug Driver Configuration詳細解釋了配置對話框。5.項目導(dǎo)出使用 Arm 虛擬硬件云環(huán)境構(gòu)建程序需要通用.cprj 格式。因此,保持 MDK 項目文件和cprj文件同步很重要。為此,在 MDK 項目中保存修改后,轉(zhuǎn)到 μVision 菜單Project?-?Export并選擇Save project to CPRJ format。 6.程序構(gòu)建和調(diào)試AVH的項目構(gòu)建和調(diào)試可以通過與任何其他 Keil MDK 項目類似的方式完成:按μVision 工具欄中的Rebuild按鈕(或使用F7熱鍵)。從 μVision 工具欄(或使用Ctrl-F5)啟動調(diào)試會話。像往常一樣使用 μVision 功能調(diào)試項目。有關(guān)用戶界面和調(diào)試功能的詳細信息,請參閱μVision 用戶指南。更多嵌入式咨詢,請關(guān)注“億道電子”公眾號。
查看更多→