把Keil(MDK)4升级到Keil(MDK)5,走了一些弯路,终于成功了,记录如下,也适用于新建工程。
1、下载、安装、注册Keil(MDK)5,具体方法百度上很多。
2、下载与硬件对应的软件包http://www.keil.com/dd2/Pack/到任意文件夹,双击安装。

3、打开软件,新建工程

自定义工程名称

选择型号

选择运行库,用自带库时在这个界面取消,自己复制标准库。

CMSIS/CORE 和 Device/Startup 必选,其它根据需要选择。有些选项是黄的,表示缺少依赖项,按红框内的提示勾选Framework后正常。

点击ok后按下图修改名称

4、启动Windows资源管理器,在工程文件夹中新建Users文件夹,把原来v4版中自己编写的文件复制到这个文件夹中(注意:不要特制原来的系统文件)。

5、回到Keil5,点击图示图标

点击Add Files... 添加源文件

选择刚才复制的cpp文件,不含.h文件,点击Add、Close,再点OK,回到主界面。

6、配置

下面的Xtal参数影响软件仿真中模拟示波器的扫描速度

Output标签中勾选Create Hex File项,生成二进制文件,再把Name of Executable中的名称加上后缀.hex就能直接下载二进制文件,但是不能调试,一般不用。

Debug标签中根据实际情况设置下面几项,点击Settings

勾选Reset and Run,下载程序后自动运行,否则下载程序后要按Reset键或断电后才能运行。点击确定、OK回到主界面

7、编译

出现错误

SYSTICK_MAXCOUNT 和 SYSTICK_ENABLE 在5版中没有了,查看系统源文件core_cm3.h,发现有两个类似的参数:SysTick_LOAD_RELOAD_Msk = SYSTICK_MAXCOUNT - 1,SysTick_CTRL_ENABLE_Msk = (1<<SYSTICK_ENABLE) 替换后编译正常,有一个警告错误,声明的变量没有使用,先不处理。

8、下载

下载正常,但是LED灯不闪,程序未运行。

查看《STM32开发过程的常见问题》修改startup_stm32f10x_hd.s文件中的栈空间,把原来的0x00000400改成0x00000800,也就是1k改成2k,再下载,一切正常。升级工作完成,若是新建工程只须去掉复制旧版本文件的步骤就行。

本文记录了将Keil(MDK)4升级到Keil(MDK)5的详细过程,包括下载安装注册、下载软件包、新建工程、复制文件、配置参数、编译和下载等步骤。还解决了编译和下载过程中遇到的问题,如参数替换、修改栈空间等,该流程也适用于新建工程。
2880

被折叠的 条评论
为什么被折叠?



