matlab解调2fsk,2FSK调制解调系统的MATLAB实现

第 34 卷 第 2 期 玉林师范学院学报(自然科学) Vol.34 No.2 2013 年 JOURNAL OF YULIN NORMAL UNIVERSITY (Natural Science) 物理 学 1 引言 信原理是高校电子信息类专业的一门重要的专业基础课,该门课程理论性强、内容抽象,如果仅靠单纯的课堂讲解,在通信原理实验箱上对部分理论进行验证性实验,很难让学生理解.如果把实验室搬到课堂,即引入通信仿真软件进行仿真,不但降低了实训耗材成本,灵活方便,而 且对于教学也是十分有效的方法,这样能使抽象复杂的问题变得直观化、形象化、简单化,达到事半功倍的效果.MATLAB是一种主要用于数值计算及可视化图形处理的工程语言,可以进行复杂的数字信号处理系统的建模、参数估计、性能分析.Simulink是MATLAB的组成部分,是MATLAB中的一种可视化仿真工具,也是目前在动态系统的建模和仿真等方面应用最广泛的工具之一. 数字通信已成为当代通信技术的主流.数字通信系统涉及的技术问题很多,其中数字调制就是把数字基带信号的频谱搬移到高频处,形成适合在信道中传输的基带信号.基本的数字调制方式有振幅监控(ASK)、频移键控(FSK)、绝对相移键控(PSK)、相对(差分)相移键控(DPSK).2FSK是数字通信中用得较广的一种方式.文献[1]采用编程来实现2FSK的调制、频谱,对解调研究较少.本文用Simulink 对2FSK通信系统进行建模仿真,其中2FSK信号调制方式采用频率键控法,解调方式采用相干解调法. 2 2FSK调制解调原理 二进制频移键控(2FSK)是利用载波的频率变化来传递数字信息,而幅度和相位保持不变.在2FSK 中,载波的频率随二进制基带信号在 f1 和 f2 两个频率点间变化.设二进制数字的“1”对应 f1 ,“0”对 应 f2 ,2FSK信号的时域表达式为 S2FSK(t)=[ ang(t - nTs)]cos(w1t + θ n)+[ ang(t - nTs)]cos(w2t + φ n) (1) 式中:g(t)是宽度为Ts的单极性矩形脉冲, θ n和 φ n分别表示第n个信号码元(1或0)的初始相位,an是 的an反码,且有 0,概率为P 0,概率为1-P an= 和 an = 1,概率为1-P 1,概率为P. [收稿日期] 2012-02-02 [基金项目] 本论文是玉林师范学院2012年度校级“青年自筹经费项目《软件无线电中的高速采样技术研究》”(项目编号:2012YJQN26)。 [作者简介] 苏雪(1982~),女,玉林师范学院电子与通信工程学院讲师。主要研究方向:移动通信与个人通信。 2FSK调制解调系统的MATLAB实现 □苏  雪,马光善 (玉林师范学院 电子与通信工程学院,广西 玉林 537000)     [摘 要] 利用Simulink分别建立了2FSK键控法的调制模型、相干方式的解调模型进行仿真,验证分析了2FSK通信系统调制解调的过程,仿真波形与理论分析基本吻合,证明了模型的正确性,使抽象的问题直观化、简单化,有助于对理论知识的理解.     [关键词] 2FSK;MATLAB;调制;解调     [中图分类号] TN92 [文献标识码] A [文章编号] 1004-4671(2013)02-0048-05 通 n ! n ! * * 物理 学 设 S1(t)= ang(t-nTs) (2) S2(t)= ang(t-nTs) (3) 于是式(1)可表示为 S2FSK(t)=s1(t)cos(w1t + θ

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/312218.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于matlab的回波,基于MATLAB回波信号产生与消除.doc

基于MATLAB回波信号产生与消除摘 要MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。 MATLAB语言具备高效、可及推理能…

C++map容器-插入和删除

map插入和删除 功能描述&#xff1a; map容器进行插入数据和删除数据 函数原型&#xff1a; 代码如下&#xff1a; #include <iostream> using namespace std; #include <map>//map容器 插入和删除 void printMap(map<int, int> &m) {for (map<in…

你需要了解的 JIT Debugging

如果你还不清楚什么是转储文件&#xff0c;不知道什么时候需要转储文件&#xff0c;请参考转储文件系列文章的第一篇 —— 转储文件知多少。前言 我在 你需要知道的 N 种抓取 dump 的工具 的工具 这篇文章里&#xff0c;向大家介绍了几款可以抓取转储文件的工具及其简单用法。不…

C++map容器-排序

map容器排序 利用仿函数&#xff0c;可以改变排序规则 代码如下&#xff1a; #include <iostream> using namespace std; #include <map> //map容器 排序class Mycompare {public:bool operator()(int v1, int v2) {//降序return v1 > v2;} };void test01() {…

超越“迁移”的思考:应用程序该如何被Kubernetes接管?

传统虚拟机&#xff08;VM&#xff09;的可扩展性差强人意&#xff0c;但Kubernetes可以快速&#xff0c;无缝地扩展正在运行的服务。Kubernetes将容器、集群以及广泛的抽象配置方法引入桌面&#xff0c;用于提升部署和变更管理体验&#xff0c;从而使人们对Kubernetes关注更多…

C++string容器-字符串拼接

string字符串拼接 功能描述&#xff1a; 实现在字符串末尾拼接字符串 函数原型&#xff1a; 代码如下&#xff1a; #include <iostream> using namespace std; #include <cstring>//string字符串拼接 void test01() {string str1 "我";str1 "爱…

如何运用领域驱动设计 - 存储库

概述在上一篇文章<如何运用领域驱动设计 - 聚合>中&#xff0c;我们已经了解过领域驱动设计中一个很核心的对象-聚合。在现实场景中&#xff0c;我们往往需要将聚合持久化到某个地方&#xff0c;或者是从某个地方创建出聚合。此时就会使得领域对象与我们的基础架构产生紧…

C++string容器-字符串查找和替换

string查找和替换 功能描述&#xff1a; 查找&#xff1a;查找指定字符串是否存在 替换&#xff1a;在指定的位置替换字符串 函数原型&#xff1a; rfind 和find 的区别&#xff1a; rfind从右往左查找 find从左往右查找 查找案列代码如下&#xff1a; #include <iostrea…

如何运用领域驱动设计 - 工作单元

概述在上一篇 《如何运用领域驱动设计 - 存储库》 的文章中&#xff0c;我们讲述了有关仓储的概念和使用规范。仓储为聚合提供了持久化到本地的功能&#xff0c;但是在持久化的过程中&#xff0c;有时一个聚合根中的各个领域对象会分散到不同的数据库表里面&#xff1b;又或者是…

C++string容器-字符串比较

string字符串比较 功能描述: 字符串之间的比较 比较方式&#xff1a; 通常用来比较两个字符串是否相等 函数原型&#xff1a; 代码如下&#xff1a; #include <iostream> using namespace std; #include <cstring> //string字符串比较void test01() {string…

国产自主研发编程语言火了,同行十二年,不知Python是木兰?

1月17号有媒体称&#xff0c;一款面向智能物联网和编程教育的号称自主研发语言横空出世&#xff0c;名为【Mulan 】。消息一出&#xff0c;引起了众多争议。但有知乎网友发现&#xff0c;下载的程序包解包后——是个 Python&#xff1f;何为木兰&#xff1f;1月17号&#xff0c…

C++string容器-字符存取

string中单个字符存取方式有两种 代码如下&#xff1a; #include <iostream> using namespace std; #include <cstring>//string 字符存取 void test01() {string str "hello";cout << "str " << str << endl;for (int i…

有了容器为什么kubernetes还需要Pod?

简介容器并不是软件开发的银弹&#xff0c;没有任何一种技术能解决软件开发中的所有问题当我们采用容器化技术的时候&#xff0c;摒弃了传统的物理机或者虚拟机的部署方式&#xff0c;以一种更加轻快&#xff0c;便捷的方式来部署我们的应用。到容器化的进阶&#xff0c;再加上…

C++string容器-插入和删除

string插入和删除 功能描述&#xff1a; 对string字符串进行插入和删除字符操作 函数原型&#xff1a; #include <iostream> using namespace std; #include <cstring>//字符串 插入和删除 void test01() {string str "hello";str.insert(1, "…

.NET绘制旋转太极图

前言我之前发了一篇《 用.NET写“算命”程序》的文章&#xff0c;但有人纷纷提出了质疑&#xff0c;认为没有“科学”&#xff08; mi xin&#xff09;依据????。所谓“太极生两仪&#xff0c;两仪生四象&#xff0c;四象生八卦&#xff0c;八卦定吉凶&#xff0c;吉凶生大…

.NET CORE(C#) WPF 抽屉式菜单

.NET CORE(C#) WPF 抽屉式菜单阅读导航本文背景代码实现本文参考源码1. 本文背景使用简单动画实现抽屉式菜单2. 代码实现使用 .NET CORE 3.1 创建名为 “AnimatedColorfulMenu” 的WPF模板项目&#xff0c;添加1个Nuget库&#xff1a;MaterialDesignThemes&#xff0c;版本为最…

matlab中scrsz的意思,matlab图片c存储方法

图片保存四种方法可以保存为fig,eps,jpeg,gif,png,bmp等格式。2 复制粘贴 <edit------〉copy figure&#xff0c;再粘贴到其他程序&#xff0c;如word3 saveas函数 <saveas(gca,filename,fileformat)不过此函数不好用常常出错4 print函数 <>> print(gcf,-dpng,a…

C++string容器-子串获取

string子串 功能描述&#xff1a; 从字符串中获取想要的子串 函数原型&#xff1a; 代码如下&#xff1a; #include <iostream> using namespace std; #include <cstring>//string求子串void test01() {string str "abcdef";string subStr str.sub…

我的 .NET Core 博客性能优化经验补充

点击上方蓝字关注“汪宇杰博客”导语去年年底我写了一篇《我的 .NET Core 博客性能优化经验总结》&#xff0c;但后来还发现有一处遗漏需要补充。我们一起来看看~牺牲空间换时间我们知道软件设计只有高手才能做到又小又快&#xff0c;像我这种普通程序员通常只有两种方案&#…

php怎么上传函数,PHP单文件上传原理及上传函数的封装操作示例

搜索热词H_404_0本文实例讲述了PHP单文件上传原理及上传函数的封装操作。分享给大家供大家参考&#xff0c;具体如下&#xff1a;H_404_0表单&#xff1a;H_404_00.PHP:无标题文档请选择您要上传的文件H_404_0单文件上传函数的封装&#xff1a;H_404_000.PHP://单文件上传函数的…