工业通信RS232转RS485(D)转换器:原理、设计与实战调试

📅 2026/8/2 5:39:14 👁️ 阅读次数 📝 编程学习
工业通信RS232转RS485(D)转换器:原理、设计与实战调试

1. 项目概述:从RS232到RS485(D)的工业通信桥梁

在工业自动化、楼宇自控或者一些老旧的设备改造现场,你肯定不止一次遇到过这样的场景:一台配置了经典9针RS232串口的工控机或PLC,需要去连接几十米甚至上百米外、采用RS485总线的一排传感器或仪表。直接拉根线?信号衰减和干扰会让你抓狂。这时候,一个不起眼的小盒子——RS232转RS485转换器,就成了解决问题的关键。尤其是后缀带“(D)”的型号,通常意味着它集成了数据流向自动控制(Auto Direction Control)功能,这在实际应用中能省去大量手动配置的麻烦,让通信变得像接上就用那么简单。

这个项目要聊的,就是如何深入理解并动手实现一个稳定可靠的“RS232 TO RS485 (D)”转换器。它绝不仅仅是把232的电平信号变成485的差分信号那么简单。核心在于,如何在复杂的工业电磁环境下,确保数据在长距离传输中依然准确无误;如何设计自动收发控制电路,让单片机或上位机无需关心繁琐的时序;如何选择恰当的隔离与保护方案,防止地环路和浪涌击穿设备。无论是你手头有一个现成的模块想彻底搞懂它,还是打算从原理图开始自己设计一块电路板,这篇文章都会像一位在现场调试过无数次的老师傅,把里面的门道、踩过的坑、以及确保稳定性的秘诀,掰开揉碎了讲给你听。

2. 核心需求与方案选型解析

2.1 为什么需要转换?RS232与RS485的本质差异

要造桥,先得看清两岸的地形。RS232和RS485是两种截然不同的通信物理层标准,它们的差异决定了直接互联是不可能的。

RS232是一种“单端”通信方式。你可以把它想象成两个人对着喊话(TxD和RxD),声音的响度(电压)是相对于一个共同的参考地(GND)来衡量的。它的信号电压范围在±3V到±15V之间,采用负逻辑(如+3V~+15V表示逻辑0,-3V~-15V表示逻辑1)。这种方式的抗干扰能力很弱,因为任何在信号线和地线之间引入的噪声电压,都会直接被接收端当作信号的一部分。因此,RS232的通信距离通常被限制在15米以内,速率也难以做得很高,它更适合设备本地的、点对点的连接,比如电脑连接老式调制解调器或调试单片机。

RS485则是一种“差分”通信方式。这就像两个人用一条绷紧的绳子传递信号,一个人拉动绳子的一端(A线),另一个人感知两端(A和B线)的张力差。具体来说,RS485使用一对双绞线(A和B)来传输一个信号,接收器检测的是A、B线之间的电压差(VA - VB)。当VA - VB > +200mV时,表示逻辑1;当VA - VB < -200mV时,表示逻辑0。差分传输的妙处在于,外界干扰(如电磁场)会几乎同等地耦合到A、B两条线上,这个共模噪声在计算电压差时会被抵消掉。这使得RS485天生具备强大的抗共模干扰能力,传输距离可以达到1200米以上,速率在长距离时仍能保持数十Kbps到数百Kbps,并且支持总线式拓扑,一条总线上可以挂接多达32个甚至128个(增强型)设备。

所以,转换器的核心任务,就是充当一个“翻译官”和“信号放大器”:将RS232的单端信号,实时、准确地翻译成RS485的差分信号,并反之亦然,同时要解决两者在电气特性、拓扑结构和通信协议上的适配问题。

2.2 “(D)”型转换器的核心优势:自动收发控制

市面上很多简单的RS232转RS485模块,需要用户手动控制收发状态。它们通常有一个额外的控制引脚(如DE/RE),需要由单片机或通过串口的某个控制信号(如RTS)来拉高或拉低,以决定当前是发送数据(驱动器使能)还是接收数据(接收器使能)。对于半双工的RS485总线,同一时刻只能有一个设备在发送,这种手动控制如果时序没对准,很容易导致数据冲突或丢失。

