|
本帖最后由 qinyunzhen 于 2019-5-9 17:51 编辑 1 a. L: u2 {6 D/ q3 ~* C5 I8 t, E 2 b, |! R1 I& B" d. d0 `! k F" ?( L Keil uVision5建立STM32F030C8T6/ STM32F103RCT6工程项目
2、打开Keil uVision5 ->project菜单->new新建: 工程保存到PowerSafe文件夹的USER目录。
3、选择芯片型号: , A" `# V! L/ n根据具体芯片选择!
4、正常成功会弹出如下界面点击“取消”。 3 R n1 I6 k9 s8 ^6 p
5、如果有出错界面。 3 U3 O' c3 ]: g' I2 \) H1 t
原因 此错误消息意味着MDK-ARM的早期版本无法理解新包中的“消息”功能。 为了改进CMSIS标准,新功能始终添加到规范中。“消息”功能是CMSIS-Pack标准版本1.4.9的最新版本。CMSIS PACK版本 5。0。1(2017年2月23日发布)以及后来实施此标准。Keil更新了MDK-ARM版本5.24a(2017年7月5日发布),之后又能够使用“消息”功能。' I' I4 R( @' c" T: I& P STM32F4和STM32L4器件系列包(DFP)是第一批利用“消息”功能的产品。 解析度/ W1 I2 Z0 k0 ~+ {0 s2 P6 { 可能的解决方案: 更新到MDK-ARM版本5.24a和CMSIS Pack版本 5.0.1或更高版本,以利用最新ST包中使用的序列,查询和其他新的调试访问功能。 将ST设备系列包降级为2017年2月之前发布的包。 6、如果第4步没有出错,会进入如下界面:
7、工程目录添加文件夹: 添加CORE,STM32f03x_FWLib,OBJ 8、从ST 的SDK包拷贝相关文件到工程中。 ' N( r/ i4 p3 n+ @5 q" O' T+ x1)F030添加en.stm32cubef0\STM32Cube_FW_F0_V1.10.0\Drivers\STM32F0xx_HAL_Driver 到 STM32f03x_FWLib F103添加STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\STM32F10x_StdPeriph_Driver 9 C& \6 ?6 x% a! h8 W" S到 STM32f10x_FWLib 2) F030添加STM32Cube_FW_F0_V1.10.0\Drivers\CMSIS\Include 3 K- _9 X) o4 o0 W0 @ 到 core - c; c8 R7 ?. A9 M3 E F103添加STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\CoreSupport 1 `) m% A6 I. y9 I+ d5 X到 core 3)添加启动文件: F030添加en.stm32cubef0\STM32Cube_FW_F0_V1.10.0\Drivers\CMSIS\Device\ST\STM32F0xx\Source\Templates\arm\startup_stm32f030x8.s 8 E, k1 m) c$ l' j2 W1 J' i到core ( f( C; c1 }: k7 F* m* ]F103添加STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm\ startup_stm32f10x_hd.s 到core ) j* a! [, D- W- Y R' o$ E启动文件一般网上可以找到,如果找不到可以去官网下载: 9 D# \3 p8 B+ c8 Ehttp://my.st.com/content/my_st_com/en/products/embedded-software/mcu-mpu-embedded-software/stm32-embedded-software/stm32cube-mcu-mpu-packages/stm32cubef0.html 5 M$ @( n4 @! d8 i, z启动文件是根据编译环境和芯片对应,不能选择错误。 * M1 B* m2 F8 c4)添加其他文件文件: F030添加en.stm32cubef0\STM32Cube_FW_F0_V1.10.0\Drivers\CMSIS\Device\ST\STM32F0xx\Include + @2 `4 E% ~: ]: Tstm32f0xx.h;stm32f030x8.h;system_stm32f0xx.h 添加到USER目录 F103添加 STM32F10x_StdPeriph_Lib_V3.5.0\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x的文件,不包含文件夹 stm32f10x.h; system_stm32f10x.c; system_stm32f10x.h 添加到USER目录 F030添加 en.stm32cubef0\STM32Cube_FW_F0_V1.10.0\Projects\STM32F030R8-Nucleo\Templates Inc和Src & q& q8 S. y3 `" c. ^main.h; stm32f0xx_hal_conf.h;stm32f0xx_it.h * n: @) S. m( _' g. M8 Asystem_stm32f0xx.c; stm32f0xx_hal_msp.c; stm32f0xx_it.c; main.c 到user目录 F103添加 STM32F10x_StdPeriph_Lib_V3.5.0\STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Template + \4 `0 F7 R: C% p, a6 Rmain.c ; stm32f10x_conf.h;stm32f10x_it.c;stm32f10x_it.h; 到user目录 9、把拷贝的文件添加到 工程中。 添加头文件目录:
设置输入文件目录和打开创建HEX文件选项 % y/ `- F' y+ _; a+ f1 f; k0 |
10、编译 编译会出错,可以根据错误信息修改。直到编译成功。 - Z8 ~ h' T$ [& Z8 F8 zF103编译项目要添加宏定义“STM32F10X_HD,USE_STDPERIPH_DRIVER”
|
| 谢谢分享 |
DMA 原理从 0 到 1:为什么它能解放 CPU?一文讲透 DMA 的工作流程
【福利三:雨露均沾·逢7狂欢】之五:STM32系统时钟PLL故障排除1例
【福利三:雨露均沾·逢7狂欢】之三:AI帮我查BUG
福利三:雨露均沾·逢7狂欢】之二:STM32F407VG串口通信乱码故障的排除
基于STM32F103的I2C主从机通信
OpenBLT移植到STM32F103战舰开发板上适用于所有STM32F103系列的Bootloader
TFT LCD 与 FSMC 的硬件连接大容量 STM32F10xxx FSMC 接口
单片机:初学者该了解的STM32F103基础知识
小白也能明白的STM32的低功耗与唤醒机制
2025软件工具兔哥知道
微信公众号
手机版