Hi TI专家,
我们最近在开发基于F28075的电机驱动方案,发现F28075的Boot ROM中没有放Iqmath正余弦表了,那IQmath怎么用?或者有没有F28075和IQmath的例程?
谢谢!
Emma Wang:
因为F28075芯片内部有TMU/FPU,所以BOM中没有IQmath的表。
1 您可以将现有IQmath的函数转换为float型的直接使用,包括正余弦表都可以用TMU去直接算出来;
2 如果一定要使用IQmath,可以考虑将C:\TI\controlSUITE\libs\math\IQmath\v160\lib中的IQmath_fpu32.lib添加到工程中,不需要修改.cmd。
Hi TI专家,
我们最近在开发基于F28075的电机驱动方案,发现F28075的Boot ROM中没有放Iqmath正余弦表了,那IQmath怎么用?或者有没有F28075和IQmath的例程?
谢谢!
Seven Han:
https://e2e.ti.com/support/microcontrollers/c2000/f/171/t/469948
是否有帮助!
Hi TI专家,
我们最近在开发基于F28075的电机驱动方案,发现F28075的Boot ROM中没有放Iqmath正余弦表了,那IQmath怎么用?或者有没有F28075和IQmath的例程?
谢谢!
Emma Wang:
1.在新的工程中添加IQmath库文件,由于TMS320F2807x为浮点运算的芯片,所以选择IQmath_fpu32.lib;
2.在新的工程中添加IQmath函数库的头文件IQmathLib.h,并在主函数中添加以下语句:
#include "IQmathLib.h";
3.由于IQmathTables不再固化在芯片的ROM中,需要将这一部分的程序拷贝到FLASH中,则要修改CMD文件,增加了IQmath和IQmathTables的内存分配。这个CMD文件在TI官方的软件包controlSUITE中已经提供,地址如下:
C:\ti\controlSUITE\device_support\F2807x\v210\F2807x_common\cmd
选择2807x_FLASH_IQMATH_lnk_cpu1.cmd
4.最后,为了保持一个工程中仅有一个CMD文件,将工程中自带的Flash_lnk.cmd删除掉。
右键工程文件,选择properties。在CCS Build下选择C2000 Linker,删除2807x_Generic_FLASH_lnk.cmd文件。