【MATLAB源码-第25期】基于matlab的8QAM调制解调仿真,手动实现未调用内置函数,星座图展示。

news/2024/10/21 7:29:58/

操作环境:

MATLAB 2022a

1、算法描述

8QAM调制(8 Quadrature Amplitude Modulation)是一种数字调制技术,它可以在有限带宽内传输更多的信息比特。在8QAM调制中,每个符号可以携带3个比特的信息。QAM调制是将数字信号转换成复数域中的信号,通过同时调制两个正交的载波信号,一个负责实部,一个负责虚部。这两个信号的振幅和相位不同,从而在复平面上构成了一个特定的点,这个点代表了一组符号。在8QAM调制中,有8个不同的相位和幅度组合,分别位于复平面的8个位置。这8个位置通常被排列成一个4x2的矩阵。解调的过程与调制相反,它将接收到的复数信号拆分成实部和虚部,然后通过判决器来将其映射回原始的比特序列。判决器根据接收到的信号决定其所代表的符号。在8QAM调制中,因为有8个可能的符号,所以解调器需要能够区分这8个符号,并将其映射回对应的3比特信息。

1. 将数字信息转换成复数域中的信号,同时调制两个正交的载波信号。

2. 发送信号经过信道传输。

3. 接收端接收到信号后,将其拆分成实部和虚部。

4. 使用判决器将接收到的实部和虚部映射回原始的比特序列。

8QAM调制过程:

1. **比特分组**:将输入的数字比特流分成每组3比特。

2. **映射**:将每组3比特映射到8个可能的符号中的一个。这样,每个符号代表了一个特定的复数值。

3. **复数构建**:每个符号可以表示为一个复数,具有实部和虚部。实部和虚部的大小和相位由映射决定。

4. **正交载波**:将实部和虚部分别调制到两个正交的载波信号上。一个载波负责传输实部,另一个负责传输虚部。

5. **合并**:将两个正交载波信号合并成一个复数信号进行传输。

8QAM解调过程:

1. **接收信号**:接收端接收到经过信道传输的复数信号。

2. **分离**:将接收到的复数信号分解成实部和虚部。

3. **判决**:通过对实部和虚部进行判决,确定接收到的符号是8个可能符号中的哪一个。

4. **映射回比特**:将判决得到的符号映射回原始的3比特信息。

2、仿真结果演示

3、关键代码展示

4、MATLAB 源码获取

点击下方原文链接获取

【MATLAB源码-第25期】基于matlab8QAM调制解调仿真,手动实现未调用内置函数,星座图展示。-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/Koukesuki/article/details/132830480?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522171308807216800226523917%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=171308807216800226523917&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~rank_v31_ecpm-1-132830480-null-null.nonecase&utm_term=25%E6%9C%9F&spm=1018.2226.3001.4450


http://www.ppmy.cn/news/1426844.html

相关文章

双链表的实现

我们知道链表其实有很多种,什么带头,什么双向啊,我们今天来介绍双向带头循环链表,了解了这个其他种类的链表就很简单了。冲冲冲!!! 链表的简单分类 链表有很多种,什么带头循环链表&…

【C语言】贪吃蛇项目(2)- 实现代码详解

文章目录 前言一、游戏开始界面设计首先 - 打印环境界面其次 - 游戏地图、蛇身及食物的设计1、地图2、蛇身设置及打印3、食物 二、游戏运行环节蛇的上下左右移动等功能蛇的移动 三、结束游戏代码 前言 在笔者的前一篇博客中详细记载了贪吃蛇项目所需的一些必备知识以及我们进行…

【算法刷题day28】Leetcode:93. 复原 IP 地址、78. 子集、90. 子集 II

文章目录 Leetcode 93. 复原 IP 地址解题思路代码总结 Leetcode 78. 子集解题思路代码总结 Leetcode 90. 子集 II解题思路代码总结 草稿图网站 java的Deque Leetcode 93. 复原 IP 地址 题目:93. 复原 IP 地址 解析:代码随想录解析 解题思路 “.”参数初…

ORACLE错误提示概述

OceanBase分布式数据库-海量数据 笔笔算数 保存起来方便自己查看错误代码。 ORA-00001: 违反唯一约束条件 (.) ORA-00017: 请求会话以设置跟踪事件 ORA-00018: 超出最大会话数 ORA-00019: 超出最大会话许可数 ORA-00020: 超出最大进程数 () ORA-00021: 会话附属于其它某些进程…

改进前后端交互实例

前后端交互实例(javaweb05)-CSDN博客 在这之前我假设大家都已经学完了IOC和DI 不明白的这里我也解释一下,首先是两个概念 1.控制反转:对象的创建控制权由程序自身转到外部(容器) 2.依赖注入:容器为程序提供运行时所依赖的资源 Bean对象:IOC容器中创建,关联的对象,称之为be…

生活中的洪特规则

不知道你还记不记得高中物理所学的一个奇特的物理规则:洪特规则。 洪特规则是德国人弗里德里希洪特(F.Hund)根据大量光谱实验数据总结出的一个规律,它指出电子分布到能量简并的原子轨道时,优先以自旋相同的方式分别占…

JavaWeb-登录校验

会话技术 浏览器使用的是http协议,多次请求间数据是不能共享的,例如我们要去访问用户数据的接口,但这时候用户是否已经登入了呢?是不知道的,为了解决这个问题,于是引入了会话跟踪技术。 会话:…

Windows如何安装JDK

JDK和JRE简介 JDK:Java Development ToolKit java开发工具包,包含JRE针对java程序开发者 JRE:Java Runtime Environment java程序的运行环境针对java使用者来说 下载JDK,进入官网下载 Oracle官网 双击下载好之后的exe文件&#…