您现在的位置:首页 >> 通信 >> 内容

m基带信号的软同步接收系统matlab性能仿真,对比统计同步,BTDT,CZT,ZOOM-FFT以及

时间:2023/9/13 23:51:03 点击:

  核心提示:0X_028m,包括程序操作录像...

1.完整项目描述和程序获取

>面包多安全交易平台:https://mbd.pub/o/bread/ZJ6Vl5Zy

>如果链接失效,可以直接打开本站店铺搜索相关店铺:

点击店铺

>如果链接失效,程序调试报错或者项目合作可以加微信或者QQ联系。

2.部分仿真图预览


3.算法概述

   基带信号的软同步接收系统是通信系统中非常重要的一部分。在多种通信系统中,如无线通信、光纤通信等,接收到的信号一般都是基带信号。为了有效地处理这些信号,需要对其进行同步接收。这里的“同步”指的是将接收到的信号与发送端的信号在时间上对齐。在多种基带信号同步接收技术中,以下五种方法较为常见:统计同步、BTDT、CZT、ZOOM-FFT以及频谱细化法。

4.部分源码

..........................................................................

b             = hanning(127);

msg           = filter(b,1,msg2);

msg           = msg/max(msg);

msg(1:1024)   = [];

%调制

ff            = cos(2*pi*freqcarrier.*[0:length(msg)-1]/freqSample); 

signalSample  = msg.*ff;

t             = length(signalSample);

[f,sf]        = T2Fv2(t,signalSample);

 

 

figure;

subplot(311);

plot(msg);

title('测试随机数');

axis([1,length(msg),-1.5,1.5]);

subplot(312);

plot(f,abs(sf));

xlabel('频率 Mhz');

subplot(313);

plot(sf);

xlabel('归一化频率 点数');

 

 

%==========================计算Fcourse========================

sf1(1)  = 0;

index   = find(sf== max(sf));

I       = 3;

Fcourse = index;

tic;

%==========================利用BTDT计算Fpresize================

Fth = Fcourse; 

N   = length(msg);

for k = 1:I

    Ntemp = N*(Fcourse-0.5)/Fth;

    numTemp = round(Ntemp);

    [ftemp,sftemp]=T2Fv2(t,signalSample(1:numTemp));

    sftemp(1) = 0;

    indexTemp = find(sftemp== max(sftemp));

    if sftemp(indexTemp)>sftemp(indexTemp-1)

       Fth = Fth+(0.5)^(k+1);

    else

       Fth = Fth-(0.5)^(k+1);

    end     

end

format long;

Fpresize = Fth;

fprintf('%6.5f\n',Fpresize);

clc;

t=toc;

 

figure;

%恢复眼图

delta  = (Fcourse)/length(msg); 

Xpoint = mod((1:length(msg))*delta,64);

Ypoint = msg;

subplot(211)

tip = ceil((1:length(msg))*delta);

for k = 1:max(tip)

    indexSS = find(tip==k); 

    plot(Xpoint(indexSS),Ypoint(indexSS));

    hold on;

end

axis([2.3,18.4,-0.96,0.96]);

title('标准眼图');

grid on;

 

 

%恢复眼图

delta  = Fpresize/length(msg); 

Xpoint = mod((1:length(msg))*delta,64);

Ypoint = msg;

subplot(212)

tip = ceil((1:length(msg))*delta);

for k = 1:max(tip)

    indexSS = find(tip==k); 

    plot(Xpoint(indexSS),Ypoint(indexSS));

    hold on;

end

axis([2.3,18.4,-0.96,0.96]);

title('同步之后眼图');

grid on;

 

 

 

p=100*abs(Fpresize-Fcourse)/Fcourse;

fprintf('估计精度:');

fprintf('%2.4f',p);

fprintf('%%\n');

 

fprintf('仿真时间:');

fprintf('%2.4f',t);

fprintf('s\n');

save r2.mat t p

0X_028m

---

作者:我爱C编程 来源:我爱C编程
本站最新成功开发工程项目案例
相关文章
  • 没有相关文章
相关评论
发表我的评论
  • 大名:
  • 内容:
本类固顶
  • 没有
  • FPGA/MATLAB商业/科研类项目合作(www.store718.com) © 2025 版权所有 All Rights Reserved.
  • Email:1480526168@qq.com 站长QQ: 1480526168