而带“(D)”标识的转换器,其核心价值就在于实现了“自动收发控制”。它通过内部电路自动检测RS232端何时有数据要发送(TxD引脚电平变化),然后自动切换到发送模式,将数据推送到RS485总线上;发送完毕后,又自动切换回接收模式,监听总线上的数据。对于上位机(如电脑)的串口程序来说,它完全感知不到背后的模式切换,就像操作一个普通的RS232端口一样,实现了“透明传输”。

这种自动化的背后,通常依赖一个关键芯片或电路设计:“流向自动控制”逻辑。一种经典的做法是利用RS232的RTS(请求发送)信号。当PC端串口准备发送数据时,其RTS引脚会输出有效电平(通常是正电压),转换器检测到这个信号,立即使能RS485驱动器。另一种更通用、不依赖特定控制信号的做法,是直接监测TxD线上的数据流。通过一个简单的逻辑电路或小容量MCU,检测到TxD从空闲状态(如逻辑1)变为起始位(逻辑0)时,立即触发发送使能,并在数据帧发送结束后的一段短暂延时后关闭使能。后一种方案适应性更强,也是目前主流“(D)”型转换器的实现方式。

注意:自动收发控制电路的延时设计至关重要。延时太短,可能最后一个字节还没发完就关闭了驱动器,导致数据不完整;延时太长,则会不必要地占用总线,影响其他设备的响应。通常这个延时需要根据波特率精确计算,例如保证在最高波特率下,能完整覆盖一个字节的传输时间再加上一点余量。

2.3 工业级转换器的关键考量:隔离与防护

在工厂车间,电气环境极其恶劣:电机启停、继电器动作会产生强烈的电磁脉冲(EFT),雷击可能引入浪涌(Surge),不同设备间的地电位差可能高达数十伏。一个“消费级”的转换器在这种环境下可能几分钟就罢工甚至损坏。因此,“工业级”转换器必须在设计之初就融入隔离与防护思想。

1. 电气隔离:这是工业级设计的基石。隔离的目的是切断RS232端和RS485端之间的直接电气连接,通常使用一个光耦或者磁耦(数字隔离器)来实现。光耦通过LED发光、光敏三极管感光来传递信号,实现了输入输出间数千伏的隔离电压。磁耦则是利用变压器耦合原理。隔离带来了三大好处:

  • 消除地环路干扰:当通信两端设备接地电位不同时,会形成地环路电流,叠加在信号上造成误码。隔离后,两端地线完全独立,此问题迎刃而解。
  • 保护核心设备:即使RS485总线侧因雷击或短路引入高压,也会被隔离屏障阻挡,不会窜入连接电脑或PLC的RS232端,保护了昂贵的主设备。
  • 提高系统稳定性:隔离后,噪声电流无法形成回路,系统抗干扰能力显著提升。

2. 端口防护:隔离是“内功”,端口防护则是“外功”。RS485接口通常暴露在户外或长距离布线上,是雷击浪涌和静电放电(ESD)的重灾区。防护电路通常采用多级防护策略:

  • 第一级(粗保护):在总线入口处使用气体放电管(GDT)压敏电阻(MOV),用于泄放大的雷击浪涌能量(如10/700μs波形)。
  • 第二级(细保护):在靠近芯片引脚处使用TVS二极管(瞬态电压抑制二极管),用于钳位快速的EFT脉冲和ESD(如8/20μs波形或15kV的静电)。
  • 第三级(限流):串联自恢复保险丝(PTC)电阻,在发生持续过流时保护后级电路。

一个典型的工业级RS232转RS485(D)转换器,其内部框图应该是这样的:RS232接口 → 电平转换/缓冲 →隔离屏障(光耦/磁耦) → 自动方向控制逻辑 → RS485收发器芯片 →防护电路(TVS、GDT等) → RS485接线端子。

3. 核心电路设计与元器件选型

3.1 电平转换与接口电路

首先处理RS232端。现代电脑或工控机的串口已经是±5V~±15V的RS232电平,而我们的转换器内部电路通常是3.3V或5V的TTL/CMOS电平。因此,我们需要一个RS232收发器芯片来完成电平转换。

经典之选:MAX232系列及其兼容芯片。如MAX232、SP3232等。这类芯片内部集成了电荷泵,仅需外接4个或5个0.1μF~1μF的电容,就能将单5V电源升压产生±10V左右的电压,用于驱动RS232电平。它通常提供两路收发(T1IN/T1OUT, R1IN/R1OUT),我们只需要用一路连接DB9连接器的2脚(RxD)和3脚(TxD)。对于“(D)”型转换器,我们可能还需要用到它的另一路通道,或者利用其产生的负电压来辅助检测某些控制信号。

