TI中文支持网
TI专业的中文技术问题搜集分享网站

IQsqrt如何使用 ?

#ifndef   GLOBAL_Q

#define   GLOBAL_Q       1

#endif

#define   _IQsqrt(A)          sqrt(A)

VTTT=10;
VTTT=_IQ1mpy(10,10); // 运行结果正常是VTTT=50,
VTTT=_IQ12mpy(4096,4096);//// 运行结果正常是VTTT=4096
VTTT=_IQsqrt(100);// 运行结果是VTTT=14,不正常,不应该是10吗?

Susan Yang:

#ifndef   GLOBAL_Q

#define   GLOBAL_Q       1

#endif

#define   _IQsqrt(A)          sqrt(A)

VTTT=10;
VTTT=_IQ1mpy(10,10); // 运行结果正常是VTTT=50,
VTTT=_IQ12mpy(4096,4096);//// 运行结果正常是VTTT=4096
VTTT=_IQsqrt(100);// 运行结果是VTTT=14,不正常,不应该是10吗?

Susan Yang:请您看一下/ti/controlSUITE/libs/math/IQmath/v160/doc/IQmath_Quickstart.pdf文档内的说明

IQNsqrt

Description :This module computes the square root of the input using table lookup and Newton-Raphson approximation.
Declaration

Global IQ function (IQ format = GLOBAL_Q)
C_iq _IQsqrt(_iq A)

C++iqIQsqrt(const iq &A)

#ifndef   GLOBAL_Q

#define   GLOBAL_Q       1

#endif

#define   _IQsqrt(A)          sqrt(A)

VTTT=10;
VTTT=_IQ1mpy(10,10); // 运行结果正常是VTTT=50,
VTTT=_IQ12mpy(4096,4096);//// 运行结果正常是VTTT=4096
VTTT=_IQsqrt(100);// 运行结果是VTTT=14,不正常,不应该是10吗?

user3900194:

回复 Susan Yang:

现在DSP28035中使用开平方函数IQsqrt,可以吗?需要额外配置cmd文件或者库文件吗,编译环境为ccs5,谢谢。

#ifndef   GLOBAL_Q

#define   GLOBAL_Q       1

#endif

#define   _IQsqrt(A)          sqrt(A)

VTTT=10;
VTTT=_IQ1mpy(10,10); // 运行结果正常是VTTT=50,
VTTT=_IQ12mpy(4096,4096);//// 运行结果正常是VTTT=4096
VTTT=_IQsqrt(100);// 运行结果是VTTT=14,不正常,不应该是10吗?

mangui zhang:

回复 user3900194:

包含头文件"#include <math.h>"
然后直接调用 sqrt(A)

赞(0)
未经允许不得转载:TI中文支持网 » IQsqrt如何使用 ?
分享到: 更多 (0)