MATLAB通信系统仿真设计——直接序列扩频通信系统仿真

一、背景

扩频通信就是通过增加带宽来换取较低的信噪比,这就是扩频通信的基本思想和理论依据。当信噪比无法提高时,可以加大带宽,达到提高信道容量的目的。扩频是一种宽带技术,由于扩频占用更宽的频带,看起来是浪费有限的频率资源,然而所占用的频带可以通过多用户共享频带得到补偿。

二、系统组成

在发射端把有用信号与伪随机序列相乘(或者模二加),使信号的频谱展宽到一个很宽的范围,然后用扩展后的序列去调制载波。在接收端,把接收到的信号用相同的伪随机序列相乘,有用信号与伪随机码相关,相乘后恢复为扩频前的信号。直接序列扩频系统的组成原理框图如图所示。

三、代码实现

clear
clc
r=round(rand(1,5000));   %产生5000个随机码元
r=2*r-1;               %码序列变为双极性
SNR=-10:1:10;            % 信噪比
L=length(r);for m=1:1:5             %扩频增益的类型a=repmat(r,1,m);b=(reshape(a,L,m))';x=reshape(b,1,L*m);len=length(x);x_code=sign(mgen(19,11,len)-0.5);msout=x.* x_code;          % 已扩频信号%信道噪声for SNR1=1:21Eb = 1;N0= Eb/(10^((SNR1-11)/10));sig=msout+sqrt(N0)*randn(size(msout));for i=1:LA=randi([1,3],1,1);for g=1:mt=(i-1)*m+g;sig(t)=sig(t)+A*sin(t);endendmsint=sig.* x_code;   %开始解扩Err=0;for j=1:Ly=0;for pp=1:my=y+msint(m*j+pp-m);endz=y/m;  %解扩得到用户信码if z>0z=1;elsez=-1;endif z~=r(j)           %用户错误计数Err=Err+1;endendBER(m,SNR1)=Err/L ;     % 误码率实际值endsemilogy(SNR,BER(m,:));hold on
end
title('扩频增益与误码率关系曲线')
xlabel('信噪比/dB')
ylabel('误码率')
grid on
legend('Gain=1','Gain=2','Gain=3','Gain=4','Gain=5')function[out]=mgen(g,state,N)
gen=dec2bin(g)-48;
M=length(gen);
curState=dec2bin(state,M-1)-48;
for k=1:Nout(k)=curState(M-1);a=rem(sum(gen(2:end).*curState),2);curState=[a curState(1:M-2)];
end
end

 在相同扩频增益的条件下,系统的误码率随着系统信噪比的增加呈现出对数形状的减小;在相同信噪比的情况下,系统的误码率随着系统扩频增益的增大呈现出直线型的下降,即系统的误码率与系统的扩频增益和信噪比呈负相关,当系统的扩频增益足够大时,系统的误码率可以达到0。

最后:

如果你想要进一步了解更多的相关知识,可以关注下面公众号联系~会不定期发布相关设计内容包括但不限于如下内容:信号处理、通信仿真、算法设计、matlab appdesigner,gui设计、simulink仿真......希望能帮到你!

5a8015ddde1e41418a38e958eb12ecbd.png

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

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

相关文章

C++项目 -- 高并发内存池(四)Page Cache

C项目 – 高并发内存池(四)Page Cache 文章目录 C项目 -- 高并发内存池(四)Page Cache一、PageCache设计1.PageCache的整体结构2.Common.h的更新3.CentralCache中的GetOneSpan函数的实现4.PageCache类设计5.代码实现 二、申请内存…

STM32——OLED菜单

文章目录 一.补充二. 二级菜单代码 简介:首先在我的51 I2C里面有OLED详细讲解,本期代码从51OLED基础上移植过来的,可以先看完那篇文章,在看这个,然后按键我是用的定时器扫描不会堵塞程序,可以翻开我的文章有单独的定时…

【前端工程化面试题】webpack proxy的工作原理,为什么能解决跨域问题

