打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
串口通讯中的流控制

RS232 DB9阵脚定义如下:

1 DCD 载波检测
2 RXD Receive Data
接收数据
3 TXD Transmit Data
发送数据
4 DTR Data Terminal Ready
数据终端准备
5 GND System Ground
接地
6 DSR Data Set Ready
数据准备完成
7 RTS Request to Send
请求发送
8 CTS Clear to Send
允许发送
9 RI Ring Indicator
振铃提示

 

经常串口经常使用的为2/3/5 Pin,本文主要关注流控制功能故不做过多介绍。

流控制在串行通讯中的通过在收/发设备之间进行握手操作来协调二者间的数据发送,以解决数据丢失问题。

流控制所使用的针主要为7_RTS/8_CTS(请求发送/允许发送)Pin

在全双工模式下,配置的为双向通道,故不需要RTS/CTS联络信号,使其变高。

在半双工模式下:

DTE接收接收数据时,RTSON(1),不能接收数据时,RTSOFF(0)

DCE准备接收数据时,使CTSON(1)不能接收数据时,使CTSOFF(0)

从而避免了发送设备在 接收设备未准备好的情况下发送数据所导致的数据丢失。

流控制是 接收方 通过控制 准备好信号 来控制 发送方 是否发送数据,也就是说接收方有一个开关信号。

若现有AB两个设备,各情况分析如下:

AB都采用流控制,则发送方被接收方控制是否发送,机制正常;

若仅有一方启用流控制,如:A启用,数据由AB,B无法给A开关信号,A的数据始终无法发送;数据由BA时,B发送不需要A控制,就强制向A发送数据,一般情况下A会正常接收到数据。

在运行ZStack SerialApp例程过程中,程序中启用了流控制功能,出现现象是串口调试助手(默认是没有开启流控制)不显示对方所发送的数据!就是因为双方设备在流控配置不一致所造成的。

 

因此在串口通讯里要注意流控是否开启(后面ZTool的使用同样会出现这样的问题,发现不了设备或串口发送的请求无响应信息)!

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
DCD、DTR、DSR、RTS及CTS等五个状态指示分别代表什么意思?
串口硬件流量控制说明
SecureCRT下的串口不能输入(转)
CDMA、GSM模块串口RTS和CTS硬件流控制小结http://blog.chinaunix.net/uid-24856020-id-2559044.html
计算机与设备之间的的交流,串口通讯接口RS232、RS485、RS485详解!
串口流控制详解(CTS/RTS,DTR/DSR)
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服