完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
测试环境:单片机:STM32F407ZGT6 IDE:Keil5.20.0.0 固件库版本:STM32F4xx_DSP_StdPeriph_Lib_V1.4.0
第一部分:使用源码文件的方式,使用void arm_cfft_radix4_f32(const arm_cfft_radix4_instance_f32 * S,float32_t * pSrc)函数进行FFT运算。 准备空工程,配置Keil环境.使能STM32F4的FPU单元。 开启硬件浮点运算,等效于在C/C++->define中定义__FPU_USED,__FPU_PRESENT两个宏 添加全局宏定义,使能DSP库所有的功能 图中STM32F4XX,USE_STDPERIPH_DRIVER是新建工程都会用到的配置宏,新建工程参考:http://blog.csdn.net/qianrushi_jinxifeng/article/details/19673755 其他宏ARM_MATH_CM4,__CC_ARM,ARM_MATH_MATRIX_CHECK,ARM_MATH_ROUNDING 请参考:http://blog.csdn.net/desert187/article/details/20527921 向工程中添加使用到的DSP库源码 在stm32f4_dsp_stdperiph_libSTM32F4xx_DSP_StdPeriph_Lib_V1.4.0LibrariesCMSISDSP_LibSource目录下会有如下目录,都是DSP函数库 BasicMathFunctions基本数学函数:提供浮点数的各种基本运算函数,如向量加减乘除等运算。 CommonTablesarm_common_tables.c文件提供位翻转或相关参数表。ComplexMathFunctions复杂数学功能,如向量处理,求模运算的。ControllerFunctions控制功能函数。包括正弦余弦,PID电机控制,矢量Clarke变换,矢量Clarke逆变换等。FastMathFunctions快速数学功能函数。提供了一种快速的近似正弦,余弦和平方根等相比CMSIS计算库要快的数学函数。FilteringFunctions滤波函数功能,主要为FIR和LMS(最小均方根)等滤波函数。 MatrixFunctions矩阵处理函数。包括矩阵加法、矩阵初始化、矩阵反、矩阵乘法、矩阵规模、矩阵减法、矩阵转置等函数。StatisticsFunctions统计功能函数。如求平均值、最大值、最小值、计算均方根RMS、计算方差/标准差等。SupportFunctions支持功能函数,如数据拷贝,Q格式和浮点格式相互转换,Q任意格式相互转换。TransformFunctions变换功能。包括复数FFT(CFFT)/复数FFT逆运算(CIFFT)、实数FFT(RFFT)/实数FFT逆运算(RIFFT)、和DCT(离散余弦变换)和配套的初始化函数。 我们需要CommonTables和TransformFunctions的下的部分文件 添加到工程如图 另外我们需要包含相应的头文件路径,所需的头文件在STM32F4xx_DSP_StdPeriph_Lib_V1.4.0LibrariesCMSISInclude路径下可以找到 编写main()函数,
结果分析: 对串口收到的数据用matlab绘图,如下 如图,基波幅度为:15360/1024 = 15 100Hz成分幅度为: 5120*2/1024 = 10 150Hz成分幅度为: 2816*2/1024 = 5.5 因此所得的结果是正确的。博主目前为测试相位,故在此不做说明。 后记,这是使用源码的方式进行操作的,所有源码可跳转,可编辑。但添加麻烦。 下一篇将使用ST提供的.lib库直接进行运算。链接:http://www.cnblogs.com/NickQ/p/8541156.html 转载于:https://www.cnblogs.com/NickQ/p/8540487.html |
|
|
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1752 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1611 浏览 1 评论
1052 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
721 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1666 浏览 2 评论
1926浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
711浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
560浏览 3评论
584浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
544浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-18 22:56 , Processed in 0.821433 second(s), Total 56, Slave 45 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号