💌 所属专栏:【通信协议】
😀 作 者:兰舟比特 🐾
🚀 个人简介:热爱开源系统与嵌入式技术,专注 Linux、网络通信、编程技巧、面试总结与软件工具分享,持续输出实用干货!
💡 欢迎大家:这里是兰舟比特的技术小站,喜欢的话请点赞、收藏、评论三连击!有问题欢迎留言交流😘😘😘
1. SPI 信号线
SPI 通常有几根线:
- SCK:时钟线(主机输出,从机接收)
- MOSI:主机输出数据,从机输入
- MISO:从机输出数据,主机输入
- CS/SS:片选信号(主机输出,从机输入)
- GND:地线
2. 为什么要共地?
👉 因为 数字电路的“1”和“0”是相对电压,而不是绝对电压。
-
主机发送一个高电平
1(例如 3.3V), -
从机需要用自己的参考点(地/GND)去理解:
-
如果 GND 一致,那么从机看到的就是 3.3V - 0V = 3.3V,正确识别为“高电平”。
-
如果 GND 不一致,比如主机的地比从机的地高 1V:
- 主机发 3.3V,从机参考的是自己的地 0V,但线上的电压其实对它来说是 (3.3V - 1V) = 2.3V。
- 这时候可能还能勉强识别,但如果差得再大,就会出错。
-
更糟的情况:
- 如果完全没有共地,信号线上的电压根本没有参考点,从机完全无法判断到底是“0”还是“1”。
- 就像两个人说话时,一个用“摄氏度”当温度单位,一个用“华氏度”,不约定基准,就完全听不懂。
3. 类比理解
- 共地 = 确认零点基准。
- 就好比两个城市要通信电力,必须先约定“零电位”在哪里,否则一方的 220V 可能在另一方看来是 110V,甚至负电压。
4. 实际电路里如果不共地
- 信号可能会漂浮,逻辑电平识别错误。
- 严重时可能会烧毁器件(因为电压差可能让电流乱窜)。
所以:
SPI、UART、I²C 这些单端信号总线,都必须保证主从机有公共地线。
✅ 总结:
- 数字电路信号是“相对电压”而不是“绝对电压”。
- 共地的作用就是让主机和从机有统一的参考点(0V 基准)。
- 如果不共地,信号无法正确识别,通信必然出错。
版权声明:
本文为 兰舟比特 原创内容,如需转载,请注明出处及作者,禁止未经授权的引用或商用。
32万+

被折叠的 条评论
为什么被折叠?



