您好,欢迎访问飞畅科技官网!
服务热线:+086 0571-87007055/56/57 EN
232串口技术:串行通信的基本原理与应用

光通信与工业互联方案专家

WE ONLY FOCUS ON TRANSMISSION AND ACCESS

联系我们CONTACT US

全国咨询热线

0571-87007055/56/57/75

传真:0571-87007140

手机:15306818230(微信)

QQ :2355416925

定制设计:18072828031(微信)

或给我们留言

在线留言

RS232串口怎样工作:电平转换、UART字符与接线核对

浏览次数: 飞畅科技原创 作者:飞畅科技技术团队

RS232串口让仪表、控制器或计算机沿一条发送线逐位传字符,另一条线可接收返回字符。它不是网口,也不负责理解每个数字代表什么测量量。接通一条通信链路,要同时对上三件事:电气接口、字符格式和应用报文。接口名称相同,不能代替接线和协议核对。

一、先分清UART、RS232与应用协议

UART是通用异步收发器,负责把一个字节排成按时间发送的比特,再把收到的比特拼回字节。RS232收发电路负责让芯片内部的逻辑信号变成外部接口需要的电压,并在接收方向完成相反转换。应用协议则约定地址、命令、数据含义与检查方法。三者各做一段工作,不能把“串口通了”解释成设备已经理解所有仪表。

例如电脑查询称重仪,程序先组成仪表要求的命令,UART发送字符,驱动器改变电平,铜缆送到仪表。仪表完成接收和解析后,再沿返回路径发送称重结果。波特率正确但命令不对,可能没有回复;命令正确但接错电平,也不能通信。这个例子只说明任务划分,不表示任意称重仪都使用同一种协议。

二、为什么不能把芯片引脚直接接到RS232

芯片侧常见零伏与某个正电源电压之间的逻辑信号,具体电平取决于器件。RS232数据线上,逻辑一对应负电压,逻辑零对应正电压;接收判决还留有过渡区,不能把接近零伏随意算作有效数据。这与常见的芯片逻辑侧表示方法不同。图中正负五伏仅是教学示例,不是所有端口必须输出的固定值。

RS232驱动器提供相应输出,接收器再变回芯片能够处理的逻辑。某些芯片用电荷泵从单个低压电源得到所需电压,但那是器件内部的功能,不能据此把外部RS232线直接接到单片机。购买USB串口适配器时也要看清:USB转TTL与USB转RS232是不同产品,外形相似不代表电平兼容。

UART字符经RS232驱动器转换电平,通过铜缆到对端接收器,返回方向使用另一条数据线
图1|通用机制示意,省略具体连接器脚号和保护电路;逻辑侧与接口侧分开。示例波形不是产品实测或施工接线图。

三、接收端怎样知道一个字符从哪里开始

异步通信没有另外传一条公共时钟线,双方按约定的波特率运行。UART用起始位提示一个字符开始,再按配置收取数据位,最后检查停止位;启用奇偶校验时还会有对应校验位。接收端依据本地时序判读,允许误差与采样方式取决于具体器件,不能只看见脉冲就认为它必定恢复正确。

常见配置8N1表示八个数据位、无奇偶校验、一个停止位,加上起始位共十位。本文用十六进制0x55举例:低位先发,八个数据位依次是一、零、一、零、一、零、一、零。图画的是UART逻辑侧,不能拿它的高低位置直接当作RS232接口正负电压。数据格式可配置,8N1不是所有仪表默认值。

UART逻辑侧以起始位、八个低位先发的数据位和停止位传送0x55字符
图2|以8N1与0x55说明字符边界,采样点仅用于教学。十个位时间承载一个八位字节,应用层仍需定义报文边界和校验。

四、波特率不等于有用数据每秒多少字节

波特率表示每秒符号变化的时间尺度;在这里的二电平异步传输示例中,每个符号承载一位。若设为9600 baud、8N1,连续字符的理论上限是9600除以10,即每秒960个字节。查询命令、地址、检查码、字符间隔和等待回复还占时间,因此实际每秒拿到的测量记录更少。这是算例,不是对某台产品的吞吐承诺。

115200是常见设置,不是所有RS232实现不可超过的统一天花板。芯片、软件、线缆负载和设备版本共同决定支持条件。例如TI的TRS3221E资料列有高于该数值的器件速率能力,但不能把芯片指标套到任意整机。项目应使用两端共同支持的设置,并在计划的线缆和负载下验证,不靠提高菜单里的数值消除通信故障。

