用户工具

站点工具


标准:bus:uart:start

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录前一修订版
后一修订版
前一修订版
标准:bus:uart:start [2025/09/15 08:32] – [信号及连接] hwwiki标准:bus:uart:start [2025/09/16 18:53] (当前版本) – [协议] hwwiki
行 33: 行 33:
 {{:标准:bus:uart:2线uart.png?600|}} {{:标准:bus:uart:2线uart.png?600|}}
  
 +
 +===== 硬件设计注意事项 =====
 +
 +==== 上拉电阻 ====
 +
 +UART起始位(Start bit)为高电平拉低到低电平,即空闲时需要保持高电平。
 +
 +一般在Tx和Rx线上都加一个上拉电阻,以保证空闲状态的高电平,避免起始位识别错误[([[https://blog.mbedded.ninja/electronics/communication-protocols/uart-communication-protocol/|UART Communication Protocol:Pull-up Resistors On TX Lines]])]。
 +
 +==== 来自UART的电流倒灌 ====
 +
 +当两个通讯的UART设备,一个设备断电,另一个设备仍在工作,则工作设备Tx或Rx等线上的电流,可能倒灌进未工作设备导致异常。可以通过加二极管或电压转换芯片等来隔离[([[https://blog.mbedded.ninja/electronics/communication-protocols/uart-communication-protocol/|UART Communication Protocol:Backfeeding Through UART]])]。
 +
 +==== 电平转换 ====
 +
 +  * TTL 1.8/3.3/5V之间的电平转换:用三极管(400KHz以下)、MOS管(1MHz以下)搭建转换电路,或直接用转换芯片(参考{{ :元器件:ic:logic:translators_level-shifters:ti_voltage_translation_buying_guide.pdf | Voltage Translation Buying Guide}})
 +  * TTL和RS232之间的电平转换:MAX3221等芯片
 +  * TTL和RS485之间的电平转换:MAX485等芯片
  
 ===== 协议 ===== ===== 协议 =====
  
-UART协议帧结构如下,详见[[https://dreamsourcelab.cn/logic-analyzer/uart/|DreamSourceLab:UART协议分析]]。+UART协议帧结构如下,详见[[https://dreamsourcelab.cn/logic-analyzer/uart/|DreamSourceLab:UART协议分析 > 2.协议规范]]。 
 + 
 +当两个设备需要通过UART协议进行通讯时,它们需要同时约定好以下内容: 
 + 
 +  * 每一位信号的时间长度T(波特率 = 1/T,最大波特率921600) 
 +  * 帧结构中每一项的具体位数 
 +  * 是否有校验位,以及校验位的机制(奇/偶/..)
  
 {{:标准:bus:uart:uart协议帧结构.png?600|}} {{:标准:bus:uart:uart协议帧结构.png?600|}}
 +
 +==== 不同物理层的实现 ====
 +
 +常用的物理层有:TTL/CMOS电平1.8V/3.3V/5.0、RS232(单端)、RS485(差分),电平差异如下图,具体差异见[[https://dreamsourcelab.cn/logic-analyzer/uart/|DreamSourceLab:UART协议分析 > 1.2.不同的物理层实现]]。
 +
 +{{:标准:bus:uart:图_1‑2_不同的物理层电平标准.png?600|}}
 +
 +===== 测试 =====
 +
 +串口的测试有两种仪器,逻辑分析仪和示波器,软件工程师看协议推荐用逻辑分析仪,硬件工程师看信号推荐用示波器。
 +
 +具体详见[[https://dreamsourcelab.cn/logic-analyzer/uart/|DreamSourceLab:UART协议分析 > 3.1. 示波器vs逻辑分析仪]]。
 +
 +逻辑分析仪测试详见[[https://dreamsourcelab.cn/logic-analyzer/uart/|DreamSourceLab:UART协议分析 > 3.   使用逻辑分析仪分析UART通讯]]。
 +
 +UART通讯中的信号错误,详见[[https://www.ti.com/content/dam/videos/external-videos/en-us/9/3816841626001/6313217959112.mp4/subassets/uart_protocol_overview_and_error_sources_0.pdf|TI:UART Protocol Overview]]。
 +
 +
 +
 +
  
  
标准/bus/uart/start.1757896341.txt.gz · 最后更改: 2025/09/15 08:32 由 hwwiki