チーム14A3
課題名
DFTを使った周波数分析
研究者名
3年14組58番 山口 一樹
見出し1
WaveGeneで発生させた波を、DFTを使って周波数を分析しその結果をLCDに表示させる。
ソースコード
#include<device.h>
#include <math.h>
#define N 8
#define PI 3.141592653
void main(){
int i,j;
int h[N] = {1,0,0,0,0,0,0,0};
double TF_r[N][N];
double TF_i[N][N];
double D_r[N];
double D_i[N];
double D[N];
for(i=0;i<N;i++){ for(j=0;j<N;j++){ TF_r[i][j]=cos((2*PI*i*j)/N); TF_i[i][j]=sin((2*PI*i*j)/N); } } for(i=0;i<N;i++){ D_r[i]=0; for(j=0;j<N;j++){ D_r[i]+=TF_r[i][j]*h[j]; D_i[i]+=TF_i[i][j]*h[j]; } } for(i=0;i<N;i++){ D[i] = sqrt(D_r[i]*D_r[i]+D_i[i]*D_i[i]); D[i]=D[i]/N; } LCD_Char_1_Start(); LCD_Char_1_ClearDisplay(); for(;;){ LCD_Char_1_Position(0,0); for(i=0;i<N;i++){ LCD_Char_1_DrawVerticalBG(0,i,1,(int)(D[i]*4)); } } }
見出しN
14
見出しNに対する内容や説明文などを書いてください。
15
16
考察
8ポイントのDFTで成分分析を行った。より大きなポイント数で行ったほうが精密な結果がでると思う。
ピンの接続に時間がかかりうまく実験が行えなかった。
- 最終更新:2014-11-17 17:13:01