资源简介
数字通信中PLL同步实现的MATLAB仿真代码,具有较好参考学习价值
代码片段和文件信息
function [convert_para_sconvert_para_sourcesignal_sourcesource_phase]=create_signal_source(ifsfifdthetaTCNRBnconvert)
global convert_set;
convert_para_s=0;
convert_para_source=0;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%产生信号源%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
M=T*fs;%采样点数
%n=((i-1)*T):1/fs:(i*T)-1/fs;%一次积分清除有T*fs=6000个采样点
n=((i-1)*M):(i*M)-1;%一次积分清除有T*fs=6000个采样点
%theta_org=mod(2*pi*((fi+fd-50*cos(0.16*0.001*i+pi/2))*n)/fs+theta2*pi);%采样点对应的相位
%varyphase = -pi*80*(n/fs).^2;
%varyphase = -2*pi*3125*cos(0.16*n/fs-pi/2);
varyphase = 0;
theta_org=mod(varyphase+2*pi*(fi+fd)*n/fs+theta2*pi);%采样点对应的相位
signal_source=cos(theta_org);%得到源信号
source_phase = theta_org(M);%最后一个点的相位作为信号相位
source_phase = mod(source_phase2*pi);%相位设到0~2*pi之间
source_phase = source_phase*360/(2*pi); %转化为度数
%%%%%%%%%%%%%%%%%%%%%%%%%%加入载噪比%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
if CNR ~= 888
SNR = CNR - 10*log10(Bn*2);%由载噪比计算信噪比
SNR = SNR + 10*log10(Bn*4/fs); % 考虑现在加入的噪声是平均加到整个采样率范围内的,之后信号会通过带通滤波器,噪声只通过了Bn*2,所以要减小信噪比,这样才是对的
SNR = 10^(SNR/10);% 将噪声转化为十进制的比例
std_noise = 1;% 噪声的标准差为 1
A_signal = sqrt(2*SNR*(std_noise^2));% 计算信号幅度
randn(‘state‘1);
noise_org = std_noise*randn(1M);% 产生无限带宽的噪声序列
% 信号源中FIR的带通滤波器的参数
global bofsourceFIR;
global noise_sourceFIR;
%%%%%%%%%%%%%%%%%%%%%%%%%对噪声序列进行带通滤波%%%%%%%%%%%%%%%%%%%%%%%%%%%%
noise = zeros(1M);% 初始化矩阵提高运算速度
sourceb_size = length(bofsourceFIR);% 滤波器级数
for m=1:M
% 循环得到新的输入序列
noise_sourceFIR(2:sourceb_size) = noise_sourceFIR(1:(sourceb_size-1));
noise_sourceFIR(1) = noise_org(m);
noise(m) = bofsourceFIR*noise_sourceFIR‘;% 与系数相乘得到本次滤波的输出
end% 结束本循环滤波
% 将噪声限制在 3sigma的范围内
noise(find(noise > 3*std_noise)) = 3*std_noise;
noise(find(noise < (-3)*std_noise)) = -(3*std_noise);
signal_source = A_signal*signal_source + noise;% 对信号添加噪声
else
SNR = 10^(CNR/10);
A_signal = sqrt(2*SNR);
signal_source = A_signal*signal_source;% 对信号添加噪声
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%记录信号源量化设置%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
if convert==1
convert_para_s=8;%量化为8位,1位符号位,2位整数位,5位小数位
convert_para_source = convert_para_s - 3;
signal_source = round(signal_source*2^convert_para_source);
for m=1:fs*T
%因为量化范围是-128~127,所以当出现128时要强制转换为127
if signal_source(m) == 128
signal_source(m) = 127;
end
end
if i == 1
fprintf(convert_set‘信号源量化为%dbit:1bit符号,%dbit整数,%dbit小数\r\n\r\n‘convert_para_sconvert_para_s-convert_para_source-1convert_para_source);
end
end
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 30967 2012-11-07 20:31 PLL_matlab\100Hz.jpg
文件 35068 2012-11-07 16:14 PLL_matlab\350Hz_15Hz.jpg
文件 35892 2012-11-07 16:45 PLL_matlab\352Hz_15Hz.jpg
文件 35582 2012-11-07 16:50 PLL_matlab\355Hz_10Hz.jpg
文件 34724 2012-11-07 16:56 PLL_matlab\355Hz_30Hz.jpg
文件 39217 2012-11-07 17:00 PLL_matlab\355Hz_40Hz.jpg
文件 38619 2012-11-07 17:04 PLL_matlab\355Hz_50Hz_1.203.jpg
文件 34893 2012-11-07 16:34 PLL_matlab\360Hz_15Hz.jpg
文件 36140 2012-11-07 16:20 PLL_matlab\370Hz_15Hz.jpg
文件 13120 2012-11-08 19:28 PLL_matlab\500_std2.fig
文件 3176 2012-11-14 10:18 PLL_matlab\create_signal_source.asv
文件 3204 2012-11-14 20:45 PLL_matlab\create_signal_source.m
文件 0 2012-11-14 21:37 PLL_matlab\Data_Record\BitData_para_filter.txt
文件 31 2012-11-14 21:48 PLL_matlab\Data_Record\DecData_para_filter.txt
文件 1010 2012-11-13 20:39 PLL_matlab\discriminator.m
文件 2035 2012-11-13 16:21 PLL_matlab\NCO_process.asv
文件 2033 2012-11-13 20:05 PLL_matlab\NCO_process.m
文件 9770 2012-11-14 21:20 PLL_matlab\pll.asv
文件 9777 2012-11-14 21:20 PLL_matlab\pll.m
文件 2984 2012-11-13 00:25 PLL_matlab\Pll_loop_lockjudge.asv
文件 2989 2012-11-13 14:04 PLL_matlab\Pll_loop_lockjudge.m
文件 386 2012-11-05 20:53 PLL_matlab\RecordDec.m
文件 2625 2012-11-14 20:09 PLL_matlab\set_para_filter.m
文件 2397 2012-11-07 16:02 PLL_matlab\set_para_pll.asv
文件 2402 2012-11-14 20:58 PLL_matlab\set_para_pll.m
文件 103 2012-11-06 16:10 PLL_matlab\sum_signal_IQ.m
文件 10782517 2012-11-09 20:39 PLL_matlab\tixing.fig
文件 41602 2012-11-09 21:05 PLL_matlab\zhexianxing.jpg
目录 0 2012-11-12 22:48 PLL_matlab\Data_Record
目录 0 2012-12-03 11:20 PLL_matlab
............此处省略3个文件信息
相关资源
-
matlab/simuli
nk mu 分析与综合工具箱使 - 基于matlab的mimo-ofdm的信道估计
- matlab影像纠正及内外精度评定
- 生物信号和生物医学的图像处理以M
- Matlab棋盘格角点检测算法
- 传感器网络节点定位算法matlab代码.
- ksvd算法matlab稀疏表示中训练字典
- 路径规划算法MATLAB仿真合集
- GPS基本原理及其Matlab仿真235516
- Canny边缘检测Matlab代码
- Kalman Filtering - Theory and Practice Using M
- 基于adaboost算法的目标检测MATLAB代码
- 基于matlab的人脸识别源代码235297
- 数字信号处理MATLAB版第三版
- Random Walks 标准程序,MATLAB程序,调试
- 车牌识别matlab程序235178
- MIMOOFDM 极化码 MATLAB
- 数字信号处理及其Matlab实现 陈怀琛
- Modelling.the.Wireless.Propagation.Channel.A.s
- MATLAB编程菜鸟入门教材
- 基于MATLAB的超声波声场模拟及可视化
- matlab 模特卡罗计算节点可靠度
- RBMCDAbox - Matlab Toolbox of Rao-Blackwellize
- matlab 基于点云的三维重建 附带 点云
- 凸优化matlab算法包
- Gabor滤波后的GIST特征提取matlab代码
- lte链路层 matlab仿真4
- Experiments with MATLAB
- MACHINE_LEARNING_with_NEURAL_NETWORKS_using_MA
- 最佳接收机的实现与仿真,matlab仿真
评论
共有 条评论