Почему приведение к float приводит к серьезной ошибке в STM32F429ZI (App_Fault_ISR)?
Я не совсем уверен, что здесь происходит. Я использую Nucleo Board, STM32F429ZI, на Atolli c TrueSTUDIO
Код
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 <----
Похоже проблема перемещения
Окно «Обнаружен жесткий сбой» shos
Ошибка шины, управления памятью или использования (FORCED) Дополнительные сведения Попытка выполнить инструкцию сопроцессора (NOCP) )
Это приземляется на App_Fault_ISR , который представляется серьезной ошибкой
Поскольку конфигурация Assembler, Compiler и C Linker имеют в настройке, имеют FPU включено (FPv4-SP-D16) Выбрана аппаратная реализация