clc;
clear;
close all;
fs = 12e6; %采样频率
ts = 1/fs;
num = 2.5e6; %数据长度
SNR = -15;
real_fc = 3563000; %实信号频率
data = sin(2*pi*real_fc*(0:num-1)*ts+pi/4)+sqrt(10^(SNR/10))*randn(1,num); %科斯塔斯环的输入信号
fc = 3562800; %本地频率
n = fs/1000; %累积时间为1ms
nn = [0:n-1];
nf = floor(length(data)/n);% 将输入数据分成1ms的多个数据块
wfc = 2*pi*fc; %本地信号
phi_prv = 0;
temp = 0;
frame = 0;
carrier_phase = 0;
phase = 0;
%环路滤波器的参数
c1 = 153.7130;
c2 = 6.1498;
for frame=1:nf
% 产生本地的sin和cos函数
expcol = exp(j*(wfc*ts*nn+phase));
sine = imag(expcol);
cosine = real(expcol);
x = data((1:n)+((frame-1)*n));
%将数据转换到基带
x_sine = x.*sine;
x_cosine = x.*cosine;
Q = sum(x_sine); %经过滤波器
I = sum(x_cosine);
phase_discri(frame) = atan(Q/I); %得到锁相环的输入
%锁相环
dfrq = c1*phase_discri(frame)+temp; %经过环路滤波器
temp = temp+c2*phase_discri(frame);
wfc = wfc-dfrq*2*pi; %改变本地频率
dfrq_frame(frame) = wfc;
phase = wfc*ts*n+phase; %得到不同块的相位
end
plot(dfrq_frame/(2*pi),'LineWidth',3);
hold on
plot([1:length(dfrq_frame)], real_fc*ones(size([1:length(dfrq_frame)])),'r','LineWidth',1);
legend('锁相环跟踪','实际的载波频率');
grid
mean_freq=mean(dfrq_frame/2/pi)
p=abs(real_fc-mean_freq)/real_fc;


fpga和matlab
- 粉丝: 18w+
- 资源: 2663
最新资源
- 基于springboot框架的Javaweb体育馆管理系统的设计与实现(完整源码+数据库sql文件+项目文档+Java项目编程实战+编程练手好项目).zip
- Python实现基于CNN-LSSVM基于卷积神经网络-最小二乘支持向量机的数据回归预测 多指标的详细项目实例(含完整的程序,GUI设计和代码详解)
- 前端分析-2023071100789s07
- 蓝桥杯资源,入门训练,计算一个数列的第n项的值,并对结果取模10007,创建Scanner对象并获取用户输入,定义模数值和数组
- Python 实现WOA-GRU鲸鱼算法优化门控循环单元的数据多输入分类预测的详细项目实例(含完整的程序,GUI设计和代码详解)
- VID20250317141753.mp4
- 基于SpringBoot框架的Javaweb墙绘产品展示交易平台的设计与实现(完整源码+数据库sql文件+项目文档+Java项目编程实战+编程练手好项目).zip
- VID20250317195704.mp4
- 蓝桥杯资源,ALGO-124 数字三角形、关联矩阵、寻找数组中最大值、矩阵乘法、字串统计、2的次幂表示等
- VID20250317193609.mp4
- VID20250317191237.mp4
- 2025年最火AI大模型DeepSeek资源资料汇总.zip
- Python实现基于KOA-CNN-BiLSTM-selfAttention多特征分类预测(自注意力机制)的详细项目实例(含完整的程序,GUI设计和代码详解)
- redis自己用的文件
- LaTeX 从零开始学习.pdf
- An Interactive Introduction to LATEX.pdf
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



- 1
- 2
- 3
- 4
前往页