一、一句话结论
UART 总线空闲时,默认必须是高电平(逻辑 1)。 如果 RX 没有上拉,空闲时会是浮空电平 → 乱码、假起始位、一直误触发。
二、UART 协议规定
UART 标准就是这样定的:
- 空闲状态 = 高电平(1)
- 起始位 = 拉低(0)
- 然后才是数据位
也就是说:RX 脚必须一直保持高,直到有数据发来,才会被拉低。
三、为什么 RX 要上拉,TX 不用?
-
TX 是输出 芯片自己会驱动高低电平,不需要外部上拉。
-
RX 是输入 不发数据时,对方不会驱动总线,总线悬空 → 必须上拉把它 "拉到稳定高电平"。
四、总结
RX 上拉 = 让总线空闲时稳定为高电平,避免假起始位、乱码、误触发。 UART 协议天生要求空闲为高,所以 RX 必须上拉。