【通信原理(含matlab程序)】实验三 数字基带信号及其频谱特性

news2024/9/21 18:55:40

💥💥💞💞欢迎来到本博客❤️❤️💥💥
本人持续分享更多关于电子通信专业内容以及嵌入式和单片机的知识,如果大家喜欢,别忘点个赞加个关注哦,让我们一起共同进步~

📋📋📋本文目录如下:🎁🎁🎁

  • 一、实验目的
  • 二、实验内容
  • 三、实验原理
  • 四、实验程序
  • 五、实验结果与分析
  • 六、问题讨论
    • 通信原理全套实验报告
      • 【连载】通信原理----全套Matlab仿真实验报告

一、实验目的

  1. 理解数字基带信号的基本波形的特点;
    2.理解常用数字基带信号频谱的主要特点;
    3.掌握matlab程序的设计方法。

二、实验内容

用matlab画出下列数字基带信号的波形和功率谱:
(1)0,1等概的单极性非归零NRZ信号;
(2)0,1等概的单极性归零RZ信号。

三、实验原理

1、数字基带信号基本波形的特点
(a)单极性波形:基带信号的0电位及正电位分别与二进制符号的0与1对应;
特点:电脉冲之间无间隔,极性单一。有直流分量,要求传输线路具有直流传输能力。
(b)双极性波形:二进制符号0、1分别与正、负电位相对应;
特点:正负电平幅度相同,极性相反且等概率出现时候。无直流分量,有利于在信道中传输。抗干扰能力强。
(c)单极性归零波形:有电脉冲比码元宽度窄,每个脉冲都回到零电位;
特点:可以直接提取定时信息。
(d)双极性归零波形:相邻脉冲之间必定留有零电位的间隙。
特点:兼有双极性和归零波形的特点。
在这里插入图片描述

(e)差分波形:用相邻码元的电平的跳变和不变来表示消息代码,以电平跳变表示“1”,以电平不变表示“0”。
特点:以电平跳变表示码元信息
(f) 多电平波形:一个脉冲对应多个二进制码。
特点:一个脉冲可以携带多个比特信息。传码率一定时,多电平波形的传信率高。
功率谱存在以下性质:
1.连续谱一定存在
2.离散谱的存在取决与g1(t)和g2(t)的波形和概率
3.双极性等概序列无离散谱。

四、实验程序

Ts = 1; % 码元周期
N_sample =100; % 单个码元抽样点数
dt = Ts / N_sample; % 抽样时间间隔
N = 100; % 码元数
t = 0 : dt : (N * N_sample - 1) * dt; % 序列传输时间
gt1 = ones(1, N_sample); % NRZ
gt2 = ones(1, N_sample./2); % NRZ
%% 生成随机序列
RAN = round(rand(1, N)); % 随机0 1序列
NRZ= [];
for i = 1 : N % 生成序列
   if RAN(i)==1
       NRZ = [NRZ gt1];
   else
       NRZ = [NRZ 0*gt1];
   end
end
%% 绘制出结果
figure(1)
subplot(2, 1, 1);
plot(t, NRZ);
grid on;
axis([0 10 -1.5 1.5]);
title('NRZ信号');
%% 功率谱密度计算
fft_NRZ = fftshift(fft(NRZ)); % 求序列的频谱
PE1 = 10 * log10(abs(fft_NRZ) .^ 2 / (N * Ts)); % 公式法求概率谱密度,单位db
PEL1 = (-length(fft_NRZ) / 2 : length(fft_NRZ) / 2 - 1) /10; % 求区间长度
%% 绘制出结果
subplot(2, 1, 2);
plot(PEL1, PE1);
grid on;
axis([-50 50 -50 50]); 
title('NRZ信号功率谱密度');
%% 生成单极性RZ序列
RAN = round(rand(1, N)); % 随机0 1序列
RZ = [];
for i = 1 : N % 生成序列
   if RAN(i)==1
       RZ = [RZ gt2];
       RZ = [RZ gt2*0];
   else
       RZ = [RZ 0*gt1];
   end
