> 技术文档 > 手把手移植TI IQmath库至STM32,定点运算性能实测!

手把手移植TI IQmath库至STM32,定点运算性能实测!


什么是IQmath?

TI推出的IQmath库专为无FPU的MCU优化,提供高性能定点数学运算(如乘法/除法/sin/cos/开方 等),完美替代浮点计算,大幅节省资源。

移植步骤(基于STM32F4)

  1. 获取源码

    • 从TI官网下载源码  https://www.ti.com.cn/tool/cn/MSPM0-SDK ,提取mspm0_sdk_2_01_00_03\\source\\ti\\iqmath文件夹

  2. 精简代码

    • 删除hwa.h(硬件适配层)和lib文件夹(预编译库)。

  3. 头文件适配

    • 修改support.h:将#include 替换为#include \"stm32f4xx_hal.h\"(根据实际平台调整)。

  4. 集成到工程

    • 将处理后的iqmath文件夹加入项目,包含头文件#include \"IQmathLib.h\"即可调用。

性能实测(STM32F405@168MHz)

运算类型 100次耗时(μs) 单次耗时(μs) 乘法 19 0.19 除法 62 0.62 开平方 72 0.72 正弦 69 0.69 反正切 96 0.96

参考

https://www.ti.com.cn/tool/cn/MSPM0-SDK 

https://software-dl.ti.com/msp430/esd/MSPM0-SDK/1_10_01_05/docs/chinese/middleware/iqmath/doc_guide/doc_guide-srcs/Users_Guide_CN.html