【MATLAB源码-第11期】基于matlab的2FSK的误码率BER仿真以及原信号调制信号解调信号波形展示。

1 、算法描述

2FSK(Frequency Shift Keying)为二进制数字频率调制(二进制频移键控),用载波的频率来传送数字信息,即用所传送的数字信息控制载波的频率。2FSK信号便是符号"0"对应于载频 f1,而符号"1"对应于载频 f2(与 f1 不同的另一载频)的已调波形,而且 f1 与 f2 之间的改变是瞬间的。传"0"信号时,发送频率为 f1 的载波; 传"1"信号时,发送频率为 f2的载波。可见,FSK 是用不同频率的载波来传递数字消息的。

二进制频移键控(2FSK)是通过对两个不同载波信号进行变换使其成为数字信号来完成信息传输的。是用载波频率的变化来表征被传信息的状态的,被调载波的频率随二进制序列 0、1 状态而变化。

一般来说,其信号产生有两种方法,即频率键控法和直接调频法。频率键控法:两个分别产生正弦振荡的独立振荡器经由数字基带信号控制的电子开关后,选出的高频振荡信号就是FSK 调制信号。直接调频法是利用数字基带信号直接控制载频振荡器的振荡频率。与键控法调频相比较,它产生的信号频率稳定性比键控法产生的信号差,且存在过渡频率。

在接收端,信号的解调方法有两种,一种为相干解调法,另一种叫非相干解调法也叫包络检波法。如图1所示为相干解调和非相干解调的原理框图。非相干解调首先将得到的信号进行带通滤波后滤除载波频率以外的噪声以及干扰,使得信号可以完整的通过,再经过全波整流器输出正极端的包络曲线,然后经过低通滤波器或者整流模块输出基带包络信号,再经过抽样判决器输出基带二进制信号。其中的抽样判决模块用到的抽样定时脉冲信号与每一个码元的周期相同,并且在码元的中间位置进行抽样。包络检波各个部分的输出时间波形图, 最终输出的波形在时间上相对于原基带二进制信号有一定的延时,这是硬件部分进行信号处理时无法避免的,在信号速率不大的情况下这种延时可以忽略。

2 、仿真结果演示

3 、关键代码展示

4 、MATLAB 源码获取

点击下方原文链接获取

【MATLAB源码-第11期】基于matlab的2FSK的误码率BER仿真以及原信号调制信号解调信号波形展示。_基于matlab的2fsk仿真-CSDN博客https://blog.csdn.net/Koukesuki/article/details/132312096?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522171245824516800185813140%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=171245824516800185813140&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~rank_v31_ecpm-1-132312096-null-null.nonecase&utm_term=%E7%AC%AC11%E6%9C%9F&spm=1018.2226.3001.4450

相关推荐
桦028 分钟前
[C++复习]:STL
开发语言·c++
前端小咸鱼一条1 小时前
16.迭代器 和 生成器
开发语言·前端·javascript
小陈工1 小时前
2026年3月31日技术资讯洞察:AI智能体安全、异步编程突破与Python运行时演进
开发语言·jvm·数据库·人工智能·python·安全·oracle
ok_hahaha1 小时前
java从头开始-黑马点评-Redission
java·开发语言
无巧不成书02182 小时前
Java面向对象零基础实战:从Employee类吃透自定义类核心,掌握封装精髓
java·开发语言·java入门·面向对象·自定义类·employee类·java核心技术
跃上青空2 小时前
Java如何优雅的使用fastjson2进行枚举序列化/反序列化,欢迎探讨
java·开发语言
Leo655352 小时前
动态透视报表 + 查询接口 + Excel导出
开发语言·windows·python
BioRunYiXue2 小时前
Nature Methods:CellVoyager 自主 AI 智能体开启生物数据分析新时代
大数据·开发语言·前端·javascript·人工智能·数据挖掘·数据分析
kcuwu.4 小时前
Python面向对象:封装、继承、多态
开发语言·python