|
发表于 2021-3-15 17:25:15
|
显示全部楼层
同步采样 分成两个buff FFT结果算出两个波形的相位,两个相位相见就可以
- fft(128,fft_I);
- fft(128,fft_U);
- for(a=0;a<64;a++)//计算相位差
- {
- I_angle[a]=atan2f(fft_I[a].imag,fft_I[a].real)*180/PI;
- U_angle[a]=atan2f(fft_U[a].imag,fft_U[a].real)*180/PI;
- if(a<=1)
- angle[a]=I_angle[a]-U_angle[a];
- else
- angle[a]=I_angle[a]-U_angle[1]*a;
- while(angle[a]>180)
- angle[a] -= 360;
- while(angle[a]<-180)
- angle[a] += 360;
- }
复制代码 |
|