end
%% 绘制出结果
figure(2);
subplot(2, 1, 1);
plot(t, RZ);
grid on;
axis([0 10 -1.5 1.5]);
title('RZ信号');
xlabel('t(s)')
ylabel('s(t)(V)')
%% 功率谱密度计算
fft_RZ = fftshift(fft(RZ)); % 求序列的频谱
PE1 = 10 * log10(abs(fft_RZ) .^ 2 / (N * Ts)); % 公式法求概率谱密度,单位db
PEL1 = (-length(fft_RZ) / 2 : length(fft_RZ) / 2 - 1) /10; % 求区间长度
%% 绘制出结果
subplot(2, 1, 2);
plot(PEL1, PE1);
grid on;
axis([-50 50 -50 50]); 
title('RZ信号功率谱密度');
xlabel('f')
ylabel('Ps(f)')

五、实验结果与分析

(1)0,1等概的单极性非归零NRZ信号在matlab中仿真得到的波形以及其功率谱波形如下图所示:
在这里插入图片描述
(2)0,1等概的单极性归零RZ信号在matlab中仿真得到的波形以及其功率谱波形如下图所示:
在这里插入图片描述

六、问题讨论

1、总结本实验的主要收获。
①.掌握了使用matlab绘制数字基带信号的波形以及频谱,大大增加了对数字基带信号以及其频谱特点的理解掌握。
②matlab编程中实现波形绘制的流程:确定一个码元波形的参数如码元传输时间,单个码元采样个数等,然后绘制出单个码元波形,其次产生产生一个随机的码元波形,通过判断绘制出整个传输序列的波形,对传输序列进行一定的计算就可以得到了信号的频谱。
③大大提高了对matlab的掌握程度,能够更加流畅的用matlab进行编程。

2.对实验内容提出自己的想法和建议。
可以在NRZ和RZ波形的基础上绘制更多基带传输码型的波形,如HDB3、AMI码等,观察信号的波形和频谱特性。

通信原理全套实验报告

【连载】通信原理----全套Matlab仿真实验报告

https://blog.csdn.net/amimax/article/details/128776213?spm=1001.2014.3001.5501

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

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

相关文章

Android OpenCV(二)主体识别 位置检测

前言 工作中遇到需要通过OpenCV找到图片主体体积占图片百分比的比例,这里做一个问题解决思路的记录。该方面新手小白,有不对的地方可以评论指出哈 。 重要API Sobel算法 Sobel 计算参考文章 索贝尔算子是计算机视觉领域的一种重要处理方法。 主要用于…

内网传输——解决物联网信息安全和隐私保护问题

与普通电脑系统不同,物联网建立在嵌入式系统的基础之上,其通信协议因设备和应用程序而异。目前还没有一个统一的中央系统来构建安全措施,那么,在企业物联网实际应用中,如何保证信息安全?物联网生态系统的安…

OpenHarmony社区运营报告(2022年12月)

本月快讯• 本月新增22款产品通过兼容性测评,累计220款产品通过兼容性测评。• 12月28日,OpenAtom OpenHarmony(以下简称“OpenHarmony”)凭借其创新的技术特性和开源生态建设成果,荣膺“InfoQ 2022年度十大开源新锐项…

Redis实现用户签到 | 黑马点评

目录 一、BitMap用法 1、介绍 2、用法 3、练习 二、签到功能 1、需求 2、代码实现 三、签到统计 1、分析 2、接口实现 一、BitMap用法 1、介绍 我们完全可以通过数据库签到表来实现签到功能,但是假如我们的用户达到千万,每年平均签到10次&am…

基于微信小程序的网络安全科普系统小程序

文末联系获取源码 开发语言:Java 框架:springboot JDK版本:JDK1.8 服务器:tomcat7 数据库:mysql 5.7/8.0 数据库工具:Navicat11 开发软件:eclipse/myeclipse/idea Maven包:Maven3.3.…

设计模式之简单工厂

现在有一个这样的需求:控制台输入俩个数,并输入运算符,计算并输出结果。上述需求乍一看,特别像一个小型的计算器,记得初学Java时,实现过。 实现一: 创建计算器类,控制台输入俩个数…

windows 10 本地配置Oracle19+用navicat连接

文章目录0.背景环境0.背景知识1.卸载旧版本、安装 oracle 192.配置3.用 Navicat 连接3.1 下载instantclient193.2 配置dll使能连接高版本oracle3.3 配置连接4. 相关操作命令5.本地命令行登录orclpdb下的用户0.背景环境 本机已安装oracle12和Navicat15,需要先彻底卸载…

【docker】基础知识梳理与使用

every blog every motto: You can do more than you think. https://blog.csdn.net/weixin_39190382?typeblog 0. 前言 docker基础知识的梳理与使用 1. docker的理解 Registry(仓库):是一个集中存储与分发镜像的服务。最常用的Registry是…

