This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

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) 之间吗? 超出这个范围,好像计算的结果会很离谱