- 1、本文档共3页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
COM口的数据流控制
COM 口的数据流控制
1.流控制在串行通讯中的作用
这里讲到的 “流”,当然指的是数据流。数据在两个串口之间传输时,常
常会出现丢失数据的现象,或者两台计算机的处理速度不同,如台式机与单片机
之间的通 讯,接收端数据缓冲区已满,则此时继续发送来的数据就会丢失。现
在我们在网络上通过MODEM进行数据传输,这个问题就尤为突出。流控制能解决
这个问题, 当接收端数据处理不过来时,就发出 “不再接收”的信号,发送端
就停止发送,直到收到 “可以继续发送”的信号再发送数据。因此流控制可以控
制数据传输的进 程,防止数据的丢失。 PC机中常用的两种流控制是硬件流控
制 (包括RTS/CTS、DTR/CTS等)和软件流控制XON/XOFF (继续/停止),下面分
别说明。
2.硬件流控制
硬件流控制常用的有RTS/CTS流控制和DTR/DSR (数据终端就绪/数据设置
就绪)流控制。
硬件流控制必须将相应的电缆线连上,用RTS/CTS (请求发送/清除发送)
流控制时,应将通讯两端的RTS、CTS线对应相连,数据终端设备(如计算 机)
使用RTS来起始调制解调器或其它数据通讯设备的数据流,而数据通讯设备(如
调制解调器)则用CTS来起动和暂停来自计算机的数据流。这种硬件握手方 式
的过程为:我们在编程时根据接收端缓冲区大小设置一个高位标志(可为缓冲区
大小的75%)和一个低位标志 (可为缓冲区大小的25%),当缓冲区内数据量 达
到高位时,我们在接收端将CTS线置低电平 (送逻辑0),当发送端的程序检测到
CTS为低后,就停止发送数据,直到接收端缓冲区的数据量低于低位而将 CTS
置高电平。RTS则用来标明接收设备有没有准备好接收数据。
常用的流控制还有还有DTR/DSR (数据终端就绪/数据设置就绪)。我们在
此不再详述。由于流控制的多样性,我个人认为,当软件里用了流控制时,应做
详细的说明,如何接线,如何应用。
3.软件流控制
由于电缆线的限制,我们在普通的控制通讯中一般不用硬件流控制,而用软
件流控制。一般通过XON/XOFF来实现软件流控制。常用方法是:当接收端的输
入 缓冲区内数据量超过设定的高位时,就向数据发送端发出XOFF字符(十进制
的19或Control-S,设备编程说明书应该有详细阐述),发送端收到 XOFF字符后
就立即停止发送数据;当接收端的输入缓冲区内数据量低于设定的低位时,就向
数据发送端发出XON字符(十进制的17或Control- Q),发送端收到XON字符后
就立即开始发送数据。一般可以从设备配套源程序中找到发送的是什么字符。
应该注意,若传输的是二进制数据,标志字符也有可能在数据流中出现而
引起误操作,这是软件流控制的缺陷,而硬件流控制不会有这个问题。
附:
DTR,DSRDTE设备准备好/DCE设备准备好。主流控信号。
RTS,CTS请求发送/清除发送。用于半双工时,收发切换。属于辅助流控信
号。半双工的意思是说,发的时候不收,收的时候不发。那么怎么区 分收发呢?
缺省时是DCE 向DTE发送数据,当DTE决定向DCE发数据时,先有效RTS,表示
DTE希望向DCE发送,一般DCE不能马上转换收发状 态,DTE就通过监测CTS
是否有效来判断可否发送,这样避免了DTE在DCE未准备好时发送所导致的数据
丢失。
XON/XOFF
XON/XOFF 是一种流控制协议(通信速率匹配协议),用于数据传输速率大于
等于1200b/s时进行速率匹配,方法是控制发送方的发速率以匹配双方的速率。
XMODEM是一种低速文件传输协议。KERMIT是异步通信环境中使用的一种文
件传输协议。它与XMODEM的主要区别是:KERMIT一次可传送 多个文件,而XMODEM
一次只能传送一个文件;KERMIT在接收方以完整的信息包应答,而XMODEM 以单
字节应答;KERMIT提供多种错误校验技 术,而XMODEM 只提供一种错误校验技
术。
在流量控制方面,可以从不同侧面采取不同的控制方案。最简单的方法就
是增加接收端的缓冲存储空间,使得接收端可以缓存更多的数据。但这只是一种
被动、 消极的方法。因为,一方面系统不允许开设过大的缓冲空间;另一方面
对于速率显著失配,并且又传送大量数据的场合,即使缓存空间再大也会出现不
够的现象。目 前普遍采取一种称之为 “XON/XOFF”的发送控制字符的方案,通
过控制字符来确定发送方是否继续发送数据,相比之下更主动、更积极、更有效。
XON/XOFF (继续/停止)
您可能关注的文档
- 机械排烟与水喷淋对仓室火灾控制效果的实验研究.pdf
- 机械滑台自动控制.pdf
- 机械能守恒定律机车类物体启动过程.doc
- 机械镀的镀层形貌及耐蚀性.pdf
- 机组汽包检修文件包.pdf
- 机织物的计算机三维模拟.pdf
- 杀灭地下害虫有妙招.doc
- 杀虫单在土壤及水稻中的残留分析方法研究.pdf
- 权力的互嵌与争夺.pdf
- 权重股王者归来释一重磅信号.doc
- 小学科学:ESP8266智能插座电路原理与动手实践研究教学研究课题报告.docx
- 《金融开放浪潮下我国多层次监管体系构建与创新研究》教学研究课题报告.docx
- 区域教育质量监测中人工智能应用的数据质量分析与优化策略教学研究课题报告.docx
- 《金融科技监管中的数据治理与合规性要求》教学研究课题报告.docx
- 《3D打印技术在航空航天领域中的多材料制造与复合材料应用》教学研究课题报告.docx
- 《绿色金融发展中的政府职能与市场机制研究》教学研究课题报告.docx
- 《植物工厂多层立体栽培光环境调控技术对植物生长发育节律的调控机制探讨》教学研究课题报告.docx
- 销售团队年度业绩总结.docx
- 银行风险管理与金融危机防范.docx
- 银行网络攻击预警与快速响应机制.docx
文档评论(0)