简介:本资源是一套面向通信工程专业本科生及MATLAB/Simulink初学者的数字调制系统仿真实践材料,聚焦2ASK、2PSK与2FSK三种基础调制解调方式的建模、对比与验证。资源完整呈现各调制方式在Simulink中的系统搭建流程、参数配置逻辑及关键波形(基带信号、已调信号、解调输出)的时频域对比分析,有效支撑课程设计、实验报告撰写与原理理解深化。压缩包共15个文件(3.67MB),含6个核心M脚本(如bin2text、text2bin、logicalTimes2VectorValue等用于码型转换与信号生成)、4个MAT数据文件、2个XML配置文件、1个MP4操作录像(Windows Media Player可播)、1个SLX主模型文件及1个SLXC缓存文件,结构清晰,便于复现与拓展。已有1552人学习下载,配套高清操作录像详细演示路径设置、模块连接与仿真运行全过程,并特别提示当前文件夹路径需与程序所在目录一致,显著降低环境配置门槛与调试成本。
1. 项目概述:一次搞懂三种基础数字调制
在通信工程的学习和实践中,数字调制解调是绕不开的核心基础。无论是无线Wi-Fi、手机信号,还是卫星通信,底层都离不开这些技术。2ASK、2PSK和2FSK,作为三种最基础的二进制数字调制方式,是理解更复杂调制(如QPSK、QAM)的基石。很多教材和理论推导讲得天花乱坠,但公式和波形图看多了,总感觉隔着一层纱,不知道在实际系统中信号到底是怎么“变”的,噪声又是如何“破坏”它的。
这就是Simulink建模仿真的价值所在。它像一个可视化的数字实验室,让你能亲手搭建通信链路,从信源、调制、信道、解调到信宿,每一个环节的参数、每一个节点的波形都清晰可见。这次,我们就用Simulink来一次彻底的“实战”,不仅分别搭建2ASK、2PSK、2FSK的调制解调系统,还要把它们放在一起对比,直观地看看到底谁更“抗打”。我会分享完整的建模思路、关键模块的配置“玄学”、仿真参数的设置心得,以及如何录制操作过程做成教程。无论你是正在啃通信原理的学生,还是想重温基础的工程师,这篇内容都能让你获得“哦,原来如此”的透彻感。
2. 核心思路与方案设计:为何选择Simulink与对比仿真
在开始动手前,理清思路至关重要。这个项目不是简单地复现三个独立系统,而是要构建一个可对比的仿真平台。我的核心设计思路是“统一变量,隔离系统,同步观测”。
2.1 仿真平台选型:Simulink的不可替代性
为什么一定是Simulink,而不是纯MATLAB脚本或者其他仿真软件?对于通信系统仿真,尤其是这种强时序、多信号流并行的场景,Simulink具有天然优势。
首先,数据流可视化是最大的亮点。在.m脚本里,信号是一个个数组,你看不到它在时间轴上的连续变化。而在Simulink中,你可以用Scope(示波器)实时观察任何一点的波形,调制后信号的眼图、解调过程中的判决过程,都一目了然。这对于理解调制解调的本质——时域波形的变换——至关重要。
其次,模块化建模高度贴合通信系统框图。通信系统的标准教材框图,几乎可以一比一地映射到Simulink的模块连接上。Bernoulli Binary Generator就是信源,乘法器实现ASK调制,Sine Wave模块加上开关就是FSK,这种对应关系极大地降低了建模的认知负担。
最后,参数化与批处理能力。我们可以通过MATLAB工作区变量来统一控制三个系统的核心参数(如载波频率、码元速率、信噪比),实现一键切换、批量仿真。这对于后续的对比分析,比如绘制不同信噪比下的误码率曲线,是必不可少的。
注意:虽然Simulink学习曲线初期有点陡峭,但一旦掌握其“信号流”思维,效率远高于脚本。对于这个项目,我们避免使用过于复杂的S函数或自定义模块,全部采用基础库模块,确保通用性和可复现性。
2.2 整体系统架构设计
为了实现公平对比,我设计了如下图所示的并行仿真架构。虽然不能直接画图,但你可以想象三个并行的子系统,它们共享相同的“输入”和“环境”。
- 统一的信源与时钟:使用同一个
Bernoulli Binary Generator产生随机的二进制序列(0和1),同时用同一个Pulse Generator产生同步的位时钟信号。这保证了三个系统处理的原始信息完全一致,对比才有意义。 - 独立并行的调制解调通道:三个调制解调系统作为三个独立的子系统(Subsystem)并行运行。每个子系统内部包含完整的调制器、信道模型和解调器。
- 共享的可控信道:使用
AWGN Channel(加性高斯白噪声信道)模块,并通过一个变量(如SNR_dB)统一控制其信噪比。这样,我们可以通过扫参,一次性观察三个系统在不同噪声强度下的表现。 - 集中的性能观测与比较:在输出端,将三个系统的解调输出比特流与原始信源比特流分别进行比较。使用
Error Rate Calculation模块计算各自的误码率(BER),并并排显示在同一个示波器上。同时,在关键节点(如调制输出、解调输入)连接示波器,以便观察波形变化。
这种设计的好处是,你只需要改变信噪比这一个参数,跑一次仿真,就能同时得到三个系统的性能数据,高效且直观。
3. 核心模块解析与建模实操要点
搭建模型就像搭积木,但每个“积木”怎么设置大有讲究。这里我拆解三个调制解调器的核心实现,并分享那些容易踩坑的模块参数配置。
3.1 2ASK(幅移键控)系统搭建
2ASK是最直观的调制方式,用载波的有无来代表1和0。在Simulink中,实现起来也最简单。
调制器:
- 信源:
Bernoulli Binary Generator。关键参数是Sample time(采样时间),它决定了码元速率。例如,若码元速率Rb = 1000 bps,则Sample time = 1/Rb = 0.001 秒。将Initial seed设为一个随机数,如12345,以保证可重复性。 - 载波:
Sine Wave模块。频率Frequency设为载频Fc,例如10 kHz。相位Phase设为0。最重要的是,它的Sample time必须设置为系统仿真步长。通常设为-1,表示继承驱动信号的采样时间,但为了更稳定,我习惯手动设为一个小值,如1e-6或更小,这需要与整个模型的求解器设置匹配。 - 乘法器:使用
Product模块。将二进制序列(0或1)与正弦载波直接相乘。当序列为1时,输出完整载波;为0时,输出为0。这就是OOK(通断键控,2ASK的一种特例)。
关键技巧:二进制序列是离散的,而载波是连续的。直接相乘可能导致波形不理想。一个实用的技巧是,先将二进制序列通过一个Zero-Order Hold模块,将其采样时间设置为与载波信号一致,再进行乘法,这样得到的已调信号波形更干净。
解调器(非相干包络检波): 非相干解调简单且常用,适用于OOK。
- 带通滤波:使用
Analog Filter Design或Digital Filter Design模块,设计一个中心频率为Fc的带通滤波器,滤除带外噪声。 - 包络检波:Simulink没有直接的包络检波模块。可以用一个
Abs(取绝对值)模块加上一个低通滤波器来近似实现。更精确的方法是使用Complex Phase/ Magnitude模块中的Magnitude部分,但需要先将实信号转为解析信号(通过希尔伯特变换),这对新手稍复杂。我们采用简单可靠的Abs + Lowpass Filter组合。 - 低通滤波:低通滤波器的截止频率需要略大于码元速率
Rb,以保留基带信号的主要能量。 - 抽样判决:这是最易出错的环节。使用
Relational Operator(关系操作符)模块作为比较器,与一个Constant模块(作为判决门限)进行比较。门限值通常设置为包络幅度的中间值,可以通过观察无噪声时“1”和“0”的包络电平来估算。Switch模块根据比较结果输出1或0。抽样时刻必须同步!需要使用一个Pulse Generator产生的窄脉冲(与信源同步)触发一个Sample and Hold模块,在最佳时刻(通常是码元中间)对滤波后的信号采样,再送入判决器。
实操心得:2ASK系统的性能瓶颈在判决门限的设置。门限对噪声非常敏感。在实际仿真中,我通常会添加一个小的反馈环路,用一段时间内信号的平均幅度来自适应调整门限,这比固定门限稳健得多。
3.2 2PSK(相移键控)系统搭建
2PSK用载波的0度和180度相位来分别表示0和1,其抗噪声性能优于2ASK。
调制器:
- 信源处理:2PSK需要将单极性的二进制序列(0,1)转换为双极性序列(-1,+1)。使用
Gain模块,设置增益为2,偏置为-1。即:输出 = 2*输入 - 1。这样,输入1变为+1,输入0变为-1。 - 载波:同上,使用
Sine Wave模块。 - 乘法器:将双极性序列与载波相乘。当序列为+1时,输出
sin(wt);为-1时,输出-sin(wt) = sin(wt+π)。完美实现了0和π的相移。
解调器(相干解调): 2PSK必须采用相干解调,即需要在接收端恢复出同频同相的载波。
- 带通滤波:同2ASK,先滤除带外噪声。
- 乘法器(解调):将滤波后的信号与接收端恢复的载波
sin(wt)相乘。这是最关键的一步。 - 低通滤波:相乘后的信号包含高频分量和低频基带分量。通过一个截止频率略高于
Rb的低通滤波器,滤除高频部分,得到包含原始二进制信息的基带信号。 - 抽样判决:此时基带信号是双极性的。判决门限设为0。使用
Relational Operator与0比较,大于0判为1,小于0判为0。
载波恢复的挑战:如何获得与发送端同频同相的sin(wt)?这是2PSK仿真的核心难点。对于简单的教学仿真,我们可以“作弊”,直接从发送端的载波模块引过来(这称为“理想载波恢复”)。但为了更贴近实际,可以模拟一个简单的锁相环(PLL)或使用Costas Loop(科斯塔斯环)模块。对于入门,我建议先使用理想载波,专注于理解解调原理,待模型跑通后,再尝试用Phase-Locked Loop模块构建一个简单的载波恢复环路,这会让你对同步问题有深刻认识。
3.3 2FSK(频移键控)系统搭建
2FSK用两个不同的频率f1和f2来分别表示1和0。
调制器: 实现FSK调制有多种方法,这里介绍最直观的“开关法”。
- 两个载波:放置两个
Sine Wave模块,频率分别设置为f1和f2(例如,f1=8kHz,f2=12kHz,中心频率Fc=10kHz)。 - 开关选择:使用
Switch模块。将二进制序列作为控制端,当输入为1(或大于某个门限)时,开关接通f1对应的载波;当输入为0时,接通f2对应的载波。这样就生成了2FSK信号。
更优雅的方法:使用Voltage-Controlled Oscillator (VCO)模块。将二进制序列(0/1)作为输入电压,通过设置VCO的Output amplitude、Quiescent frequency(中心频率Fc)和Input sensitivity,可以线性地控制输出频率在f1和f2之间变化。这种方法生成的FSK信号相位是连续的,性能更好。
解调器(非相干鉴频): 非相干解调常用包络检波法或过零检测法。这里介绍更易实现的非相干包络检波法。
- 两路带通滤波:使用两个中心频率分别为
f1和f2的带通滤波器,将接收到的FSK信号分离成两路ASK信号。 - 两路包络检波:对每一路滤波后的信号,分别进行包络检波(方法同2ASK的解调部分,
Abs + Lowpass Filter)。 - 比较判决:使用
Subtract模块将两路检波输出的电压相减,再将差值送入一个Relational Operator与0比较。如果上路(对应f1)电压大于下路(对应f2),则判为1,否则判为0。
这种方法本质上是将FSK解调转化为了两个ASK信号的幅度比较,结构清晰,易于在Simulink中实现。
4. 系统集成、参数设置与仿真运行
把三个子系统搭建好后,我们需要将它们集成到一个主模型中,并配置好仿真的“环境”,让实验跑起来。
4.1 模型集成与信号路由
在主模型画布上,我会创建三个子系统(Subsystem),分别命名为ModDem_2ASK、ModDem_2PSK和ModDem_2FSK。将之前搭建好的模型分别复制到这三个子系统中。
- 输入信号分发:从
Bernoulli Binary Generator信源引出的信号线,分别连接到三个子系统的“数据输入”端口。同样,位时钟信号也分发给三个子系统作为“时钟输入”。 - 噪声信道插入:这是对比的关键。在每个子系统的调制器输出后,插入一个
AWGN Channel模块。务必确保这三个信道模块的SNR (dB)参数设置为同一个变量,比如SNR_dB。你可以在模块参数框里直接输入SNR_dB。 - 输出信号收集:每个子系统的解调比特流输出,与原始信源比特流一起,分别送入三个
Error Rate Calculation模块。该模块会计算误码数和误码率。 - 观测点设置:为了直观对比,需要添加多个
Scope。- Scope1(波形对比):同时观察原始二进制信号、以及三个系统调制后的信号(在加噪声之前)。这能让你直观看到三种调制方式时域波形的区别。
- Scope2(眼图):在三个系统解调器判决前的信号点上,分别连接
Eye Diagram模块。眼图是衡量系统性能的黄金标准,通过眼图的张开度可以直观比较三者的抗噪声能力。 - Scope3(误码率显示):将三个
Error Rate Calculation模块的误码率输出端口连接到同一个Scope,可以实时观察仿真过程中误码率的变化,最终稳定值即为该信噪比下的BER。
4.2 关键参数计算与设置
参数设置不当,仿真结果可能毫无意义。以下是一组建议的基准参数,并解释其计算逻辑:
- 比特率
Rb:1000 bps。这是一个适中的速率,便于观察。 - 仿真时间:
0.1秒。对于Rb=1000bps,可以传输100个比特,统计上足够初步观察误码。 - 载波频率
Fc:10 kHz。载频应远高于比特率,通常至少是Rb的10倍以上,以确保调制信号有足够的周期数。这里Fc/Rb = 10。 - 2FSK频率间隔:
f1 = 8 kHz,f2 = 12 kHz。间隔Δf = 4 kHz。对于非相干解调,通常要求Δf ≈ Rb或更大,以保证两个频率的信号能被滤波器有效分离。这里Δf/Rb = 4,是合理的。 - 系统采样率/仿真步长:这是最易出错的地方。根据奈奎斯特采样定理,采样频率至少是信号最高频率的两倍。我们信号最高频率是FSK的
f2=12kHz,所以采样频率至少24kHz。但为了波形光滑,通常取5-10倍。我设置为Fs = 100 kHz,即采样间隔Ts = 1/Fs = 1e-5 秒。- 在Simulink中,需要在
Model Configuration Parameters(模型配置参数)中设置求解器。选择Fixed-step(固定步长),求解器类型选discrete (no continuous states),并将Fixed-step size设置为Ts,即1e-5。 - 所有信号源模块(如
Sine Wave,Bernoulli Generator)的采样时间,要么设置为-1(继承),要么也手动设为Ts,以保证全局同步。
- 在Simulink中,需要在
- 滤波器设计:
- 带通滤波器:对于ASK和PSK,中心频率
Fc=10kHz,带宽略大于2*Rb=2kHz,可设为[9kHz, 11kHz]。对于FSK的两个滤波器,中心频率分别为8kHz和12kHz,带宽同样设为2kHz(即[7kHz,9kHz]和[11kHz,13kHz])。 - 低通滤波器:截止频率设为
1.5 * Rb = 1.5kHz,以保留基带信号并滤除乘法产生的高频分量。
- 带通滤波器:对于ASK和PSK,中心频率
4.3 仿真运行与结果记录
参数设好后,点击运行。首先,你应该在Scope1中看到清晰的对比波形:2ASK是时断时续的正弦波;2PSK是连续但相位会突跳180度的正弦波;2FSK是频率在f1和f2之间跳变的连续波。
然后,通过改变SNR_dB变量(例如在MATLAB命令行运行SNR_dB = 10;后重新仿真),观察Scope3中误码率的变化和Scope2中眼图的闭合情况。你会明显看到,在相同信噪比下,2PSK的眼图张开最大,误码率最低;2ASK最差;2FSK介于中间。这完全验证了理论:2PSK的抗噪声性能最优。
操作录像技巧:Simulink本身没有内置录像功能。我常用的方法是使用第三方屏幕录制软件(如OBS Studio),录制整个仿真操作过程,包括参数设置、运行、缩放观察波形等。在录制时,注意放慢操作速度,并对关键步骤进行语音讲解。另一种更专业的方法是使用Simulink的Simulation Stepper(仿真步进器)一步步执行,并配合Record功能生成仿真回放文件,但这更适合于内部调试而非制作教学视频。对于分享,屏幕录制加配音是最直接有效的方式。
5. 深度对比分析与性能评估
仿真跑通只是第一步,能从数据中读出信息才是关键。我们来系统地对比三个系统的性能。
5.1 理论性能回顾与仿真验证
根据通信理论,在加性高斯白噪声信道下,三种调制方式的误码率公式如下:
- 2ASK (相干解调):
P_e = Q( sqrt(E_b / N_0) ) - 2PSK (相干解调):
P_e = Q( sqrt(2E_b / N_0) ) - 2FSK (非相干解调):
P_e = 0.5 * exp(-E_b / (2N_0))
其中,Q()是Q函数,E_b是每比特能量,N_0是噪声功率谱密度。E_b/N_0和SNR存在换算关系。从公式一眼就能看出,在相同E_b/N_0下,2PSK的误码率最低,因为它公式里根号下有个2。
我们的仿真如何验证?我们可以进行蒙特卡洛仿真。编写一个简单的MATLAB脚本,循环改变SNR_dB的值(例如从0dB到12dB,步进1dB),在每个信噪比下运行Simulink模型(可以使用sim命令),并读取Error Rate Calculation模块输出的误码率。最后将三个系统在不同信噪比下的误码率画在同一张对数坐标图上。
仿真结果示例(基于上述参数):
| 信噪比 (dB) | 2ASK 误码率 (仿真) | 2PSK 误码率 (仿真) | 2FSK 误码率 (仿真) |
|---|---|---|---|
| 4 | ~0.12 | ~0.02 | ~0.08 |
| 8 | ~0.03 | ~0.001 | ~0.01 |
| 12 | ~0.003 | < 0.0001 | ~0.001 |
从表格可以清晰看出,2PSK的性能遥遥领先,在12dB时误码率已极低。2FSK次之,2ASK相对最差。这个排序与理论完全吻合。
5.2 眼图与波形定性分析
误码率是定量指标,眼图则提供了定性且直观的性能洞察。
- 2ASK眼图:在无噪声时,眼图的上支路(对应“1”)和下支路(对应“0”)分开明显。但加入噪声后,下支路会向上漂移(因为噪声总是叠加在信号上),上支路会向下扩散,导致眼图垂直方向快速闭合。判决门限非常难选,这是其性能差的根本原因。
- 2PSK眼图:其基带信号是双极性的,眼图中心是0电平。噪声会使得“+1”和“-1”两个电平的轨迹围绕0电平上下扩散。由于判决门限是固定的0,只要两个电平的分布不严重重叠到对方区域,就能正确判决。因此,在相同噪声下,PSK的眼图垂直张开度通常比ASK大,抗噪声能力更强。
- 2FSK眼图:通过两路包络检波后比较,其眼图形态与ASK类似,但性能更好。因为FSK的两个频率代表不同的符号,在非相干解调时,噪声对两路的影响相对独立,通过比较两路大小来做判决,相当于有了一定的“冗余”信息。
在仿真中,你可以尝试固定一个中等信噪比(如8dB),然后同时打开三个系统的眼图观察。你会看到2PSK的眼孔又大又圆,2FSK的次之,而2ASK的眼孔已经几乎闭合成一条缝了。这个视觉对比非常震撼。
5.3 系统复杂度与适用场景探讨
性能并非唯一考量,实现复杂度决定了其应用场景。
- 2ASK:实现最简单。调制就是一个开关,解调用包络检波,无需载波同步。但其频谱效率最低(因为有一半时间不发射载波,功率利用率低),且抗噪声能力最差。常用于早期的简单无线遥控、光纤通信的OOK调制等对成本极度敏感、速率要求不高的场景。
- 2PSK:抗噪声性能最好,在相同误码率要求下,所需的信噪比最低,或者说在相同信噪比下,它能达到更高的数据传输速率。但其实现最复杂,因为必须进行相干解调,需要精确的载波同步(科斯塔斯环等),这对接收机电路或数字信号处理算法提出了高要求。广泛应用于对可靠性要求高的场景,如卫星通信、深空通信、现代数字调制的基础(QPSK, 8PSK等都由其发展而来)。
- 2FSK:性能与复杂度折中。非相干解调实现相对简单(无需载波同步),抗噪声和抗幅度衰落能力优于ASK。但其频谱效率较低,因为需要两个频点。常用于频率选择性衰落信道、早期的低速无线数传(如寻呼系统)、以及一些工业控制领域的无线通信中。
通过这次Simulink建模对比,你不仅能从波形和误码率数据上直观看到三者的差异,更能从系统搭建的复杂程度上,深刻理解这种差异背后的工程代价。这比单纯背诵理论结论要生动和深刻得多。
6. 常见问题、调试技巧与模型优化
在实际搭建和仿真过程中,你肯定会遇到各种奇怪的问题。这里我总结几个最常见的“坑”和解决方法。
6.1 仿真报错与信号维度问题
- 问题:运行时提示“维度不匹配”或“采样时间不匹配”。
- 排查:
- 检查所有模块的采样时间:确保信源、载波、滤波器等所有处理连续时间信号的模块,其采样时间设置一致,或者设置为
-1(继承)。最稳妥的方法是,在模型配置中设好固定步长后,将所有关键信号源的采样时间都显式设置为该步长值。 - 检查信号维度:
Bernoulli Binary Generator输出的是标量。Sine Wave输出也是标量。但有些滤波器模块(尤其是旧版Analog Filter Design)可能输出向量。使用Scope观察信号线,如果线变粗了,说明是向量。此时需要在滤波器后使用Reshape模块或选择滤波器模块的标量输出选项。 - 检查端口数据类型:确保连接无误。例如,将逻辑信号(boolean)直接连接到需要双精度(double)输入的乘法器,有时会出错。可以使用
Data Type Conversion模块进行转换,或者确保信源模块输出的是double类型。
- 检查所有模块的采样时间:确保信源、载波、滤波器等所有处理连续时间信号的模块,其采样时间设置一致,或者设置为
6.2 无输出、波形异常或误码率100%
- 问题:模型能运行,但Scope里没波形,或者波形完全不对,误码率始终是0.5(随机猜)甚至更高。
- 排查:
- 仿真时间与步长:首先检查仿真总时间是否太短,还没等到信号产生。检查固定步长是否设置得过大,导致对高频载波采样不足(出现锯齿状波形)。确保步长远小于载波周期(例如,载波10kHz,周期0.1ms,步长至少设为0.01ms或更小)。
- 滤波器参数:这是重灾区。带通滤波器的通带必须包含信号频谱。用
Spectrum Analyzer模块看一下调制信号的频谱,确认你的滤波器设置是否正确。低通滤波器的截止频率不能太低,否则会把基带信号也滤掉,导致解调输出一直是0。 - 判决门限与抽样时刻:对于ASK和FSK,用
Scope仔细观察无噪声时,包络检波器输出的“1”电平和“0”电平。将判决门限设在两者中间。抽样时刻必须对准码元中间!仔细调整Sample and Hold模块的触发脉冲的相位延迟,确保它在每个比特的稳定中心位置采样。你可以同时观察原始比特流和抽样点,在Scope里对齐查看。 - 载波同步(仅PSK):如果使用理想载波,请检查从发送端引过来的载波是否确实与调制载波同频同相。如果自己搭建了PLL,请耐心调整PLL的环路带宽和阻尼系数,这是一个调试难点。初期建议先用理想载波确保主干通路正确。
6.3 模型优化与扩展建议
当基本模型运行稳定后,可以尝试以下优化和扩展,让仿真更专业、更深入:
- 参数自动化扫描:如前所述,用MATLAB脚本驱动Simulink模型,自动遍历一系列信噪比,并收集误码率数据,然后绘制BER vs. SNR曲线,与理论曲线对比。这是评估调制性能的标准方法。
- 加入多径衰落信道:用
Multipath Rayleigh Fading Channel模块替代简单的AWGN信道,可以模拟更真实的无线环境,观察三种调制方式对频率选择性衰落和平坦衰落的抵抗能力。你会发现FSK在抗衰落方面的优势会更明显。 - 实现差分PSK(DPSK):2PSK需要绝对相位参考,而DPSK通过比较相邻码元的相位差来解调,无需恢复绝对载波相位,实现更简单。尝试修改你的PSK模型为DPSK,这是一个很好的进阶练习。
- 优化滤波器设计:使用等纹波或窗函数法设计更优的数字滤波器,替代简单的巴特沃斯滤波器,观察对系统性能(尤其是眼图)的改善。
- 制作交互式界面:使用MATLAB App Designer创建一个简单的图形用户界面(GUI),将Simulink模型嵌入其中。在GUI上设置比特率、载频、信噪比等参数,并实时显示波形和误码率。这非常适合用于教学演示。
搭建和调试这个对比仿真模型的过程,本身就是一个极好的学习过程。每一个错误的排查,都会让你对通信系统如何工作、参数之间如何相互影响有更深一层的理解。当你最终看到三条误码率曲线按照理论预期分开,眼图清晰呈现不同调制方式的特性时,那种成就感是单纯看书无法比拟的。
本文还有配套的精品资源,点击获取