资源简介
数字通信中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_OFDM调制解调(来自剑桥大学)
- Matlab路面裂缝识别69319
- 高灵敏度GPS接收机MATLAB仿真,附捕获
- 基于MATLAB的质点弹道计算与外弹道优
- 阵列天线的matlab仿真
- MATLAB 经典程序源代码大全
- MATLAB小波软阈值去噪代码33473
- 天线阵的波束形成在MATLAB仿真程序及
- 非线性SVM算法-matlab实现
- 《MATLAB 智能算法超级学习手册》-程序
- 组合导航matlab程序
- 读取txt文件内容matlab代码实现
- Matlab实现基于相关的模板匹配程序
- matlab优化工具箱讲解
- 基于MATLAB的快速傅里叶变换
- 光纤传输中的分布傅立叶算法matlab实
- 基于matlab的图像处理源程序
- matlab 椭圆拟合程序
- 算术编码解码matlab源代码
- optical_flow 光流法 matlab 实现程序
- 引导图像滤波器 Matlab实现
- 分形几何中一些经典图形的Matlab画法
- OFDM系统MATLAB仿真代码
- SVM工具箱(matlab中运行)
- 图像小波变换MatLab源代码
- LU分解的MATLAB实现
- 冈萨雷斯数字图像处理matlab版(第三
- 替代数据法的matlab程序
- 用matlab实现的多站定位系统性能仿真
- 通过不同方法进行粗糙集属性约简m
评论
共有 条评论