标准:bus:uart:start
差别
这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录前一修订版后一修订版 | 前一修订版 | ||
标准:bus:uart:start [2025/09/15 08:32] – [信号及连接] hwwiki | 标准:bus:uart:start [2025/09/16 18:53] (当前版本) – [协议] hwwiki | ||
---|---|---|---|
行 33: | 行 33: | ||
{{: | {{: | ||
+ | |||
+ | ===== 硬件设计注意事项 ===== | ||
+ | |||
+ | ==== 上拉电阻 ==== | ||
+ | |||
+ | UART起始位(Start bit)为高电平拉低到低电平,即空闲时需要保持高电平。 | ||
+ | |||
+ | 一般在Tx和Rx线上都加一个上拉电阻,以保证空闲状态的高电平,避免起始位识别错误[([[https:// | ||
+ | |||
+ | ==== 来自UART的电流倒灌 ==== | ||
+ | |||
+ | 当两个通讯的UART设备,一个设备断电,另一个设备仍在工作,则工作设备Tx或Rx等线上的电流,可能倒灌进未工作设备导致异常。可以通过加二极管或电压转换芯片等来隔离[([[https:// | ||
+ | |||
+ | ==== 电平转换 ==== | ||
+ | |||
+ | * TTL 1.8/ | ||
+ | * TTL和RS232之间的电平转换:MAX3221等芯片 | ||
+ | * TTL和RS485之间的电平转换:MAX485等芯片 | ||
===== 协议 ===== | ===== 协议 ===== | ||
- | UART协议帧结构如下,详见[[https:// | + | UART协议帧结构如下,详见[[https:// |
+ | |||
+ | 当两个设备需要通过UART协议进行通讯时,它们需要同时约定好以下内容: | ||
+ | |||
+ | * 每一位信号的时间长度T(波特率 = 1/ | ||
+ | * 帧结构中每一项的具体位数 | ||
+ | * 是否有校验位,以及校验位的机制(奇/ | ||
{{: | {{: | ||
+ | |||
+ | ==== 不同物理层的实现 ==== | ||
+ | |||
+ | 常用的物理层有:TTL/ | ||
+ | |||
+ | {{: | ||
+ | |||
+ | ===== 测试 ===== | ||
+ | |||
+ | 串口的测试有两种仪器,逻辑分析仪和示波器,软件工程师看协议推荐用逻辑分析仪,硬件工程师看信号推荐用示波器。 | ||
+ | |||
+ | 具体详见[[https:// | ||
+ | |||
+ | 逻辑分析仪测试详见[[https:// | ||
+ | |||
+ | UART通讯中的信号错误,详见[[https:// | ||
+ | |||
+ | |||
+ | |||
+ | |||
标准/bus/uart/start.1757896341.txt.gz · 最后更改: 2025/09/15 08:32 由 hwwiki