更简单的方案:如果主控设备(如某些嵌入式主板)直接提供TTL电平的UART信号(TxD, RxD, GND),那么可以跳过MAX232,直接使用这些TTL信号。这种情况下,转换器通常提供一个3针或4针的接线端子(VCC, TxD, RxD, GND)来连接。

在DB9接口侧,务必注意引脚定义。标准DTE设备(如电脑)的DB9公头:2脚是RxD(接收数据),3脚是TxD(发送数据),5脚是GND。我们的转换器作为DCE设备,其DB9母头的连接应交叉对应:即转换器的TxD接电脑的RxD(2脚),转换器的RxD接电脑的TxD(3脚)。有些转换器会通过一个跳线帽或拨码开关来选择“直连”或“交叉”,这在调试时非常方便。

3.2 RS485收发器与自动方向控制实现

这是转换器的“心脏”。我们选择一款RS485收发器芯片,如MAX485、SN65HVD72、SP3485等。它们都包含一个差分驱动器和一个差分接收器,以及关键的使能引脚:驱动器使能DE(高电平有效)和接收器使能/RE(低电平有效)。将/RE引脚接地使其常使能,我们只需控制DE引脚即可实现半双工收发切换。

现在来看如何实现“(D)”的自动控制。这里介绍两种主流且可靠的电路方案:

方案一:基于RTS信号的控制(需要上位机配合)这是最传统的方法。利用MAX232转换出的RS232电平中的RTS信号(DB9的7脚)。当电脑串口准备发送时,RTS输出正电压(如+8V)。我们通过一个电阻分压和二极管,将这个正电压转换为TTL高电平,直接连接到RS485芯片的DE引脚。同时,可以将/RE引脚也连接到这个控制信号上(通过一个非门或直接连接,取决于芯片逻辑),实现DE和/RE的同步反相控制。这种方案简单,但要求上位机程序在发送前正确设置RTS信号,兼容性取决于软件。

方案二:基于TxD数据流检测的控制(全自动,推荐)这是目前更通用、更智能的方案。其核心思想是:检测TTL电平的TxD线,当有数据发送(TxD由高变低,即起始位)时,立即打开DE;发送结束后,延迟一段时间再关闭DE。

一个经典的纯硬件实现电路如下:

  1. 发送检测:TxD信号通过一个RC电路(电阻R1和电容C1)和一个施密特触发器反相器(如74HC14)。RC构成一个短暂延时。当TxD变低时,经过反相和RC延时,产生一个高电平脉冲。
  2. 单稳态触发:将这个脉冲送入一个单稳态触发器(如74HC123),单稳态的输出脉宽由外部电阻R2和电容C2决定。这个脉宽就是DE使能信号的持续时间。
  3. 驱动使能:单稳态触发器的输出Q直接连接到MAX485的DE引脚。同时,可以通过一个三极管或直接将/RE接地(如果芯片允许)来控制接收器。

这个电路的巧妙之处在于,只要TxD上有数据(一个字节接一个字节),起始位的下降沿就会不断“触发”单稳态电路,使其输出保持高电平(DE有效)。当一帧数据发送完毕,TxD恢复高电平(空闲状态),经过设定的延时(由R2C2决定)后,单稳态输出才恢复低电平,DE关闭,转换器切回接收模式。

计算延时时间:延时时间T = 0.7 * R2 * C2(对于74HC123)。这个时间必须大于在最低波特率下,传输一个完整字节所需的时间。例如,如果最低波特率为300bps,传输一个10位的帧(1起始位+8数据位+1停止位)需要10 / 300 ≈ 33ms。那么T至少应设为35-40ms,以确保即使波特率很低,也能完整发送。同时,这个延时也不宜过长,以免影响总线响应速度。

实操心得:在实际调试中,我更喜欢使用一颗超低功耗的单片机(如STM8L或某款51内核MCU)来实现自动方向控制。单片机持续监测UART的TxD引脚,通过精准的定时器来管理DE使能时序。这样做的好处是灵活性极高:可以通过固件调整延时、增加发送前导码、甚至实现波特率自适应、数据流控等高级功能。虽然成本略高于纯硬件方案,但对于需要高可靠性和定制功能的工业产品来说,是非常值得的。

