clear
echo on
t0=2;
ts=0.001;
fc=50;%载波频率
fs=1/ts;%采样频率
df=0.3;
t=[-t0/2:ts:t0/2];
m=cos(2*pi*2*t);
c=cos(2*pi*fc*t);
b=sin(2*pi*fc*t);
Il=m;Ql=imag(hilbert(m));%下边带信号的I路和Q路
p=Il.*c+Ql.*b; % 下边带信号的表达式
u=awgn(p,30); %下边带信号加入噪声
Iu=m;Qu=-imag(hilbert(m));%上边带信号的I路和Q路
q=Iu.*c+Qu.*b; % 上边带信号的表达式
v=awgn(q,30); %上边带信号加入噪声
[M,m,df1]=fftseq(m,ts,df);
M=M/fs;
[U,u,df1]=fftseq(u,ts,df);
U=U/fs;
[V,v,df1]=fftseq(v,ts,df);
V=V/fs;
f=[0:df1:df1*(length(m)-1)]-fs/2;
figure(1)
subplot(2,2,1)
plot(t,m(1:length(t)));
xlabel('时间');title('未调信号')
subplot(2,2,2)
plot(t,c(1:length(t)));axis([-0.1,0.1,-1.5,1.5])
xlabel('时间');title('载波')
subplot(2,2,3)
plot(t,u(1:length(t)));
axis([-0.2,0.2,-1,1.2]);xlabel('时间');
title('上边带已调信号')
subplot(2,2,4)
plot(t,v(1:length(t)));
axis([-0.2,0.2,-1,1.2]);xlabel('时间');
title('下边带已调信号');
figure(2)
subplot(2,1,1); plot(f,abs(fftshift(M)))
xlabel('频率');title('未调信号的频谱')
subplot(2,1,1)
plot(f,abs(fftshift(U)))
title('上边带已调信号的频谱');xlabel('频率');
subplot(2,1,2); plot(f,abs(fftshift(V)))
title('下边带已调信号的频谱');xlabel('频率');
%上边带信号的解调
figure(3)
[ar,br]=butter(3,[48 52]/500);
r=filter(ar,br,v);
r=r(1:length(c));
xui=r.*cos(2*pi*fc*t+pi);%上边带信号I路信号
[aui,bui]=butter(3,2/500);%经过低通滤波器
yui=filter(aui,bui,xui);
xuq=-r.*sin(2*pi*fc*t);%上边带信号Q路信号
[auq,buq]=butter(3,2/500);%经过低通滤波器
yuq=filter(auq,buq,xuq);
%根据算法I路输出即为调制信号
subplot(2,1,1)
plot(t,m(1:length(t)));
title('基带信号')
subplot(212)
plot(t,yui);title('解调信号')
%下边带信号的解调
figure(4)
[au,bu]=butter(3,[48 52]/500);
s=filter(ar,br,u);
s=s(1:length(c));
xli=s.*cos(2*pi*fc*t+pi);%下边带信号I路信号
[ali,bli]=butter(3,2/500);%经过低通滤波器
yli=filter(ali,bli,xli);
xlq=-s.*sin(2*pi*fc*t);%下边带信号Q路信号
[alq,blq]=butter(3,2/500);%经过低通滤波器
ylq=filter(alq,blq,xlq);
%根据算法I路输出即为调制信号
subplot(2,1,1)
plot(t,m(1:length(t)));
title('基带信号')
subplot(212)
plot(t,yli);title('解调信号')
没有合适的资源?快使用搜索试试~ 我知道了~
基于MATLAB实现的对am,dsb,ssb,ask,fsk,bpsk信号进行正交调制解调仿真+使用说明文档
共8个文件
m:7个
md:1个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 73 浏览量
2024-05-22
17:32:00
上传
评论
收藏 10KB RAR 举报
温馨提示
CSDN IT狂飙上传的代码均可运行,功能ok的情况下才上传的,直接替换数据即可使用,小白也能轻松上手 【资源说明】 基于MATLAB实现的对am,dsb,ssb,ask,fsk,bpsk信号进行正交调制解调仿真,并在不同信噪比条件下对其数字信号进行了误码率的计算+使用说明文档 1、代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2020b;若运行有误,根据提示GPT修改;若不会,私信博主(问题描述要详细); 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可后台私信博主; 4.1 期刊或参考文献复现 4.2 Matlab程序定制 4.3 科研合作 功率谱估计: 故障诊断分析: 雷达通信:雷达LFM、MIMO、成像、定位、干扰、检测、信号分析、脉冲压缩 滤波估计:SOC估计 目标定位:WSN定位、滤波跟踪、目标定位 生物电信号:肌电信号EMG、脑电信号EEG、心电信号ECG 通信系统:DOA估计、编码译码、变分模态分解、管道泄漏、滤波器、数字信号处理+传输+分析+去噪、数字信号调制、误码率、信号估计、DTMF、信号检测识别融合、LEACH协议、信号检测、水声通信 5、欢迎下载,沟通交流,互相学习,共同进步!
资源推荐
资源详情
资源评论
收起资源包目录
基于MATLAB实现的对am,dsb,ssb,ask,fsk,bpsk信号进行正交调制解调仿真,并在不同信噪比条件下对其数字信号进行了误码率的计算+使用说明文档.rar (8个子文件)
使用说明文档.md 13KB
matlab程序文件
ssb.m 2KB
BPSK.m 1KB
ASK.m 1KB
FSK.m 1KB
am.m 1KB
fftseq.m 188B
dsb.m 1KB
共 8 条
- 1
资源评论
IT狂飙
- 粉丝: 4824
- 资源: 2654
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 面向初学者的 Java 教程(包含 500 个代码示例).zip
- 阿里云OSS Java版SDK.zip
- 阿里云api网关请求签名示例(java实现).zip
- 通过示例学习 Android 的 RxJava.zip
- 通过多线程编程在 Java 中发现并发模式和特性 线程、锁、原子等等 .zip
- 通过在终端中进行探索来学习 JavaScript .zip
- 通过不仅针对初学者而且针对 JavaScript 爱好者(无论他们的专业水平如何)设计的编码挑战,自然而自信地拥抱 JavaScript .zip
- 适用于 Kotlin 和 Java 的现代 JSON 库 .zip
- yolo5实战-yolo资源
- english-chinese-dictionary-数据结构课程设计
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功