1.error:固件库模板编程:关于core_cm3.c的4个错误解决方法

一、用Keil5进行固件库编程,出现下列错误:

Rebuild started: Project: Template
*** Using Compiler 'V6.14', folder: 'E:\Keil5\ARM\ARMCLANG\Bin'
Rebuild target 'Target 1'
Libraries/CMSIS/core_cm3.c(445): error: non-ASM statement in naked function is not supported
  uint32_t result=0;
  ^
Libraries/CMSIS/core_cm3.c(442): note: attribute is here
uint32_t __get_PSP(void) __attribute__( ( naked ) );
                                          ^
Libraries/CMSIS/core_cm3.c(465): error: parameter references not allowed in naked functions
                  "BX  lr     \n\t" : : "r" (topOfProcStack) );
                                             ^
Libraries/CMSIS/core_cm3.c(461): note: attribute is here
void __set_PSP(uint32_t topOfProcStack) __attribute__( ( naked ) );
                                                         ^
Libraries/CMSIS/core_cm3.c(479): error: non-ASM statement in naked function is not supported
  uint32_t result=0;
  ^
Libraries/CMSIS/core_cm3.c(476): note: attribute is here
uint32_t __get_MSP(void) __attribute__( ( naked ) );
                                          ^
Libraries/CMSIS/core_cm3.c(499): error: parameter references not allowed in naked functions
                  "BX  lr     \n\t" : : "r" (topOfMainStack) );
                                             ^
Libraries/CMSIS/core_cm3.c(495): note: attribute is here
void __set_MSP(uint32_t topOfMainStack) __attribute__( ( naked ) );
                                                         ^
4 errors generated.
compiling core_cm3.c...
compiling stm32f10x_it.c...
assembling startup_stm32f10x_hd.s...
compiling main.c...
compiling system_stm32f10x.c...
compiling stm32f10x_gpio.c...
compiling stm32f10x_rcc.c...
".\Template.axf" - 4 Error(s), 0 Warning(s).
Target not created.
Build Time Elapsed:  00:00:01

二、解决方法

该问题是编译器版本问题

1、点击魔术棒

1.error:固件库模板编程:关于core_cm3.c的4个错误解决方法_第1张图片

2、在Target界面,将Use default compiler version 6改为Use default compiler version 5

1.error:固件库模板编程:关于core_cm3.c的4个错误解决方法_第2张图片

1.error:固件库模板编程:关于core_cm3.c的4个错误解决方法_第3张图片

3、保存,重新编译,编译通过

1.error:固件库模板编程:关于core_cm3.c的4个错误解决方法_第4张图片

你可能感兴趣的:(STM32,c++,bug,编译器)