电子产业一站式赋能平台

PCB联盟网

搜索
查看: 2125|回复: 2
收起左侧

求助帖:对从FPGA模块上得到的IQ数据进行频域分析

[复制链接]

587

主题

981

帖子

5126

积分

四级会员

Rank: 4

积分
5126
发表于 2022-8-19 15:48:59 | 显示全部楼层 |阅读模式
一组从FPGA上得到的IQ数据,数据组成为:32bit数据,前面16bit是I,后面16bit是Q,然后有614400个32bit数据,中心频率是1895m,采样频率是61.44m,对这样一组数据画频谱图,下面是我的做法,就是把iq数据分开然后直接对组合起来的复数进行fft,但我总感觉是错误的,图出来也不像正确的样子,请大佬们指导指导,对这类iq数据该怎么频域分析呢(数据发不上去,这个问题我也发在matlab中文论坛上了,大家可以去这里获取原数据:
求助帖:对从FPGA模块上得到的IQ数据进行频域分析

https://www.ilovematlab.cn/thread-617393-1-1.html
(出处: MATLAB中文论坛)




clc;clear;
close all;
str='FpgaData_r_1895.mat';
fs = 61.44e6;
FFT_Num=4096;
fids =fopen(str);
data=fread(fids,inf,'int16',0,'b');   %此处读取出来的数据看图
data_r_i=zeros(1,ceil(length(data)/2));
for i=1:2:length(data)
    data_r_i(floor(i/2+1))=complex(data(i),data(i+1));
end
M=1:FFT_Num;
freq=M*fs/FFT_Num;
figure();
for i=1:FFT_Num:length(data_r_i)-FFT_Num
    data_pro=data_r_i(i:i+FFT_Num);
    X =fftshift(fft(data_pro,FFT_Num));      % Compute its 16-point DFT
    mag=20*log10(abs(X(M)))-100;               % 求得Fourier变换后的振幅
    plot(freq,mag,'r');
    receiver_power= max(mag);
    pause(0.1);   
end



求助帖:对从FPGA模块上得到的IQ数据进行频域分析-1.jpg
回复

使用道具 举报

616

主题

968

帖子

5301

积分

四级会员

Rank: 4

积分
5301
发表于 2022-8-19 15:49:51 | 显示全部楼层
求助帖:对从FPGA模块上得到的IQ数据进行频域分析-1.jpg
回复 支持 反对

使用道具 举报

587

主题

981

帖子

5126

积分

四级会员

Rank: 4

积分
5126
发表于 2022-8-19 15:50:02 | 显示全部楼层
1
回复 支持 反对

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则


联系客服 关注微信 下载APP 返回顶部 返回列表