目录一、背景二、旧版Keil5 MDK存在的下载器件支持包的问题三、编译器问题四、重置问题五、结语一、背景最近在准备电赛又重新刷了一遍江协科技的STM32教程。但是按照UP主的软件安装很多时候在Pack Installer中下载的包都是不完整的都存在很多Delete的选项于是就下载了最新版的Keil5 MDK。最新版的Keil5 MDK是可以正常的在Pack Installer里面下载器件支持包的而且速度也不慢但是最新版的Keil5 MDK存在一些更新所以会存在一些问题。这篇文章综述一下我在学习过程中遇到的两个问题。二、旧版Keil5 MDK存在的下载器件支持包的问题由于STM32的型号太多了所以Keil5 MDK没有办法像之前学习Keil5 C51一样安装后就集成了所有的C51型号所以需要下载32的器件支持包才可以新建基于某个具体型号的32单片机的工程。下载器件支持包有两种方式一种是离线安装一种是在线安装。离线安装是到官网把相关的器件支持包下载后再手动安装而在线安装是在Keil5 MDK的Pack Installer页面中直接选择特定的器件进行直接的安装安装DXP文件即可。但是旧版的Keil5 MDK在安装时速度慢而且不知道什么原因会存在很多需要Delete的文件最新版的Keil5不存在这样的问题但是会存在一些其他的问题下面一一解决。三、编译器问题旧版的Keil5 MDK在下载后是自动安装了ARM Compiler 5编译器的但是自Keil5 MDK5.37版本后其默认安装的编译器就变成了ARM Compiler 6。虽然6代编译器编译速度较快但是常常会与之前旧版本的一些文件产生冲突导致编译错误明明代码没有问题但是就是会报错。但是安装ARM Compiler 5编译器就可以正常编译了。ARM Compiler 5的安装包可以在官方网站中获取但是官方下载需要登陆如果是还没有注册过的还需要注册后等官方审核这里我放一个其他博主的下载链接大家可以直接下载https://mopan.sc.189.cn/mopan/#/shareExtract?accessCodef99e5694fileType0count1style0提取码7132下载后得到压缩包解压后得到如下两个文件进入Installer双击setup的安装包按指引操作即可对于安装目录选择Keil5 MDK的安装目录下的ARM文件夹下新建一个ARMCC文件夹安装在此即可安装完成后如图所示接下来在Keil5中添加该编译器点击三个箱子的按钮弹出如下图所示的选项框在Use ARM Compiler选项中选择刚才安装的文件夹目录即可将该编译器添加到Keil5中。接下来选择该编译器即可点击魔术棒按钮在ARM Compiler中选择Use default compiler version 5即可使用第五代编译器进行编译。四、重置问题在旧版Keil5中通过勾选“Reset and Run”选项可以在代码烧录进去后直接运行但是最新版的Keil5中即使是勾选了该选项仍然无法自动复位需要手动按复位按键后才能执行代码。要解决该问题只需点击魔术棒选择Debug选项再点击右边的Settings选项。在弹出框中选择Pack选项取消勾选ENABLE即可这样在下载程序后STM32就会自动执行程序了。五、结语希望上述解决方案可以帮助到大家