Факты:
—
value = 0x2001d603 (компилятор не выровнял указатель)— функция в 2 строчки падает в
HardFault_Handler()— функция в 3 строчки работает нормально
Вот чего мы не знаем:
— как заставить компилятор выровнять указатель
— почему именно функция в 2 строчки падает (предположительно, потому что возвращаемое значение берётся из регистра процессора)
— что с этим делать =)
Вот, что мы не попробовали:
— возвращать структуру, содержащую
float (вроде как, структуры работают исключительно через память)Если, вдруг, вы точно знаете, что тут, почему и как, посоветуйте правильное решение, будем благодарны 💙
Если тоже не знаете, что с этим делать, просто знайте, как обойти. Может быть вы тоже сэкономите полдня отладки =)

