该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

求大神讲解每句意思

%绘制调制波形00101010????

clear all;

Ts=1/16000;%基带信号周期为1/16000s,即为16KHz

Tb=1/32000;%输入信号周期为Ts/2=1/32000s,即32KHz

BbTb=0.5;%取BbTb为0.5

Bb=BbTb/Tb;%3dB带宽

Fc=32000;%载波频率为32KHz

F_sample=64;%每载波采样64个点

B_num=8;%基带信号为8个码元

B_sample=F_sample*Fc*Tb;%每基带码元采样点数

Dt=1/Fc/F_sample;%采样间隔

B_sample=Tb/Dt

t=0:Dt:B_num*Tb-Dt;%仿真时间

T=Dt*length(t);%仿真时间值

Ak=[0 0 1 0 1 0 1 0];%产生8个基带信号

Ak=2*Ak-1;

gt=ones(1,B_sample);%每码元对应的载波信号

Akk=sigexpand(Ak,B_sample);%码元扩展

temp=conv(Akk,gt);%进行卷积运算,达到滤波效果

Akk=temp(1:length(Akk));

tt=-2.5*Tb:Dt:2.5*Tb-Dt;

gausst=erfc(2*pi*Bb*(tt-Tb/2)/sqrt(log(2))/sqrt(2))/2-erfc(2*pi*Bb*(tt+Tb/2)/sqrt(log(2))/sqrt(2))/2;

J_g=zeros(1,length(gausst));

for i=1:length(gausst)

if i==1

J_g(i)=gausst(i)*Dt;

else

J_g(i)=J_g(i-1)+gausst(i)*Dt;

end;

end;

J_g=J_g/2/Tb;

Alpha=zeros(1,length(Akk));

k=1;

L=0;

for j=1:B_sample

J_Alpha=Ak(k+2)*J_g(j);

Alpha((k-1)*B_sample+j)=pi*J_Alpha+L*pi/2;

end;

k=2;

L=0;

for j=1:B_sample

J_Alpha=Ak(k+2)*J_g(j)+Ak(k+1)*J_g(j+B_sample);

Alpha((k-1)*B_sample+j)=pi*J_Alpha+L*pi/2;

end;

k=3;

L=0;

for j=1:B_sample

J_Alpha=Ak(k+2)*J_g(j)+Ak(k+1)*J_g(j+B_sample)+Ak(k)*J_g(j+2*B_sample);

Alpha((k-1)*B_sample+j)=pi*J_Alpha+L*pi/2;

end;

k=4;

L=0;

for j=1:B_sample

J_Alpha=Ak(k+2)*J_g(j)+Ak(k+1)*J_g(j+B_sample)+Ak(k)*J_g(j+2*B_sample)+Ak(k-1)*J_g(j+3*B_sample);

Alpha((k-1)*B_sample+j)=pi*J_Alpha+L*pi/2;

end;

L=0;

for k=5:B_num-2

if k==5

L=0;

else

L=L+Ak(k-3);

end;

for j=1:B_sample

J_Alpha=Ak(k+2)*J_g(j)+Ak(k+1)*J_g(j+B_sample)+Ak(k)*J_g(j+2*B_sample)+Ak(k-1)*J_g(j+3*B_sample)+Ak(k-2)*J_g(j+4*B_sample);

Alpha((k-1)*B_sample+j)=pi*J_Alpha+mod(L,4)*pi/2;

end;

end;

%B_num-1;

k=B_num-1;

L=L+Ak(k-3);

for j=1:B_sample

J_Alpha=Ak(k+1)*J_g(j+B_sample)+Ak(k)*J_g(j+2*B_sample)+Ak(k-1)*J_g(j+3*B_sample)+Ak(k-2)*J_g(j+4*B_sample);

Alpha((k-1)*B_sample+j)=pi*J_Alpha+mod(L,4)*pi/2;

end;

%B_num;

k=B_num;

L=L+Ak(k-3);

for j=1:B_sample

