为什么转换为浮点数会在 STM32F429ZI (App_Fault_ISR) 上遇到硬错误?
我不确定这里发生了什么。我在 Atollic TrueSTUDIO 上使用 Nucleo 板 STM32F429ZI
编码
CPU_FP32 speed;
CPU_INT32U val = (CPU_INT32U)(0x20u >> 4u);
speed = (CPU_FP32)val;
上次崩溃的程序集
080026f2: bl 0x8001dc8 <BSP_Tick_Init>
51 CPU_INT32U val = (CPU_INT32U)(0x20u >> 4u);
080026f6: movs r3, #2
080026f8: str r3, [r7, #4]
52 speed = (CPU_FP32)val;
080026fa: ldr r3, [r7, #4]
080026fc: vmov s15, r3 <----
好像是搬家问题
硬故障检测窗口
总线、内存管理或使用错误 (FORCED) 额外细节 尝试执行协处理器指令 (NOCP)
这落在 App_Fault_ISR上,这似乎是一个硬故障
至于配置 Assembler、Compiler 和 C Linker 在设置中启用了 FPU (FPv4-SP-D16) Hardware Implementation selected