3. 物理层编码与调制:基带传输、频带传输、数字调制技术(ASK/FSK/PSK/QAM)
各位同学,咱们今天聊聊物理层里最核心的一块——编码与调制。说实话,很多刚入行的朋友容易把“编码”和“调制”搞混。我当年也犯过这个错,在项目里把曼彻斯特编码当成了调制方式,被老工程师一顿批。嗯,咱们今天就把这事彻底理清楚。
3.1 基带传输:最朴素的通信方式
基带传输,说白了就是直接把数字信号(0和1)变成电信号,扔到线上去传。你想想看,最简单的串口通信,就是典型的基带传输。
但这里有个坑——数字信号是方波,方波的高频分量特别多。如果线缆带宽不够,信号就会变形。我在一个工控项目里遇到过,用10米长的RS232线传115200波特率的数据,波形都圆了,误码率直接爆炸。
基带传输的核心问题:
- 信号衰减:高频分量衰减快,传不远
- 码间串扰:波形展宽,前后码元互相干扰
- 直流分量:长时间传0或1,信号会漂移
为了解决这些问题,就有了各种基带编码方案。比如曼彻斯特编码,用跳变来表示0和1。我建议你在做低速总线设计时,优先考虑这种编码——它自带时钟同步,抗干扰能力也不错。
3.2 频带传输:把信号搬到高频上去
基带传输虽然简单,但有个致命弱点——不能无线传,也不能在同一个线缆上同时传多路信号。这时候就需要频带传输了。
频带传输的本质,就是用基带信号去控制一个高频载波的某个参数。这个参数可以是幅度、频率、相位,或者它们的组合。我习惯把载波想象成一个“搬运工”,基带信号是“货物”,调制就是把货物装到搬运工身上。
我的经验: 选择载波频率时,一定要考虑信道特性。我曾经在一个项目里选了2.4GHz的载波做室内通信,结果发现同频干扰严重,后来改到5.8GHz才解决问题。选频段这事,不能光看理论,得实测。
3.3 数字调制技术:ASK / FSK / PSK / QAM
好了,重头戏来了。咱们一个一个说。
3.4.1 ASK(幅移键控)
ASK是最直观的调制方式——用载波的有无来表示1和0。有载波就是1,没载波就是0。简单吧?但简单的东西往往有坑。
ASK的抗噪声能力很差。你想啊,信道里有点噪声,幅度一波动,接收端就可能误判。我在一个RFID项目里用过ASK,距离稍微远一点,误码率就上来了。后来我改用了PSK,效果好了不少。
3.4.2 FSK(频移键控)
FSK用两个不同的频率来表示0和1。比如f1代表0,f2代表1。FSK的抗干扰能力比ASK强,因为频率不容易被噪声干扰。
我记得在蓝牙经典版本里,就用的是GFSK(高斯频移键控)。为什么加个“高斯”?因为直接跳频会产生高频分量,用高斯滤波器平滑一下,带宽就窄了。这个技巧在很多无线协议里都有用到。
3.4.3 PSK(相移键控)
PSK用载波的相位变化来表示数据。最简单的BPSK,用0°和180°两个相位。QPSK用四个相位,每个相位代表2个比特。
PSK的优点是功率利用率高——同样的发射功率,PSK能传更远。但缺点是对相位噪声敏感。我曾经调试过一个QPSK接收机,发现星座图老是转圈,查了两天才发现是本地振荡器的相位噪声太大。
避坑指南: 做PSK系统时,一定要考虑载波同步问题。我曾经因为忽略了这一点,导致接收端解调出来的数据全是乱的。后来加了个Costas环才搞定。
3.4.4 QAM(正交幅度调制)
QAM是ASK和PSK的结合体——同时改变载波的幅度和相位。16QAM用16个星座点,每个点代表4个比特。64QAM用64个点,每个点代表6个比特。
QAM的频谱利用率极高,但代价是对信噪比要求高。你想想看,64QAM的星座点挨得多近啊,稍微有点噪声就判错了。所以在实际系统中,QAM通常配合自适应调制使用——信道好时用高阶QAM,信道差时降级到QPSK甚至BPSK。
我参与过一个Wi-Fi项目,用的就是自适应调制。刚开始连接时用BPSK,等信号稳定了再切换到64QAM。这个策略在802.11协议里叫“速率自适应”,说白了就是看菜吃饭。
3.5 知识体系总览
为了让你更直观地理解这些概念之间的关系,我画了一张图。这张图把基带传输、频带传输和数字调制技术串在了一起,方便你建立整体认知。
3.6 实际系统中的选择策略
在实际项目中,选哪种调制方式,主要看三个指标:
| 调制方式 | 频谱效率 | 抗噪声能力 | 实现复杂度 | 典型应用 |
|---|---|---|---|---|
| ASK | 低 | 差 | 极低 | RFID、红外遥控 |
| FSK | 低 | 中 | 低 | 蓝牙、电话线Modem |
| PSK | 中 | 高 | 中 | 卫星通信、Wi-Fi |
| QAM | 高 | 低(高阶时) | 高 | 有线电视、4G/5G |
我的建议: 如果你是做产品选型,先看信道质量。信道干净、信噪比高,就上QAM。信道差、干扰多,老老实实用FSK或PSK。别为了追求速率把可靠性丢了——产品死机了,再高的速率也没用。
好了,这一章的内容就到这里。编码和调制是物理层的基石,理解了这些,后面看MAC层协议就会轻松很多。记住一句话:物理层解决的是“怎么把比特变成信号发出去”,MAC层解决的是“什么时候发、发完怎么确认”。这两层配合好了,通信系统才能稳定工作。