newlib sscanf()在stm32中抛出hardfault异常

时间:2011-05-10 10:26:17

标签: scanf stm32 newlib

我使用gcc编译我的项目,在main中使用函数sscanf(),堆栈大小为4k,我在gdb中调试程序,显示VPUSH指令抛出异常。

我测试函数sprintf(),它很好用。为什么函数sscanf()在newlib中不能用于stm32?

1 个答案:

答案 0 :(得分:4)

除STM32 F4系列外,这些控制器不支持浮点指令,vpush是其中之一。

问题应该通过使用-mfloat-abi=soft(而不是softfphard)编译newlib来解决。