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

TMS320F2800157: 数学库函数(sinf/cosf)使用的问题

Part Number:TMS320F2800157

我在TMS320F2800157芯片上,调用sinf/cosf函数,

1、计算的结果有些正确,有些不正确

请问是什么原因?

#define CONST_PI_32     3.14159265358979323846f
float32_t tmp;
tmp = (float32_t)sinf(CONST_PI_32/4); // 0.707106769,正确
tmp = (float32_t)sinf(CONST_PI_32/4 + CONST_PI_32/5); // 0.987298429
tmp = (float32_t)sinf(CONST_PI_32/4 + CONST_PI_32/4); // 1.0, 正确
tmp = (float32_t)sinf(CONST_PI_32/4 + CONST_PI_32/3); // 0.0,错误
tmp = (float32_t)cosf(CONST_PI_32/4); // 0.0, 错误
tmp = (float32_t)cosf(CONST_PI_32/4 + CONST_PI_32/5); // -0.00242325524,是否正确
tmp = (float32_t)cosf(CONST_PI_32/4 + CONST_PI_32/4); // 0.0,正确
tmp = (float32_t)cosf(CONST_PI_32/4 + CONST_PI_32/3); // 0.0,错误

2、sinf/cosf函数,输出参数的取值范围只能是 (-Pi) ~ (Pi) 之间吗? 超出这个范围,好像计算的结果会很离谱

Yale Li:

我已经咨询了相关工程师,请关注下方链接:

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1298711/tms320f2800157-issue-about-using-sinf-and-cosf

赞(0)
未经允许不得转载:TI中文支持网 » TMS320F2800157: 数学库函数(sinf/cosf)使用的问题
分享到: 更多 (0)