3.3 隔离与防护电路设计细节

隔离方案选择:

  • 光耦隔离:成本低,隔离电压高(如PC817可达5kV)。但速度受限(几十Kbps到几百Kbps),需要给输入输出侧提供独立的隔离电源。对于RS485侧,通常需要一个DC-DC隔离电源模块来提供5V或3.3V电源。
  • 磁耦隔离:如ADI的ADuM系列、TI的ISO系列。速度高(可达几十Mbps),功耗低,集成度高(可能将多路信号和电源隔离集成在一颗芯片内)。但成本相对较高。

对于RS232转RS485转换器,通信速率通常不会超过115.2Kbps,光耦方案完全足够且经济。需要隔离的信号至少包括:TxD、RxD。如果采用方案一的RTS控制,则RTS也需要隔离。

一个典型的光耦隔离设计:

  1. 电源隔离:使用一个定制的1W或2W的DC-DC隔离模块,将输入侧的5V(来自USB或外部适配器)转换为隔离侧的5V。
  2. 信号隔离:为每路需要隔离的信号(如TxD, RxD)配置一个光耦。以TxD为例:非隔离侧的信号通过一个限流电阻(如330Ω)驱动光耦的LED。隔离侧,光耦的光敏三极管集电极接隔离电源VCC_ISO,发射极通过一个上拉电阻(如4.7kΩ)接地,从发射极输出的就是隔离后的反相信号,可能需要再经过一个反相器恢复原相位。
  3. 布局要点:光耦的输入和输出部分,在PCB布局上必须严格分开,保持足够的爬电距离(通常>8mm),中间可以开一条隔离槽以增强绝缘。

端口防护电路设计:在RS485的A、B线与地之间,布置防护元件。一个经典的三级防护电路如下表所示:

防护等级元件类型典型型号/参数布局位置作用
一级(粗保)气体放电管 (GDT)90V, 5kA总线入口处,接线端子之后泄放雷击等大能量浪涌,将电压限制在数百伏。
二级(细保)TVS二极管SMAJ6.5CA (双向)靠近RS485芯片引脚钳制中等级别的EFT和剩余浪涌电压,将其限制在芯片安全范围(如±12V)。
三级(限流)自恢复保险丝 (PTC)60V, 100mA总线入口处,GDT之前防止持续过流损坏后级电路,故障排除后自动恢复。
辅助限流电阻10Ω, 1/4WTVS之前,芯片引脚之前进一步限制流入芯片的瞬间电流,与TVS配合。

在实际设计中,考虑到成本和板面,对于大多数工业环境,在A、B线对地之间各放置一个双向TVS管(如SMBJ6.5CA),并在A、B线上串联一个10-20Ω的电阻,已经能提供相当可靠的保护。GDT和PTC通常在户外或雷击风险高的场合才会增加。

4. 完整实现步骤与调试要点

4.1 原理图设计与PCB布局

假设我们采用“TxD检测+光耦隔离”的方案,核心原理图模块包括:

  1. 电源输入与滤波:USB口或DC插座输入5V,经过滤波电容和防反接二极管。
  2. RS232电平转换:使用一片SP3232,连接DB9接口的2、3、5脚,VCC接5V。
  3. 隔离电源:使用一款5V转5V的隔离DC-DC模块(如B0505S-1W)。
  4. 信号隔离:两路光耦(如PC817)分别隔离来自SP3232的TTL电平的TxD和RxD信号。注意为光耦的LED侧提供限流电阻,为三极管侧提供上拉电阻。
  5. 自动方向控制:使用一片74HC123单稳态触发器。其触发输入端(A)通过RC网络连接隔离后的TxD信号。输出端(Q)连接到RS485芯片的DE。R2和C2的值根据所需延时计算选取(例如,R2=1MΩ, C2=47nF, T≈33ms)。
  6. RS485收发与防护:使用一片SN65HVD72。其DI(数据输入)接隔离后的TxD, RO(数据输出)接隔离电路的输入侧(回传给RxD)。DE接74HC123的输出。A、B线输出端先串联一个10Ω电阻,然后分别对地接一个SMBJ6.5CA TVS管,最后接到接线端子。
  7. 状态指示:增加LED指示灯:电源指示灯(PWR)、发送指示灯(Tx, 接在DE信号上)、接收指示灯(Rx, 接在RO信号上,通过三极管驱动)。

