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

第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小节)

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值