STM32CubeF1生成的MDK-ARM工程编译错误

2019-07-14 14:02发布

大家好,  关于STM32CubeF1,  生成的MDK-ARM工程, 编译的时候发现有错误:

..DriversSTM32F1xx_HAL_DriverSrcstm32f1xx_hal_pwr.c(138): error:  #1113: Inline assembler not permitted when generating Thumb code

看了一下是是使用了__asm,  用一般的办法, 修改为

#if 0
__NOINLINE
static void PWR_OverloadWfe(void)
{
  __asm volatile( "wfe" );
  __asm volatile( "nop" );
}
#else
__NOINLINE __asm
static void PWR_OverloadWfe(void)
{
    wfe
    nop
}
#endif

则可以正常编译,  同时发现, 这个stm32f1xx_hal_pwr.c在一般的工程中, 也没有被引用, 直接删掉也可以编译通过

我想请问各位高人, 你们有遇到这样的问题吗? 是否有办法在CubeMX软件中设置生成的工程不包含这个文件?

请不吝赐教.

谢谢.
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。