J_Alpha=Ak(k)*J_g(j+2*B_sample)+Ak(k-1)*J_g(j+3*B_sample)+Ak(k-2)*J_g(j+4*B_sample);

Alpha((k-1)*B_sample+j)=pi*J_Alpha+mod(L,4)*pi/2;

end;

S_Gmsk=cos(2*pi*Fc*t+Alpha);

subplot(311)

plot(t/Tb,Akk);

axis([0 8 -1.5 1.5]);

title('基带波形');

subplot(312)

plot(t/Tb,Alpha*2/pi);

axis([0 8 min(Alpha*2/pi)-1 max(Alpha*2/pi)+1]);

title('相位波形');

subplot(313)

plot(t/Tb,S_Gmsk);

axis([0 8 -1.5 1.5]);

title('GMSK波形');

%解调?

for n=1:512;

if n<=B_sample

Alpha1(n)=0;

else Alpha1(n)=Alpha(n-B_sample);

end

end

a=[0 1 1 1 1 1 1 1]

ak=sigexpand(a,B_sample);

temp=conv(ak,gt);

ak=temp(1:length(ak));

S_Gmsk1=cos(2*pi*Fc*(t-Tb)+Alpha1+pi/2).*ak;

figure

subplot(311)

plot(t/Tb,S_Gmsk1);

axis([0 8 -1.5 1.5]);

title('延迟1bt,移相pi/2GMSK波形');

xt=S_Gmsk1.*S_Gmsk;

x=0;

subplot(312)

plot(t/Tb,xt,t/Tb,x,'r:');

axis([0 8 -1.5 1.5]);

title('相乘后波形')

Fs=10000;

rp=3;

rs=50;

wp=2*pi*50;

ws=2*pi*800;

[n,wn]=buttord(wp,ws,rp,rs,'s')

[z,p,k]=buttap(n);

[bp,ap]=zp2tf(z,p,k);

[bs,as]=lp2lp(bp,ap,wn);

[b,a]=bilinear(bs,as,Fs)

y=filter(b,a,xt);

subplot(313)

plot(t/Tb,y,t/Tb,x,'r:');

axis([0 8 -1.5 1.5]);

title('经过低通滤波器后波形');

for i=1:8

if y(i*B_sample)>0

bt(i)=1

else

bt(i)=0

end

end

bt=2*bt-1;

btt=sigexpand(bt,B_sample);

temp1=conv(btt,gt);

btt=temp1(1:length(btt));

figure

subplot(311)

plot(bt)

title('抽样值');

axis([0 8 -1.5 1.5]);

subplot(312)

plot(t/Tb,Akk);

axis([0 8 -1.5 1.5]);

title('原基带波形');

subplot(313)

plot(t/Tb,btt);

axis([0 8 -1.5 1.5]);

title('解调后波形');

