当前位置:   article > 正文

keil编写正弦函数_【STM32F407的DSP教程】第18章 DSP控制函数-更好用的SIN,COS计算...

stm32 正弦函数

第18章       DSP控制函数-更好用的SIN,COS计算

本期教程主要讲解控制函数中的cos和sin函数数值的获取,这里使用的函数比起第13章中使用的sin和cos函数数值的获取要方便很多。

18.1 初学者重要提示

18.2 DSP基础运算指令

18.3 浮点数SIN和COS

18.4 定点数SIN和COS

18.5 Clark正变换和逆变换

18.6 Park正变换和逆变换

18.7 实验例程说明(MDK)

18.8 实验例程说明(IAR)

18.9 总结

18.1 初学者重要提示

1、  Matlab2018a手动加载数据的方法在第13章的13.6章节进行了说明。

18.2 DSP基础运算指令

本章用到的DSP指令在前面章节都已经讲解过。

18.3 浮点数SIN和COS

使用表查找法和线性插值方式来计算正弦和余弦值。

18.3.1 函数arm_sin_cos_f32

函数原型:

void arm_sin_cos_f32(

float32_t theta,

float32_t * pSinVal,

float32_t * pCosVal)

函数描述:

这个函数用于浮点方式计算正弦和余弦值。

函数参数:

第1个参数参数是角度。这里输入角度-180到179就能得到一个周期的正弦或者余弦数值。

第2个参数是转换后求出的sin值。

第3个参数是转换后求出的cos值。

18.3.2 使用举例

程序设计:

/**********************************************************************************************************

* 函 数 名: DSP_SIN_COS

* 功能说明: 浮点数cos和sin计算

* 形 参: 无

* 返 回 值: 无

**********************************************************************************************************/

static void DSP_SIN_COS(void)

{

int16_t i;

float32_t pSinVal;

float32_t pCosVal;for(i = -180; i < 180; i++)

{

arm_sin_cos_f32(i,&pSinVal, &pCosVal);

printf("i = %d pSinVal = %f pCosVal = %f\r\n", i, pSinVal, pCosVal);

}

}

实验现象:

通过matlab绘制sin函数的输出数据的曲线(绘制方法见第10章的10.4小节)

通过matlab绘制cos函数的输出数据的曲线(绘制方法见第10章的10.4小节)

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/454651
推荐阅读
相关标签
  

闽ICP备14008679号