传感器处理要用到浮点运算,而且STM32F303的优势是具有FPU单元,因此如何使用硬件FPU是STM32F3discovery使用的基础。
1、在STM32F3-Discovery_FW_V1.1.0ProjectPeripheral_Examples中有个FPU工程,通过LED4可观察使用硬件FPU前后的速度区别。看其编译反汇编确实用到浮点的V指令,说明在OPNION的C+选项中选中USE FPU确实能够使用硬件FPU,其中用到的fabsf、fmaf、sqrtf等函数就是使用了硬件FPU,其实现应在CMSIS DSP Software Library中。在STM32F3-Discovery_FW_V1.1.0LibrariesCMSISDocumentationDSP_Lib中有LIB的介绍,在STM32F3-Discovery_FW_V1.1.0LibrariesCMSISDSP_Lib中有LIB的实现,但这些函数前面都有前缀arm_啊,怎么没有找到fabsf等函数的实现啊?难道他们的实现在MATH.H里面吗?这里面不是定点器件通过Q化实现的浮点运算吗?不明白。
2、看了许多FPU的文章,FPU工程并没有这么复杂啊?[size=13.3333px]
3、用到矩阵运算,如何在STM32F303上硬件实现啊? |