matlab程序的m语言,M语言GMSK程序求教相关推荐

  1. c语言电流检测模块程序,C语言和MATLAB程序设计在电力谐波电流检测方法仿真中的应用...

    前言第1章 绪论1.1 计算机仿真的基本概念1.2 C语言简介1.3 MATLAB概述1.4 电力谐波电流检测方法的研究现状1.4.1 有源电力滤波器的丁作原理1.4.2 电力谐波电流检测方法的研究现 ...

  2. MATLAB之Filter函数的C语言程序实现

    MATLAB之Filter函数的C语言实现 前言 一.MATLAB的Filter函数 二.C语言实现Filter函数 1.代码 2.计算结果 总结 前言 MATLAB里面有很多现场的滤波器函数,我们在 ...

  3. c语言程序设计编辑与调试环境实验报告,01程序设计基础实验报告_C语言程序设计基础.doc...

    01程序设计基础实验报告_C语言程序设计基础 程序设计基础 实验报告 题 目: C语言程序设计基础 院 (部): 管理工程学院 专 业: 信息管理与信息系统 班 级: 信管101 姓 名: 张三 学 ...

  4. 编写一个程序,实现将c语言源程序中的注释全部删除

    <程序设计基础-c语言>杨莉 刘鸿翔 ISBN-978-7-03-032903-5 p257 习题8 6.编写一个程序,实现将c语言源程序中的注释全部删除 #include<stdl ...

  5. c语言大学程序设计题库,黑龙江大学C语言程序设计试题库程序单选

    <黑龙江大学C语言程序设计试题库程序单选>由会员分享,可在线阅读,更多相关<黑龙江大学C语言程序设计试题库程序单选(5页珍藏版)>请在人人文库网上搜索. 1.黑龙江大学C语言程 ...

  6. python语言是编译型语言-Python程序的执行过程原理(解释型语言和编译型语言)...

    Python是一门解释型语言? 我初学Python时,听到的关于Python的第一句话就是Python是一门解释型语言,我就这样一直相信下去,直到发现.pyc文件的存在,如果真是解释型语言,那么生成的 ...

  7. mapreduce编程实例python-使用Python语言写Hadoop MapReduce程序

    原标题:使用Python语言写Hadoop MapReduce程序 Python部落(python.freelycode.com)组织翻译,禁止转载,欢迎转发. 在本教程中,我将描述如何使用Pytho ...

  8. C语言 03-第一个C程序代码分析

    本文目录 一.代码分析 二.开发和运行C程序的步骤 三.总结 说明:这个C语言专题,是学习iOS开发的前奏.也为了让有面向对象语言开发经验的程序员,能够快速上手C语言.如果你还没有编程经验,或者对C语 ...

  9. 程序员应该学习C语言的十个理由

    程序员应该学C语言的十个理由的文章说:每个程序员在他们的编程事业生涯当中都应该学C语言.C语言有太多不容忽视的好处.它不仅可以带来更多的工作机会,而且也会在总体上让你对计算机有更多的了解. 1)相对于 ...

  10. c语言如何快速看懂别人的程序,探究如何快速看懂单片机程序方法

    在现实中,我相信有很多刚刚接触单片机的同学,简直是无从下手,打开一个程序,更会被复杂的结构和密密麻麻的代码吓到,产生退缩的想法,这篇文章带你了解一下单片机程序. 我对单片机的总结:"单片机其 ...

最新文章

  1. dom4j通过xpath查询xml
  2. 自动驾驶前沿综述:基于深度强化学习的自动驾驶算法
  3. 地址总线是单向还是双向_三端双向交流开关(TRIAC)
  4. php类精确验证身份证号码
  5. Nginx负载均衡的4种方式 :轮询-Round Robin 、Ip地址-ip_hash、最少连接-least_conn、加权-weight=n
  6. 解决Android的adb命令行报错Permission denied
  7. django 实现同一个ip十分钟内只能注册一次
  8. python selenium 弹出框定位_selenium弹框元素定位-冻结界面
  9. rf接口自动化之结果校验
  10. c语言中断程序运行,C语言实现 软中断 程序小结
  11. 网络管理(课程总结3)Week12 澳大利亚维多利亚大学VIT1104 Computer Networks
  12. windows通过资源管理器访问服务器(samba服务),您需要权限来执行此操作
  13. 最通俗易懂---多分类学习之OvO、OvR、MvM
  14. 【MySQL】分组查询
  15. 百度wenku的下载
  16. sql STUFF用法
  17. 函数<小罗爱c语言>
  18. webstorm使用Prettier
  19. Windows Server 2012改造成Windows8的方法(新增解决网络卡)
  20. DDR3的设计出现[Synth 8-5396]警告

热门文章

  1. 惯性导航讲解(概念以及主要部件的讲解)
  2. 《地理信息系统概论》课后习题全部答案_黄杏元
  3. 软件架构师的12项修炼4
  4. EastFax 远程调用Ukey助力医学院
  5. U盘修复,U盘量产教程(以台电晶彩NCU,容量为32G的U盘为实例)by aser
  6. DOS命令和linux
  7. 谷歌浏览器提示因应用程序的并行配置不正确无法启动
  8. python爬虫:获取12306网站火车站对应三字码
  9. 大疆livox雷达调试
  10. linux使用dwc串口,linux自带usb gadget设备驱动应用