完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
STM32F4 电流检测
1.FFT函数的运算数组定义 代码如下(示例): //FFT定义 #define FFT_LENGTH 4096 //FFT长度,默认是1024点FFT但这里定义了4096 float fft_inputbuf[FFT_LENGTH*2]; //FFT输入数组 float fft_outputbuf[FFT_LENGTH]; //FFT输出数组 2.ADC读取数据 代码如下(示例): adc_bufmoni 和 adc_bufmoni1 都是4096位 用来存储ADC读取的数据 //FFT定义 #define FFT_LENGTH 4096 //FFT长度,默认是1024点FFT但这里定义了4096 float fft_inputbuf[FFT_LENGTH*2]; //FFT输入数组 float fft_outputbuf[FFT_LENGTH]; //FFT输出数组 3.FFT的计算代码 代码如下(示例):
arm_cfft_radix4_init_f32(&scfft,FFT_LENGTH,0,1);//初始化scfft结构体,设定FFT相关参 for(i=0;i fft_inputbuf[2*i]=adc_bufmoni; fft_inputbuf[2*i+1]=0;//虚部全部为0 } TIM_SetCounter(TIM2,0);//重设TIM3定时器的计数器值 timeout=0; arm_cfft_radix4_f32(&scfft,fft_inputbuf); //FFT计算(基4) time=TIM_GetCounter(TIM2)+(u32)timeout*65536; //计算所用时间 sprintf((char*)buf,"%0.3fmsrn",time/1000); LCD_ShowString(100+12*8,770,80,80,24,buf); //显示运行时间 arm_cmplx_mag_f32(fft_inputbuf,fft_outputbuf,FFT_LENGTH); //把运算结果复数求模得幅值 4.FFT 的计算结果处理(冒泡排序)(其实还需要加权算法才能更精确) 代码如下(示例): 1.fft_outputbuf是输入数据的一半 2048位。 2.shuju【】是之前定义的结构体用来对fft_outputbuf数据进行处理得到最大值的位置和大小。 3.我这样处理后数据体的num存储的是 频率信息(即fft_outputbuf数组中数的位置)数据体的am存储的是 幅值信息(即fft_outputbuf数组中数的大小) for(i=0;i<2048;i++) { shuju.num=i; shuju.am=fft_outputbuf; } bubble_sort(shuju,2048); void bubble_sort(struct paixu arr[], int len) { int i, j; float temp; for (i = 1; i < len - 1; i++) for (j = 1; j < len - 1 - i; j++) if (arr[j].am < arr[j + 1].am) { temp = arr[j].am; arr[j] = arr[j + 1]; arr[j + 1].am = temp; temp = arr[j].num; arr[j].num = arr[j + 1].num; arr[j + 1].num = temp; } } |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1771 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1619 浏览 1 评论
1070 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
724 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1673 浏览 2 评论
1935浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
728浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
568浏览 3评论
593浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
551浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-22 14:08 , Processed in 0.790020 second(s), Total 76, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号