0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

之前的程序如何改写才能完成相同的功能呢

通信工程师专辑 来源:通信工程师专辑 作者:了凡三训 2022-10-10 10:00 次阅读

继续讲解!如果不调用通信工具箱,那么之前的程序如何改写才能完成相同的功能呢?先来看看MATLAB里面强大的工具箱!使用方法见上一篇文章中的程序。

a5ab46b0-3a66-11ed-9e49-dac502259ad0.png


我们重点关注调制和解调的相关函数!

a5e586fe-3a66-11ed-9e49-dac502259ad0.png

a71a8d30-3a66-11ed-9e49-dac502259ad0.png

有这么多!

再看看Modulation方面有哪些函数!

a7b5e6ae-3a66-11ed-9e49-dac502259ad0.png

太多知识了,

简直就是应有尽有!

真的是学习通信基础知识的好帮手!

我在通信仿真的系列文章里面会详细介绍!

看函数的语言就知道如何使用了!

a7ef99f8-3a66-11ed-9e49-dac502259ad0.png

学习仿真,help必须经常查阅!

%%%% File: BPSK_theory_sim2.m %%%%

%%% date: 2022-09-10 author: 算法工匠 %%%

%%% 程序说明

% BPSK调制解调理论仿真。

% 可以帮助大家消化通信模型!

% 通过函数来理解通信模型,这也是最简单的学习路径!

% 不使用工具箱!

%%% 仿真环境

% 版本:2021a

clear;close all;format long;

%%****************** 程序主体 ***********************%%

EsNo = 10;

% 蒙特卡洛仿真

% 请查找资料,了解什么是蒙特卡洛仿真?

err_num = 0;

for counter = 1:100

txData = randi([0 1],500,1); % Generate data 信源

% 调制方式 PSK

modSig = 2*txData - 1 ; % Modulate 发射机

rxSig = awgn(modSig,EsNo); % Pass through AWGN 传输

rxData = (sign(rxSig)+1)/2; % Demodulate 接收机

err_num = sum(abs(rxData-txData)) + err_num;

biterr_rate = err_num/(counter*length(txData));

end

fprintf('Error rate = %f Number of errors = %d ', biterr_rate, err_num)

% 请掌握这个函数!

figure

plot(rxSig-modSig,'*-')

title('噪声')





审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 接收机
    +关注

    关注

    8

    文章

    1122

    浏览量

    52631
  • BPSK
    +关注

    关注

    0

    文章

    32

    浏览量

    22814
  • MATLAB仿真
    +关注

    关注

    4

    文章

    174

    浏览量

    19638

原文标题:计算机通信与网络v2 实验课程 绪论(2)

文章出处:【微信号:gh_30373fc74387,微信公众号:通信工程师专辑】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    stm32烧录程序后直接运行不正常,必须断电重启才能正常工作是怎么回事?

    请高手指教一下,我的板子因为外观问题没有设计开关,调试过程中发现,用ST-LINK Utility烧录程序时,选择下完完成后reset,这种状态下板子可以工作,但是中断系统有异常,reset脚接地也还是有问题,必须要断电重启才能
    发表于 04-07 07:54

    STM32上下电内部flash被改写的原因?

    基于STM32F405系列一个64pin MCU,在使用过程中,整机掉电更换另一个部件,再上电后发现这个产品不工作了。发回厂家发现STM32内部flash数据被改写了,前几行被改成了0,导致程序无法
    发表于 03-25 08:24

    同步通信是怎么让时钟同步的?

    将两个支持相同协议的设备通过同步通信串口连接,怎么保证两个通信串口的时钟信号是同步启动的?这一步是靠软件实现还是硬件实现,如果在建立完成之前,两台设备的通信时钟恰好是正交的,那么此时
    发表于 01-19 14:55

    ADU7023的EEPROM在什么情况下会被改写

    ADU7023的EEPROM在什么情况下会被改写?知道电源噪声在特定频率下超过一定幅度会发生这种情况,排除电源噪声因素,还可能有什么原因
    发表于 01-11 06:17

    改写AS18AP程序

    如何改写
    发表于 12-19 10:50

    使用具备SigmaDSP内核的编解码器是否必须载入SigmaDSP程序才能使用?

    载入SigmaDSP程序才能使用? 或者ADAU1761与ADAU1361相同, 只设定寄存器亦可使用?
    发表于 11-30 07:31

    Altium Designer相同模块复制功能

    原理图中出现相同模块时,可以利用AD中的copy room功能,节约时间。
    的头像 发表于 11-20 10:06 2323次阅读
    Altium Designer<b class='flag-5'>相同</b>模块复制<b class='flag-5'>功能</b>

    如何才能获取LabVIEW程序中的传递参数呢?

    有些场景下,我们用LabVIEW开发的应用程序,需要通过命令行来调用,并向该应用程序传递参数,那么在程序中如何才能获取这些参数呢?
    的头像 发表于 10-11 09:26 668次阅读
    如何<b class='flag-5'>才能</b>获取LabVIEW<b class='flag-5'>程序</b>中的传递参数呢?

    如何通过代码改写N76E003 config?

    的配置值去烧录config,于是就想在代码 里挽回工人的失误,在代码里用IAP方式改写成自己想要的配置值。 好多工程师错误的做法:在代码开始阶段直接写config,这样一来就是每次芯片复位重启都会去写
    发表于 09-01 08:30

    E203 debug时,使用make upload命令进行调试,怎么才能不让debug自动退出

    E203 在linux系统下进行debug时,使用make upload命令完成软件的下载后,串口打印完,自动退出是为什么,怎么才能不让debug自动退出,我这边需要保持debug
    发表于 08-12 06:12

    嵌入式代码单元测试如何完成

    软件开发中,每次需求的变更基本都需要改写代码,而代码变更后就需要进行功能测试,当然在功能测试之前需要代码的单元测试,避免代码改动后部分场景没有验证,最后出现各种问题。
    发表于 06-05 12:28 585次阅读

    很久之前写的一个上位机程序

    很久之前写的一个上位机程序,没啥好说的,只是纪念一下。                    
    发表于 05-29 15:10 1次下载
    很久<b class='flag-5'>之前</b>写的一个上位机<b class='flag-5'>程序</b>

    ABB机器人程序功能的应用

    ABB机器人的例行程序可以分为三种类型;程序功能、中断,本章主要分享一下程序功能的用法。
    发表于 05-19 17:27 6230次阅读
    ABB机器人<b class='flag-5'>程序</b>和<b class='flag-5'>功能</b>的应用

    怎样才能从ESP下载自己的代码

    单击​​“编辑”-菜单广告“下载为...”有效,但结果不是纯代码;有一个页眉和页脚,其中包含一些其他内容。 稍后,当我的程序完成时,我想将所有内容“克隆”到一系列相同的设备中。 因此,如果有一种
    发表于 05-10 13:05

    怎么样才能使输入信号的相位反转180°

    怎么样才能使输入信号的相位反转180°
    发表于 04-28 15:21