PCB布局的黄金法则:

  • 严格分区:将PCB清晰地划分为非隔离区(RS232侧、主电源)和隔离区(RS485侧、隔离电源)。两个区域之间留出至少3mm的隔离带,最好开槽。
  • 地平面分割:非隔离区的地(GND)和隔离区的地(GND_ISO)必须完全分开,仅在隔离电源模块下方有一点连接(模块内部已隔离)。
  • 防护元件就近放置:TVS管和限流电阻必须紧靠RS485芯片的A、B引脚和电源引脚,回流路径要短而粗。
  • 信号走线:RS485的A、B线应作为一对差分线走线,等长、等距、平行,远离其他高速或噪声源。在差分线对起始端可以并联一个120Ω的终端电阻(通过跳线选择是否启用),用于匹配电缆特性阻抗,消除长线末端反射。

4.2 焊接、组装与上电测试

焊接时,先焊接电源和基础器件(电阻、电容、IC插座),最后焊接光耦、隔离模块和RS485芯片。使用IC插座可以方便后期更换。

上电前,务必用万用表检查:

  1. 电源短路:测量5V输入对地电阻,排除短路。
  2. 隔离检查:测量非隔离区GND和隔离区GND_ISO之间的电阻,应为无穷大(开路)。
  3. 电压检查:上电后,测量非隔离区5V、隔离区5V是否正常。

上电后,观察电源指示灯是否亮起。此时,不接任何通信线,用示波器或逻辑分析仪测量:

  • RS232端的TxD(对GND)应为高电平(约-5V~-12V,逻辑1)。
  • 隔离后的TxD信号(对GND_ISO)应为高电平(3.3V或5V)。
  • RS485芯片的DE引脚应为低电平(接收模式),A、B线之间的差分电压应在-200mV到+200mV之间(空闲状态通常偏向一个方向,取决于芯片内部偏置)。

4.3 通信功能联调

准备一台电脑、一个USB转RS232适配器(如果电脑没有原生串口)、串口调试助手软件(如AccessPort、友善串口助手)和一台RS485设备(或另一个RS485转换器构成回环测试)。

步骤1:回环测试

  1. 将转换器的RS232端通过串口线连接电脑。
  2. 将转换器的RS485的A和B线短接(自发自收)。
  3. 打开串口调试助手,选择正确的COM口,设置波特率(如9600)、数据位(8)、停止位(1)、无校验。
  4. 勾选“十六进制显示”,在发送框输入“01 02 03”,点击发送。
  5. 观察接收框。如果收到了完全相同的“01 02 03”,并且Tx/Rx指示灯闪烁正常,说明RS232到RS485的发送路径、以及RS485到RS232的接收路径基本正常。这一步验证了电平转换、隔离和自动方向控制的核心功能。

步骤2:实际设备通信

  1. 断开RS485的短接线,按照A接A、B接B的规则,连接到目标RS485设备(如一个Modbus RTU温湿度传感器)。
  2. 根据设备协议,在串口调试助手中组帧发送查询指令(例如Modbus查询帧:01 03 00 00 00 01 84 0A)。
  3. 观察是否收到正确的回复帧。如果收不到,检查:
    • 接线:A、B是否接反?这是最常见的问题。可以尝试对调A、B线。
    • 终端电阻:如果通信距离较长(超过100米)或速率较高,总线两端(最远的两个设备)的A、B之间需要并联一个120Ω电阻。检查是否需要并启用终端电阻。
    • 共地问题:虽然转换器是隔离的,但总线上所有RS485设备的“地”(如果有)是否连接良好?有时需要将总线所有设备的GND连接起来,提供一个共同的参考地。
    • 波特率等参数:确保电脑串口、转换器(如果是自适应则没问题)、终端设备的波特率、数据位、停止位、校验位完全一致。

5. 常见问题排查与实战经验

在实际部署和使用中,你会遇到各种各样的问题。下面这个表格整理了一些典型故障现象、可能原因和排查思路,可以帮你快速定位。