五、TX、RX与信号参考要按双方端子定义核对

有效路径应是一个发送输出到另一个接收输入,返回路径相反。SG是信号参考,不是第二条数据线,也不能随意代替保护接地。DTE与DCE是接口角色,帮助说明信号方向;直通线还是交叉线,应依据双方角色和真实端子定义决定。不能仅凭连接器公母、设备名称或线缆颜色判断。

九针D形连接器很常见,但有九针外壳不证明就是标准PC脚位的RS232;设备也可能使用接线端子。先查两端准确型号的接口图,写出发送、接收、参考与需要的控制信号对应关系。两端地电位条件不允许简单连接时,应由专业人员选择合适隔离和传输方式,不用短接试错来处理。

有的业务只用发送、接收和参考,有的还要求RTS/CTS等硬件流控。流控告诉对方暂时能否继续发送,并不是业务成功的确认。如果软件启用流控而现场没有对应线路,可能一直等不到发送许可。光延伸设备是否转送这些控制信号,也要单独核对,不能由“支持RS232”四个字推断。

六、远距离问题要区分铜缆段与延伸设备

RS232是相对参考端判决的单端接口。线缆电容、干扰与参考电位变化会影响接收;速度和距离必须结合实际设备条件看,不能承诺一个固定长度在所有速率下可靠。改成RS485差分传输,是改变接口并增加相应转换设备,不是把RS232线路自身“优化成差分”。两种接口的接线与接收规则也不同。

飞畅产品中心的FCP-RDQ4G提供一至四路串口,接口类型可通过DIP开关设置,RS232部分列有RXD、TXD与信号参考端,适合核对既有串口的光纤延伸需求。它解决的是两地之间传输媒介变化,不会自动把仪表协议改成另一种。订购时需确认端口模式、速率、握手信号、两端配对和光路条件;光纤段距离不能套到仪表到光端机的铜缆段上。

七、按顺序验证,比一口气换全部参数更有效

先在允许的维护窗口做短线、低风险测试:确认供电、电平类型与端子定义,再核对波特率、数据位、校验、停止位及流控。拿一条手册中的已知请求检查实际发出的十六进制字节和回复。没有回复时先区分未发送、方向不对、格式不符与应用命令被拒绝,避免把所有问题都叫“串口坏了”。

接入延伸设备后,先验证最小链路,再换入正式光路,每次只改变一个主要条件。记录命令、响应、时间间隔、设备版本和错误现象;偶尔收到一个字符不代表整条报文完整。长时间运行还应检查超时、恢复和缓冲处理。非授权不要对在产控制口发送随机字符、短接未知脚位或修改关键参数。

最后把三层证据分开保存:接口与接线正确、字符可以完整收发、应用结果符合预期。RS232的价值是清楚、可复查的点对点通信,而不是接口插上就天然具有远距离、自动识别协议或零错误能力。

资料说明:两幅原理图经核对,展示通用机制,不是产品实物或实测。芯片速率与图中数值仅作解释,整机能力按对应型号和交付版本确认。

核验资料:TI:RS232接口电路与电气关系;TI:TRS3221E器件资料;Microchip:UART异步字符;飞畅串口光猫分类;FCP-RDQ4G接口与模式资料。

现场常见问题

USB转TTL能直接代替USB转RS232吗?

不能。TXD、RXD名称相同不表示电气电平一致,普通板级逻辑引脚不能直接承受RS232线路条件。先查适配器输出类型、允许电压及信号参考,再核对线序和字符格式,不凭接头外形互换。

RS232设为9600波特、8N1,每秒就能收到9600字节吗?

不能。8N1还包含起始位和停止位,一个八位字符占十个位时间,连续发送的教学上限约为每秒960字节。命令、校验、间隔和等回复还会降低业务速率;这不是对任意产品或线缆的吞吐保证。

RS232转成TCP以后,一次读取就是一条完整报文吗?

不一定。TCP提供有序字节流,不保留应用每次发送的边界,可能一次读到半条或多条消息。接收程序应按真实协议的长度、分隔或校验重组,网络确认也不表示仪表命令已经成功执行。

继续阅读:TTL转串口怎样接?UART电平、RS232和RS485转换;串口转以太网怎样工作:字符缓存、TCP字节流与协议边界;