在 webpack 的配置文件 webpack.config.js 中有一个配置项 devServer 里面有一个属性是 proxy,这里面可以配置代理服务器,解决跨域问题,请参考官网。 一般来说 webpack 的代理就是说的开发服务器 webpack-dev-server。 其实不光是 webpack 其…

高光谱图像降噪方法(2D Wavelet, 3D Wavelet, FORPDN, HyRes等方法)

近年来,随着遥感应用的不断深入,高光谱图像研究已经成为遥感领域发展最迅速的技术之一。与其他传统成像技术相比,高光谱图像具有更多优势:更丰富的信息量、纳米级的光谱分辨率以及范围更广且连续的光谱。因此,在农业、…

react使用Map方法遍历列表不显示的问题

问题: 在最开始搭建选项卡的时候,我的js代码是这样的 import React, { Component } from react import ./css/02-maizuo.css export default class App extends Component {state {list: [{id: 1,text: 电影},{id: 2,text: 影院}, {id: 3,text: 我的}…

linux系统zabbix自动发现主机

自动发现主机 新的主机浏览器配置创建发现规则创建发现主机后动作 新的主机 rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm# yum clean allyum install zabbix-agentvim /etc/zabbix/zabbix_agentd.conf Server10.12.153.1…

实战 | 基于YOLOv8和OpenCV实现车速检测(详细步骤 + 代码)

导 读 本文主要介绍如何使用YOLOv8+BYTETrack+OpenCV实现车辆速度的计算(详细步骤 + 代码)。 前 言 您是否想过如何使用计算机视觉来估计车辆的速度?在本教程中,我们将探索从对象检测到跟踪再到速度估计的整个过程。 本文的实现主要包含以下三个主要步骤,分别是对象…

小苯的数组切分 ---- 牛客月赛

题目描述 qionghuaqionghuaqionghua 给了小苯一个长度为 n 的数组 a&#xff0c;希望小苯将数组 aaa 分为恰好非空的三段。即&#xff1a;[1,l−1],[l,r],[r1,n]这三段&#xff0c;其中 1< l≤r<n。接着&#xff1a; ∙ 第一段的所有数字做 ⊕&#xff08;按位异或&…

代码随想录算法训练营day15||二叉树part02、102.二叉树的层序遍历、 226.翻转二叉树(优先掌握递归)、101. 对称二叉树 (优先掌握递归)

102.二叉树的层序遍历 题目&#xff1a;给你一个二叉树&#xff0c;请你返回其按 层序遍历 得到的节点值。 &#xff08;即逐层地&#xff0c;从左到右访问所有节点&#xff09;。 接下来我们再来介绍二叉树的另一种遍历方式&#xff1a;层序遍历。 层序遍历一个二叉树。就是…

php基础学习之可变函数(web渗透测试关键字绕过rce和回调函数)

可变函数 看可变函数的知识点之前&#xff0c;蒟蒻博主建议你先去看看php的可变变量&#xff0c;会更加方便理解&#xff0c;在本篇博客中的第五块知识点->php基础学习之变量-CSDN博客 描述 当一个变量所保存的值刚好是一个函数的名字&#xff08;由函数命名规则可知该值必…

每日一题——LeetCode1455.检查单词是否为句中其他单词的前缀

方法一 js函数slice() 将字符串按空格符分割为单词数组&#xff0c;记searchWord的长度为n&#xff0c;分割每个单词的前n位看是否和searchWord匹配 var isPrefixOfWord function(sentence, searchWord) {let res sentence.split(" ")for(i 0 ; i < res.lengt…

【后端高频面试题--设计模式上篇】

&#x1f680; 作者 &#xff1a;“码上有前” &#x1f680; 文章简介 &#xff1a;后端高频面试题 &#x1f680; 欢迎小伙伴们 点赞&#x1f44d;、收藏⭐、留言&#x1f4ac; 往期精彩内容 【后端高频面试题–设计模式上篇】 【后端高频面试题–设计模式下篇】 【后端高频…