故障现象可能原因排查思路与解决方法
上电后电源指示灯不亮1. 电源接反或电压不对。
2. 输入滤波电容短路。
3. 电源芯片或DC-DC模块损坏。
1. 检查电源极性、电压(5V)。
2. 断电,用万用表测输入电容两端电阻,排除短路。
3. 更换电源相关芯片或模块。
Tx/Rx指示灯常亮或不亮1. LED接反或限流电阻值过大。
2. 控制信号异常(如DE常高)。
3. 光耦损坏。
1. 检查LED极性、电阻值(通常1-5kΩ)。
2. 测量DE引脚电平,在无数据时应为低。检查自动方向控制电路。
3. 测量光耦输入输出是否正常。
回环测试正常,接设备无反应1. A、B线接反。
2. 设备地址或协议不对。
3. 总线缺少终端电阻(长距离时)。
4. 总线共模电压超出范围。
1.首先尝试对调A、B线,这是最高效的排查方法。
2. 确认设备从站地址、功能码、CRC校验是否正确。
3. 在总线两端(最远设备处)的A、B间并联120Ω电阻。
4. 用万用表测量A对地、B对地电压,应在RS485收发器允许的共模电压范围内(如-7V~+12V)。
通信不稳定,偶发误码1. 波特率不匹配或有偏差。
2. 电磁干扰严重。
3. 自动方向切换延时设置不当。
4. 电源噪声大。
1. 使用示波器测量实际波特率,校准晶振或单片机时钟。
2. 检查屏蔽双绞线是否完好,屏蔽层是否单点接地。远离变频器、大功率电机等干扰源。
3. 调整自动方向控制电路的RC延时,确保覆盖完整字节。
4. 在电源入口和芯片电源引脚增加滤波电容(如10μF电解并联0.1μF瓷片)。
通信距离很短(<50米)1. 使用非双绞线,如平行线或网线中的非绞合对。
2. 总线负载过重,设备过多超出驱动能力。
3. 线径太细,线路损耗大。
1.必须使用特性阻抗约120Ω的屏蔽双绞线,这是RS485的物理基础。
2. 计算总线负载,确保在收发器驱动能力内(标准是32单位负载)。可选用1/4负载或1/8负载的芯片以挂接更多设备。
3. 长距离传输应使用线径较粗的电缆(如AWG18)。
设备偶尔重启或损坏1. 雷击或浪涌冲击。
2. 地环路电流或电位差过大。
3. 电源异常。
1. 检查并加强端口防护电路(TVS、GDT)。
2. 确保转换器隔离性能良好,断开有问题的地线连接。
3. 检查供电电源的稳定性和抗干扰能力。

几条宝贵的实战经验:

  1. “对调A/B线”是第一法宝:近一半的RS485通信问题源于线序接反。随身带一个短接帽或一小段导线,遇到问题先做回环测试,排除转换器自身问题后,立刻尝试对调A、B线。
  2. 终端电阻不是必须的,但长距离高速时必须要有:对于低于100米、速率低于19.2Kbps的通信,可以不加终端电阻。一旦距离延长或速率提高,信号反射就会变得严重,必须在总线最远端的两个设备上并联120Ω电阻。注意,电阻是并联在总线上的,不是串联。
  3. 隔离是稳定的基石,但并非万能:隔离解决了地环路问题,但总线上的差模干扰(A、B线之间的干扰)仍需依靠双绞线和屏蔽层来抑制。确保屏蔽层在控制柜端单点接地,避免形成地环路。
  4. 电源质量至关重要:很多莫名其妙的故障源于肮脏的电源。为转换器配备一个优质的线性电源或带良好滤波的开关电源,能在源头避免大量噪声问题。在PCB上,给每个芯片的VCC和GND引脚附近都放置一个0.1μF的退耦电容,并尽量靠近引脚。
  5. 调试工具是你的眼睛:一个简单的USB转RS485适配器、一个可以显示原始字节的串口调试助手、一个万用表,是调试RS485系统的三件套。条件允许的话,一个手持式示波器能让你直观地看到总线上的信号波形,判断是否存在过冲、振铃或干扰。

最后,关于那个自动方向控制的延时,我个人的经验是,在单片机方案中,我会在检测到停止位后,启动一个定时器,延时1.5到2个字符的时间再关闭DE。例如,在9600波特率下,一个字符时间约1ms,那么延时设为1.5-2ms。这为最后一个字节的停止位和可能的空闲时间提供了足够的余量,同时又不会过多占用总线。这个值需要在实际系统中微调,以达到最稳定的效果。