当前位置: 首页 > news >正文

MATLAB实现2ASK,2PSK,2FSK

matlab小白,还希望多多交流~

问题描述

设二进制序列为 1011010010,画出 2ASK 2PSK 2FSK 波形

原理描述

1、2ASK
ASK即“幅移键控”又称为“振幅键控”,2ASK是二进制振幅键控。发送为二进制符号“0”时,2ASK信号取值为0;发送为二进制符号“1”时,2ASK信号取值为载波对应的值。可用下面表达式表示
在这里插入图片描述
在这里插入图片描述

2、2PSK
2PSK称为二进制相移键控,是相移键控的最简单的一种形式,它用两个初相相隔为180的载波来传递二进制信息。2PSK即发送为二进制符号“0”时,取0相位;发送为二进制符号“1”时,取π相位。或者也可以反过来。这种以载波的不同相位直接去表示相应二进制数字信号的调制方式,称为二进制绝对相移方式。
在这里插入图片描述

3、2FSK
2FSK为二进制数字频率调制(二进制频移键控),用载波的频率来传送数字信息,即用所传送的数字信息控制载波的频率。2FSK信号便是符号“0”对应于载频 f1,而符号“1”对应于载频 f2(与 f1 不同的另一载频)的已调波形,而且 f1 与 f2 之间的改变是瞬间的。传“0”信号时,发送频率为 f1 的载波; 传“1”信号时,发送频率为 f2的载波。可见,FSK 是用不同频率的载波来传递数字消息的。
在这里插入图片描述

MATLAB代码

%调制信号
y=[1 0 1 1 0 1 0 0 1 0]
t_begin=0
t_end=1
mt=0
t=0:0.01:10
for i=1:length(y)
%     t=t_begin:0.01:t_end
    if(y(i)==1)
        mt=mt+1.*(t>=t_begin&t<t_end)
    else mt=mt+0.*(t>=t_begin&t<t_end)
    end
    t_begin=t_begin+1
    t_end=t_end+1
end
figure
subplot(2,2,1)
plot(t,mt);
ylim([-0.25,1.25]);
title('调制信号')
%2ASK
y=[1 0 1 1 0 1 0 0 1 0]
t_begin=0
t_end=1
ASK=0
t=0:0.01:10
for i=1:length(y)
%     t=t_begin:0.01:t_end
    if(y(i)==1)
        ASK=ASK+sin(2*pi*t).*(t>=t_begin&t<t_end)
    else ASK=ASK+0.*(t>=t_begin&t<t_end)
    end
    t_begin=t_begin+1
    t_end=t_end+1
end
subplot(2,2,2)
plot(t,ASK);
ylim([-1.5,1.5]);
title('2ASK信号')
%2PSK
PSK=0
t_begin=0
t_end=1
for i=1:length(y)
%     t=t_begin:0.01:t_end
    if(y(i)==1)
        PSK=PSK+sin(2*pi*t).*(t>=t_begin&t<t_end)
    else PSK=PSK+sin(2*pi*t+pi).*(t>=t_begin&t<t_end)
    end
    t_begin=t_begin+1
    t_end=t_end+1
end
subplot(2,2,3)
plot(t,PSK);
ylim([-1.5,1.5]);
title('2PSK信号')
%2FSK
FSK=0
t_begin=0
t_end=1
for i=1:length(y)
%     t=t_begin:0.01:t_end
    if(y(i)==1)
        FSK=FSK+sin(4*pi*t).*(t>=t_begin&t<t_end)
    else FSK=FSK+sin(2*pi*t).*(t>=t_begin&t<t_end)
    end
    t_begin=t_begin+1
    t_end=t_end+1
end
subplot(2,2,4)
plot(t,FSK);
ylim([-1.5,1.5]);
title('2FSK信号')

结果

在这里插入图片描述

相关文章:

  • 肆无忌惮!假借券商之名,公开举办炒股大赛!宣称5亿操盘+千万大奖,直播间大肆荐股,这家券商回应了
  • Android获取本地图片之ACTION_GET_CONTENT与ACTION_PICK区别
  • springBoot+mybatis实现多数据源配置
  • 小镇青年,拯救世界的任务就交给你了
  • 教你修改电脑mac地址图解教程
  • 年仅31岁!投行最年轻董事长来了,掌管200亿资产!
  • 重磅!美联储宣布利率不变,还透露明年计划,美元大跌黄金飙升,A50期货拉升!中国央行怎么做?
  • 国家管网公司“特急”挂牌虚与实:“三桶油”管道资产难估、股权难分
  • 第四届中国新金融高峰论坛成功召开:论道新形势下的金融业变革与开放
  • 鲍威尔一句话引爆市场!“超级周四”新一轮风暴来袭……黄金很快就有大动作?
  • JAVA面试基础:JVM&GC基础_6
  • 32岁被裁,拿N+1,我高兴地失业了
  • 证监会:下一步将加强MOM产品监管
  • 使用springmvc拦截器实现登录验证
  • ERP(用友)-账套管理
  • 登录与角色
  • 开元_棋的牌面架构设计
  • 框架day11-VUE.JS
  • Oracle数据库查看已添加的索引和创建索引
  • leetcode 82删除排序链表中的重复元素