




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、msk的调制解调MATLAB源代码 function out = delay(data,n,sample_number) %data:延迟的数据 %n:延迟码元个数 %sample_number:码元采样个数 out = zeros(1,length(data); out(n*sample_number+1:length(data) = data(1:length(data)-n*sample_number);function data_diff = difference(data) %差分编码 %* %data
2、; 输入信号 %data_diff 差分编码后信号 %* %- data_diff = zeros(1,length(data); data_diff(1) = 1 * data(1); %1为差分编码的初始参考值 for i = 2:length(data) data_diff(i) = data_diff(i-1) * data(i); end %*function signal_out,I_out,Q_out = mod
3、_msk(data,data_len,sample_number,Rb) %MSK基带调制 %* % data 调制信号 % data_len 码元个数 % sample_number 每个码元采样点数 % Rb
4、160; 码元速率 % signal_out 基带调制输出 % I_out I路输出 % Q_out Q路输出 %* %
5、 data_len = 10; %码元个数 % sample_number = 8; %采样点数 % Rb = 16000;
6、0; %码元速率 % data1 = randint(1,data_len); % data = 2*data1-1; %传输的序列 Tb = 1/Rb; &
7、#160; %码元时间 fs = Rb*sample_number; %采样速率 %- %差分编码 data_diff = difference(data); %* %- %并串转换,延时 I(1) = 1; %fai0 = 0,cos(fai0) = 1 for i = 1:2:data_len
8、 Q(i) = data_diff(i); Q(i+1) = data_diff(i); end for i = 2:2:data_len I(i+1) = data_diff(i); I(i) = data_diff(i); end for i = 1:sample_number I1(i:sample_number:data_len*sample_number) = I(1:data_len);
9、0; Q1(i:sample_number:data_len*sample_number) = Q(1:data_len); end %* %- %乘加权函数 t=1/fs:1/fs:data_len*Tb; I_out = I1 .* cos(pi*t/2/Tb); Q_out = Q1 .* sin(pi*t/2/Tb); %* %- %调制信号产生 signal_out = I_out + j*Q_out; %* % %- % %画图 % subplot(221) % plot(data,'.-');title('M
10、SK传输的数据');xlabel('时间');ylabel('幅度') % subplot(222) % plot(data_diff,'.-');title('差分后的数据');xlabel('时间');ylabel('幅度') % subplot(223) % plot(I1,'.-');title('加权前I路');xlabel('时间');ylabel('幅度'); % subplot(224) % plot(Q1,
11、39;.-');title('加权前Q路');xlabel('时间');ylabel('幅度'); % % figure(2) % subplot(221) % plot(cos(pi*t/2/Tb),'.-');title('加权函数cos(t/(2Tb)');xlabel('时间');ylabel('幅度') % subplot(222) % plot(sin(pi*t/2/Tb),'.-');title('加权函数sin(t/(2Tb
12、)');xlabel('时间');ylabel('幅度') % subplot(223) % plot(I_out,'.-');title('加权后I路');xlabel('时间');ylabel('幅度'); % subplot(224) % plot(Q_out,'.-');title('加权后Q路');xlabel('时间');ylabel('幅度'); % %* function signal_out,I_out,Q_o
13、ut,phase = mod_msk2(data,data_len,sample_number,Rb) %MSK基带调制 %* % data 调制信号 % data_len 码元个数 % sample_number 每个码元采样点数 % Rb
14、; 码元速率 % signal_out 基带调制输出 % I_out I路输出 % Q_out
15、Q路输出 %* % data_len = 10; %码元个数 % sample_number = 8; %采样点数 % Rb = 16000; &
16、#160; %码元速率 % data1 = randint(1,data_len); % data = 2*data1-1; %传输的序列 Tb = 1/Rb;
17、0; %码元时间 fs = Rb*sample_number; %采样速率 %- %采样 for i = 1:sample_number data_sample(i:sample_number:data_len*sample_number) = data; end %* %- %计算相位 phase = zeros(1,data_len*sample_number); phase(1) =
18、data_sample(1) * pi/2/sample_number; for i = 2:data_len*sample_number phase(i) = phase(i-1) + data_sample(i-1) * pi/2/sample_number; end %* %- %I/Q I_out = cos(phase); Q_out = sin(phase); %* %- %调制信号产生 signal_out = I_out + j*Q_out; %*%MSK调制,差分解调方法一 clear all close all
19、 %- %参数设置 data_len = 10000; %码元个数 sample_number = 8; %采样个数 Rb = 24000; %码元速率 fc = 960
20、00; %载波频率 %* %- %随机产生传输信号 data=rand_binary(data_len); %* %- %MSK基带调制 signal_out,I_out,Q_out = mod_msk(data,data_len,sample_number,Rb); %* %- %中频搬移 multi = fc/Rb; I_temp=interp(I_out,mult
21、i); Q_temp=interp(Q_out,multi); Fs=fc*sample_number; t=1/Fs:1/Fs:length(I_temp)*1/Fs; signal_i=I_temp.*cos(2*pi*fc*t); signal_q=Q_temp.*sin(2*pi*fc*t); signal_mod=I_temp.*cos(2*pi*fc*t)-Q_temp.*sin(2*pi*fc*t); %* %- %加噪声 for SNR = 0:8 signal_mod1 = awgn(signal_mod,SNR);
22、; %- %去载波 N=300;
23、 % 滤波器的阶数为(N+1) F=0,fc-1000,fc+1000,Fs/2*2/Fs; A=1,1,0,0; lpf=firls(N,F,A); amp_lpf,w=freqz(lpf); I_dem=signal_mod1.*cos(2*pi*fc*t)*2;
24、60; I_dem=conv(I_dem,lpf); I_dem=I_dem(N/2+1:N/2+length(I_temp); Q_dem=signal_mod1.*sin(2*pi*fc*t)*2; Q_dem=conv(Q_dem,lpf); Q_dem=-Q_dem(N/2+1:N/2+length(I_temp); I_de
25、m_out=zeros(1,length(I_dem)/multi); % 抽取 Q_dem_out=zeros(1,length(Q_dem)/multi); for i=1:length(I_dem_out) I_dem_out(i)=I_dem(multi*(i-1)+1);
26、; Q_dem_out(i)=Q_dem(multi*(i-1)+1); end; %* %- %差分解调 demod_data = zeros(1,data_len); demod_data(1) = Q_dem_out(sample_number); for i = 2:data
27、_len demod_data(i) = Q_dem_out(i*sample_number)*I_dem_out(i-1)*sample_number) - I_dem_out(i*sample_number)*Q_dem_out(i-1)*sample_number); end %* %- %判决
28、0; demod_data = demod_data>0; demod_data = 2*demod_data-1; %* %- %计算误码率 num,ber(SNR+1)=symerr(demod_data,data); %* end %* %- %误码率曲线 semilogy(0:8,ber,'r*-
29、39;); %* %- %误码率理论值 snr = 0:0.1:8; for i = 1:length(snr) snr1(1,i) = 10(snr(1,i)/10); ps(1,i) = 1/2 * erfc(sqrt(snr1(1,i); pe(1,i) = 2 * ps(1,i); end hold on semilogy(0:.1:8,pe); %*%MSK调制,差分解调方法二 clear all close all %- %参数设置 data_l
30、en = 10000; %码元个数 sample_number = 8; %采样个数 Rb = 24000; %码元速率 fc = 96000;
31、 %载波频率 %* %- %随机产生传输信号 data=rand_binary(data_len); %* %- %MSK基带调制 signal_out,I_out,Q_out = mod_msk(data,data_len,sample_number,Rb); %* %- %中频搬移 multi = fc/Rb; I_temp=interp(I_out,multi); Q_temp=interp(Q_o
32、ut,multi); Fs=fc*sample_number; t=1/Fs:1/Fs:length(I_temp)*1/Fs; signal_i=I_temp.*cos(2*pi*fc*t); signal_q=Q_temp.*sin(2*pi*fc*t); signal_mod=I_temp.*cos(2*pi*fc*t)-Q_temp.*sin(2*pi*fc*t); %* %- %加噪声 for SNR = 0:8 signal_mod1 = awgn(signal_mod,SNR); %-
33、0; %去载波 N=300;
34、60; % 滤波器的阶数为(N+1) F=0,fc-1000,fc+1000,Fs/2*2/Fs; A=1,1,0,0; lpf=firls(N,F,A); amp_lpf,w=freqz(lpf); I_dem=signal_mod1.*cos(2*pi*fc*t)*2; I_dem
35、=conv(I_dem,lpf); I_dem=I_dem(N/2+1:N/2+length(I_temp); Q_dem=signal_mod1.*sin(2*pi*fc*t)*2; Q_dem=conv(Q_dem,lpf); Q_dem=-Q_dem(N/2+1:N/2+length(I_temp); I_dem_out=zeros(1,length(
36、I_dem)/multi); % 抽取 Q_dem_out=zeros(1,length(Q_dem)/multi); for i=1:length(I_dem_out) I_dem_out(i)=I_dem(multi*(i-1)+1); Q_dem_out(i)=Q_dem(
37、multi*(i-1)+1); end; %* %- %差分解调 demod_data = zeros(1,data_len); demod_data(1) = Q_dem_out(sample_number); for i = 2:2:data_len
38、160; demod_data(i) = -I_dem_out(i*sample_number)*Q_dem_out(i-1)*sample_number); end for i = 3:2:data_len demod_data(i) = Q_dem_out(i*sample_number)*I_dem_out(i-1)*sample_number);
39、0; end %* %- %判决 demod_data = demod_data>0; demod_data = 2*demod_data-1; %* %- %计算误码率 num,ber(S
40、NR+1)=symerr(demod_data,data); %* end %* %- %误码率曲线 semilogy(0:8,ber,'r*'); %* %- %误码率理论值 snr = 0:0.1:8; for i = 1:length(snr) snr1(1,i) = 10(snr(1,i)/10); ps(1,i) = 1/2 * erfc(sqrt(snr1(1,i); pe(1,i) = 2
41、* ps(1,i); end hold on semilogy(0:.1:8,pe); %*%MSK调制,解调 clear all close all %- %参数设置 data_len = 30000; %码元个数 sample_number = 8; %采样个数 Rb = 24000;
42、; %码元速率 fc = 96000; %载波频率 %* %- %随机产生传输信号 data = rand_binary(data_len); %* %- %MSK基带调制 signal_out,I_out,Q_out = mod_msk(data,data_le
43、n,sample_number,Rb); %* %- %中频搬移 multi = fc/Rb; I_temp=interp(I_out,multi); Q_temp=interp(Q_out,multi); Fs=fc*sample_number; t=1/Fs:1/Fs:length(I_temp)*1/Fs; signal_i=I_temp.*cos(2*pi*fc*t); signal_q=Q_temp.*sin(2*pi*fc*t); signal_mod=I_temp.*cos(2*pi*fc*t)-Q_temp.*sin(2*pi*fc*t); % sign
44、al_mod1=real(I_temp+j*Q_temp).*exp(j*2*pi*fc*t); %* %- %加噪声 for SNR = 0:8 signal_mod1 = 0.01 * awgn(signal_mod,SNR); %- %去载波 N=300;
45、0; % 滤波器的阶数为(N+1) F=0,fc-1000,fc+1000,Fs/2*2/Fs; A=1,1,0,0; lpf
46、=firls(N,F,A); amp_lpf,w=freqz(lpf); I_dem=signal_mod1.*cos(2*pi*fc*t)*2 .* cos(pi*t*Rb/2); I_dem=conv(I_dem,lpf); I_dem=I_dem(N/2+1:N/2+length(I_temp); Q_dem=signal_mod1.*sin(2*pi
47、*fc*t)*2 .* sin(pi*t*Rb/2); Q_dem=conv(Q_dem,lpf); Q_dem=-Q_dem(N/2+1:N/2+length(I_temp); I_dem_out=zeros(1,length(I_dem)/multi); % 抽取 Q_dem_out=zeros(
48、1,length(Q_dem)/multi); for i=1:length(I_dem_out) I_dem_out(i)=I_dem(multi*(i-1)+1); Q_dem_out(i)=Q_dem(multi*(i-1)+1); end; %*
49、; %- %解调,判决 demod_data = zeros(1,data_len); for i = 1:data_len I_dem1(i) = I_dem_out(i*sample_number)>0; Q_dem1(i) = Q_dem_out(i*sample_number)>0; end for i = 1:2:data_len m1(i) = Q_dem1(i);
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 医疗旅游中口内诊疗服务的创新升级
- 医疗器械供应链管理的智能化发展趋势
- 电商平台对农民收入的影响试题及答案
- 解决方案2025年商务英语考试试题及答案
- 适应多文化环境的商务英语能力试题及答案
- 新能源汽车行业的发展环境考试题及答案
- 数据分析与报告2025年商务英语试题及答案
- 灭菌技术考试题及答案
- 施工现场特殊行业安全试题及答案
- 真实案例分析创业扶持政策试题及答案
- 中储粮安全生产培训
- 医院药品过期处理与废物管理制度
- 2024年财会业务知识竞赛题库及答案(600题)
- 2024年通信电源专业知识考试题库(含答案)
- 2024年游泳初级指导员认证理论考试题库(浓缩500题)
- 结直肠腺瘤中西医结合防治指南-公示稿
- 2024秋期国家开放大学《可编程控制器应用实训》一平台在线形考(形成任务4)试题及答案
- 买卖合同法律知识及风险防范培训课件
- 脑出血患者术后护理论文
- 9.2严格执法 (课件+视频)(部编版)
- 《运输方式和交通布局与区域发展的关系》
评论
0/150
提交评论