1、 文档目标
记录MDK5.38a版本使用ST-link仿真调试时,软件崩溃的情况,记录原厂回复并给予解决方案,供相关同事参考解决此类问题。
2、 问题场景
客户之前使用的5.32版本对工程进行编译、调试、配置都无问题。客户近期将MDK升级为5.38a版本,使用ST-link进行"Options for Target - Debug - Settings"编译设置界面,软件直接闪退。
3、软硬件环境
1)、软件版本:MDK5.38/MDK5.38a
2)、电脑环境:Windows 11
3)、外设硬件:无
4、解决方法
1)、Keil MDK v5.38 和 v5.38a 包含一个新的 ST-Link 调试器驱动程序,如果在 Windows 操作系统中有一些现有的 COM 端口,其“设备实例路径”值在其最后一个模式中具有超过 32 个字符的字符串,则可能导致 μVision IDE 崩溃。

图4-1
例如:上图COM43端口显示以下“设备实例路径”值
其最后一部分“7&1C9D449E&0&1854CF607A90_C00000000”的长度超过 32 个字符。在这种情况下,Keil MDK v5.38 和 v5.38a 中包含的 ST-Link 调试器驱动程序将导致 μVision IDE 崩溃。
2)、解决此问题,请下载ST-Link 驱动程序 STLinkUSBDriver.dll 文件,并将其复制到 MDK 安装目录的子文件夹,例如 C:Keil_v5ARMSTLink

图4-2
此更新的 ST-Link 驱动程序文件将包含在V5.38a 更新的下一个 MDK 版本中。
ST-Link 驱动程序:STLinkUSBDriver.dll 文件的下载链接如下
//documentation-service.arm.com/static/6391bb322b0dd145f803165d?token=
注:本文参考链接如下使用 ST-Link 调试器时 MDK uVision 崩溃 (arm.com)