大家好,
本人在使用IQmath进行除法运算时,参考文档C28x IQmath Library Module user’s Guide(v1.6.0)的使用步骤:(由于使用的是CCS3.3,所以不用添加GEL文件)
1)包含IQmathLib.h头文件
2)添加IQmath.lib库文件
接着直接使用_IQ12div进行两个long数的除法运算,但是单步运行的时候,提示
请问知道的朋友告诉一下,这是为什么?谢谢!
mangui zhang:
忽略不管执行不会影响结果的 但是还没找到解决办法
有人说按照IQmath的PDF文档中的说明将相应的库添加,貌似需要在Build Option中的linker下添加两个库
你确认一下
大家好,
本人在使用IQmath进行除法运算时,参考文档C28x IQmath Library Module user’s Guide(v1.6.0)的使用步骤:(由于使用的是CCS3.3,所以不用添加GEL文件)
1)包含IQmathLib.h头文件
2)添加IQmath.lib库文件
接着直接使用_IQ12div进行两个long数的除法运算,但是单步运行的时候,提示
请问知道的朋友告诉一下,这是为什么?谢谢!
Hank Zhao:
这个IQNdiv.asm看起来应该是IQmath.lib的一个源文件,由于你使用的是库文件,所以在单步的时候会找不到这个源文件,不影响程序正常运行。
大家好,
本人在使用IQmath进行除法运算时,参考文档C28x IQmath Library Module user’s Guide(v1.6.0)的使用步骤:(由于使用的是CCS3.3,所以不用添加GEL文件)
1)包含IQmathLib.h头文件
2)添加IQmath.lib库文件
接着直接使用_IQ12div进行两个long数的除法运算,但是单步运行的时候,提示
请问知道的朋友告诉一下,这是为什么?谢谢!
zhen zhang5:
回复 Hank Zhao:
是的,我在这条除法指令下面一条指令处设置断点,然后连续运行,这样就没有问题了,而且结果也是正确的,说明这条除法指令执行正常。
另外,我想请教一下,使用定点型DSP,如果操作数都是整型的,这种情况下,使用乘法“ * ”、除法“ / ”和使用_IQNmpy、_IQNdiv哪个执行时间更短,效率更高?
本人测试了一下,发现使用IQmath的执行时间要比相应的乘法“ * ”、除法“ / ”的执行时间长的多,我的测试代码如下:
long w,x,y,z;
GpioDataRegs.GPBSET.bit.GPIO32 = 1;
w=_IQ12div(_IQ12(100),_IQ12(9));
x=_IQ12mpy(_IQ12(100),_IQ12(9));
GpioDataRegs.GPBCLEAR.bit.GPIO32 = 1;
GpioDataRegs.GPBSET.bit.GPIO33 = 1;
y=100 / 9;
z=100 * 9;
GpioDataRegs.GPBCLEAR.bit.GPIO33 = 1;
然后,使用示波器观察GPIO32和GPIO33的高电平的时间,结果显示使用IQmath的执行时间要长的多,那么请问,IQmath在什么情况下,才会相对于普通算法而提高效率?(当然了,使用IQmath的结果精度要高)
通道1测试GPIO32,通道1测试GPIO33
谢谢
大家好,
本人在使用IQmath进行除法运算时,参考文档C28x IQmath Library Module user’s Guide(v1.6.0)的使用步骤:(由于使用的是CCS3.3,所以不用添加GEL文件)
1)包含IQmathLib.h头文件
2)添加IQmath.lib库文件
接着直接使用_IQ12div进行两个long数的除法运算,但是单步运行的时候,提示
请问知道的朋友告诉一下,这是为什么?谢谢!
Hank Zhao:
回复 zhen zhang5:
定点算法没必要使用IQmath,IQmath是使用定点数据的形式来表示浮点数,使用定点指令来完成浮点算法。所以,通常在进行浮点计算的时候才会用到IQmath。