1 Keil5调试时peripherals不显示的解决方法

1.1 问题描述

keil新建工程进行仿真时,如图1和图2所示,进入Debug环境发现System Viewer菜单显示空白,Peripherals菜单没有外设寄存器。如图3所示,打开Options for Target查看System Viewer File选项没有勾选Use Custom File,系统默认的STM32F103xx.svd。如图4所示,查看Debug选项中的Dialog DLL一栏写着DCM.DLL,Parameter一栏写着-pCM3。

​ 图1 System Viewer菜单显示空白

​ 图2 Peripherals菜单没有外设寄存器

​ 图3 System Viewer File默认设置

​ 图4 Debug选项中Dialog DLL和Parameter默认设置


1.2 解决办法

Peripherals无外设寄存器:修改Debug选项中的Dialog DLL中的内容为DARMSTM.DLL,修改Parameter中的内容为-pSTM32F103RC。这里因为我建工程时选的MCUSTM32F103RC,所以改成这个。这个参数要和建工程时选的MCU一致。如图5所示。

​ 图5 修改Dialog DLL和Parameter设置

System Viewer菜单显示空白:Target选项中勾选Use Custom File,点击右边的三个点选择STM32F103xx.SFR文件,点击OK。我的软件安装在D盘,因此路径为D:\Software-Install\Keil5 for MDK\ARM\Pack\Keil\STM32F1xx_DFP\2.1.0\SVD。如图6所示。

​ 图6 设置System Viewer File文件

设置好的Debug界面如图7和图8所示。

​ 图7 修改Dialog DLL和Parameter后的Peripherals菜单

img

​ 图8 修改System Viewer File文件后的System Viewer菜单


2 处理配置System Viewer缺少SFR文件

大致步骤如下:

  • 需要使用 SVDConv.exe 程序来生成sfr文件,该程序安装在目录 UV4 中。
  • UV4文件夹路径加到环境变量中。
  • I:\Arm\Packs\Keil\STM32F1xx_DFP\2.4.1\SVD下执行命令SVDConv ARM_Sample.svd --generate=sfr

官方参考文档:µVision User’s Guide