油井远程监控解决方案

1.项目背景 油田生产过程中,由于井筒内存在着不同程度的缺陷,会产生各种问题。而油井开采设备的连续稳定运行是保证石油开采的首要条件,但是由于油田地域广阔,油井分布广泛,没有规则性的油井工作状况的监测和控制&…

Acwing4655. 重新排序(差分模板题)

给定一个数组 A 和一些查询 Li,Ri,求数组中第 Li 至第 Ri 个元素之和。 小蓝觉得这个问题很无聊,于是他想重新排列一下数组,使得最终每个查询结果的和尽可能地大。 小蓝想知道相比原数组,所有查询结果的总和最多可以增加多少? …

【树】二叉树的非递归遍历

非递归的遍历需要使用栈保存当前不输出的结点,并且三种遍历顺序步骤有所不同。中序遍历1.查看其当前结点是否为空:若非空则将当前结点入栈,指针指向其左孩子;若当前结点为空,说明上一个入栈的结点没有左孩子&#xff0…

vite+vue3+elementPlus搭建项目

创建基础框架 方式一: 创建命令 npm create vitelatest or yarn create vite 注意:这里可能会出现一个坑,注意你的node版本(node版本过低就会报错) 创建成功 创建成功后运行以下命令即可 yarn yarn dev 这种创建方…

C技能树-判断语句

三个数从小到大排序并输出 任意输入3个整数&#xff0c;使用if语句对这3个整数由小到大进行升序排序。请判断下面哪一项无法实现该功能。 #include <stdio.h>/* 交换x和y */ void swap(int* x, int* y) {int temp *x;*x *y;*y temp; }int main(int argc, char** arg…

[红明谷CTF 2021]write_shell

目录 信息收集 payload 补充知识 信息收集 代码审计 <?php error_reporting(0); highlight_file(__FILE__); function check($input){if(preg_match("/| |_|php|;|~|\\^|\\|eval|{|}/i",$input)){// if(preg_match("/| |_||php/",$input)){die(h…

(二十七)Map集合体系

目录 前言: 一、Map集合的遍历方式之一:键找值 二、Map集合的遍历方式之二:键值对 三、Map集合的遍历方式之三:Lambda表达式 四、Map集合的实现类HashMap 五、Map集合的实现类LinkedHashMap 六、Map集合的实现类TreeMap 七、不可变集合 前言: ①Map集合是一种双列集合&a…

机器学习中的聚类算法

1. 概述根据所拥有的数据&#xff0c;可以使用三种不同的机器学习方法&#xff0c;包括监督学习、半监督学习和无监督学习。在监督学习中&#xff0c;根据已标记数据&#xff0c;因此可以确定输出是关于输入的正确值。通过半监督学习&#xff0c;用户将拥有一个大型数据集&…

提高mysql性能:设计阶段

合适的表设计 基本原则 避免太多的列 太多的列会导致mysql从行缓存中将编码过的列转换为行数据时花费大量大代价。 减少太多的关联 为减少太多的关联造成解析和查询的性能影响&#xff0c;应该将单表的关联控制在12个之内。 合理使用枚举 枚举只适用于值相对固定&#x…

go入门——基础语法

go环境安装 1、安装 go官网&#xff1a;Downloads - The Go Programming Language (google.cn) go中文网&#xff1a;Go下载 - Go语言中文网 - Golang中文社区 (studygolang.com) 这里我是amd64位win10系统&#xff0c;所以我下载这个 下载完成之后安装到自己喜欢的目录就好…

Java:基于XML的Spring使用【IOC容器】

基于XML的Spring使用一、Spring IOC 底层实现1.1 BeanFactory与ApplicationContexet1.2 图解IOC类的结构二、 Spring依赖注入数值问题【重点】2.1 字面量数值2.2 CDATA区2.3 外部已声明bean及级联属性赋值2.4 内部bean2.5 集合三、 Spring依赖注入方式【基于XML】3.1 set注入3.…

电子技术——MOS管的CV特性

电子技术——MOS管的CV特性 MOS管是一种压控晶体管&#xff0c;本节我们学习MOS管的CV特性&#xff0c;即电压-电流特性。MOS管的特性曲线有两种&#xff0c;分别是伏安特性和传导特性。 iD−vDSi_D-v_{DS}iD​−vDS​ 特性曲线 为了测量MOS管的 iD−vDSi_D-v_{DS}iD​−vDS​…