自由通讯口如何正确接收结束消息

发布者:梦幻微笑最新更新时间:2015-02-05 来源: diangon关键字:自由通讯口  接收结束消息 手机看文章 扫描二维码
随时随地手机看文章
本文以自由通讯口接收结束消息方式为例,通信伙伴的数据是一帧一帧发送的,比如通信伙伴每隔  100ms  发送一帧  01  02  03  04  05  给S7-200,S7-200接收这些数据,那么我们有几种方法可以正确接收到这些数据:

1、指定空闲线时间(可以理解为两帧数据之间的间隔)为50ms(小于发送间隔时间100ms),则当发送完第一帧  01  02  03  04  05  后,启动空闲时间检测,超过50ms即认为一帧数据结束,准备接收下一帧数据。这可以看做是“字符间定时器”结束消息方式。

2、指定接收结束字符为05,则当接收到  01  02  03  04  05  后,即收到结束字符05后,认为一帧数据结束,再接收到的  01  02  03  04  05  认为是下一帧数据,依此类推。这可以看做是“结束字符检测”结束消息方式。

3、指定接收数据长度为5,则收到  01  02  03  04  05  (5个字符)后,即认为一帧数据结束,再接收到的  01  02  03  04  05  认为是下一帧数据,依此类推。这可以看做是“最大字符计数”结束消息方式。

4、其他条件还包括“消息定时器”、“奇偶效验错误”、“用户终止”等结束消息的方式,或者这些条件的组合作为结束消息的方式。

那么在应用中选择哪种结束消息的方式,要具体情况具体分析。这话说起来很空洞,但确实如此,因为自由口通信本身就决定了,不同的通信对象间的数据帧格式(或协议)是设备厂家自由定义的,这就要求事先充分理解通信协议,并在此基础上进行选择。

另外一方面,如果能灵活掌握这部分内容,还可以解决一些实际问题。比如大家都知道数据要接收到接收缓冲区,而接收缓冲区的大小是有限制的(255个字节),那么怎么能够接收到大于255个字节的数据呢(缓冲区溢出后前面的数据被覆盖)?可以考虑设置“最大字符计数”为结束消息方式,将数据分为多个部分依次进行接收。
关键字:自由通讯口  接收结束消息 引用地址:自由通讯口如何正确接收结束消息

上一篇:安装PROFIBUS DP网络的基本注意事项
下一篇:串行通讯的一些认识

推荐阅读最新更新时间:2024-05-02 23:29

西门子S7-200PLC与PC自由通讯的多种实现方法
西门子S7-200支持多种通讯模式,如点点接口(PPI)、多点接口(MPI)、Rrofibus DP等。PPI等通讯协议主要用于西门子系列产品之间的通讯以及对plc编程。在自由口模式下,可由用户控制串行通讯接口,实现用户自定义的通讯协议。用户可以用梯形图程序调用接收中断、发送中断、发送指令(XMT)、接受指令(RCV)来控制通信操作。在自由口模式下,通信协议完全由梯形图程序控制。 S7-200CPU上的通信口是与RS-485兼容的9针D型连接器,PLC还提供了实现 RS-485与 PC机上RS-232C相连接的PC/PPI电缆,利用它可以方便地实现S7-200系列PLC与PC之间的硬件连接。 S7-200的编程软件为STE
[嵌入式]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved