西门子PLC模块6ES7214-2AS23-0XB8分销商
</p>
<p>
公司所售出的产品,全新原装,质保一年、但凡发现有任何质量问题,可无条件退换(非人为损坏)可送货,原装进口,新品现货,假一罚十
</p>
发送缓冲区的格式
您可以不使用中断来执行发送指令(例如:向打印机发送消息)。通过监视SM4.5或者SM4.6信号,判
断发送是否完成。
把字符数设置为0并执行XMT指令,可以产生一个BREAK状态。这样产生的BREAK状态,在线上会
持续以当前波特率传输16位数据所需要的时间。发送BREAK的操作和发送其他任何消息的操作是一
样的。当BREAK完成时,产生一个发送中断并且SM4.5或者SM4.6反应发送操作的当前状态。
接收数据
接收指令使您能够接收一个字节或多个字节的缓冲区,多为255个。
图6-10给出了接收缓冲区的格式。 计数 起始 M E S G E 结束
宇符 宇符
如果有一个中断程序连接到接收消息完成
事件上,在接收完缓冲区中的后一个字
符时,S7-200会产生一个中断(对端口0为
中断事件23,对端口 1为中断事件24。)
消息字符
-接收的字节个数(字节区)
图6-10 接收缓冲区的格式
您可以不使用中断,通过监视SMB86 (端口0)或者SMB186 (端口 1)来接收消息。当接收指令未被激
活或者已经被中止时,这一字节不为0;当接收正在进行时,这一字节为0。
87
S7-200可编程序控制器系统手册
如表6-13中所示,接收指令允许您选择消息的启始和结束条件。使用SMB86至SMB94对端口 0进行
设置,SMB186至SMB194对端口 1进行设置。
提示
当超限或有校验错误时,接收消息功能会自动终止。为接收消息功能操作定义一个启始条件和
一个结束条件(大字符数)。
表6-13 接收缓冲区字节(SMB86到SMB94和SMB186到SMB194)
端口0_____端口1_____描述
SMB86 SMB186 接收消息
状态字节
n: 1 =
r: 1 =
e: 1 =
t: 1 =
c: 1 =
MSB LSB
7 0
n r e 0 0 t c P
接收消息功能被终止:用户发送禁止命令。
接收消息功能被终止:输人参数错误或丢失启动或结束条件。
接收到结束字符。
接收消息功能被终止:定时器时间已用完。
接收消息功能被终止:实现大字符计数。
接收消息功能被终止:奇偶校验错误.
SMB87
SMB187
接收消息
控制字节
MSB
7
LSB
0
en sc ec il c/m tmr bk 0
en: 0 =接收消息功能被禁止。
1 =允许接收消息功能。
每次执行RCV指令时检查允许/禁止接收消息位。
sc: 0 =忽略 SMB88或 SMB188。
1 =使用SMB88或SMB188的值检测起始消息。
ec: 0 =忽略 SMB89或 SMB189。
1 =使用SMB89或SMB189的值检测结束消息。
il: 0 =忽略 SMW90或 SMW190。
1 =使用SMW90或SMW190的值检测空闲状态。
c/m: 0 =定时器是字符间定时器。
1 =定时器是消息定时器。
tmr: 0 =忽略SMW92或SMW192。
1=当 SMW92或 SMW192
中的定时时间超出时终止接收。
SMB88
SMB89
SMW90
SMW92
SMB188
SMB189
SMW190
SMW192
bk: 0=忽略断开条件。
1=用中断条件作为消息检测的开始。
消息字符的开始
消息字符的结束
空闲线时间段按毫秒设定。空闲线时间用完后接收的个字符是新消息的
开始。
中间字符/消息定时器溢出值按毫秒设定。如果超过这个时间段,则终止接收
消息。
SMB94 SMB194 要接收的大字符数(1到255字节)。此范围设置为期望的大缓冲区大小,即
使不使用字符计数消息终端。
88
S7-200指令集
第6章
接收指令的启动和结束条件
接收指令使用接收消息控制字节(SMB87或SMB187)中的位来定义消息起始和结束条件。
提示
当接收指令执行时,在接收口上有来自其他器件的信号,接收消息功能有可能从一个字符的中间开
始接收字符,从而导致校验错误和接收消息功能的中止。如果校验没有被使能,接收到的消息有可
能包含错误字符。当起始条件被为一个特定的起始字符或任意字符时,这种情况有可能发生,
正象下面第2.条和第6.条中所描述的那样。
接收指令支持几种消息起始条件。包含一个停顿或者一个空闲线检测的起始条件,通过在将字
符放到消息缓冲区之前,用一个字符的起始来强制接收消息功能和消息的起始相同步,来避免以上
问题。
接收指令支持几种起始条件:
1.空闲线检测:空闲线条件定义为传输线路上的安静或空闲时间。在SMW90或者SMW190中指
定其毫秒数。当接收指令在程序中执行时,接收消息功能对空闲线条件进行检测。如果在空闲
线时间到之前接收到任何字符,接收消息功能会忽略那些字符并且按照SMW90或者SMW190
中给定的时间值重新启动空闲线定时器。参见图6-11。在空闲线时间到之后,接收消息功能将
所有接收到的字符存人消息缓冲区。
空闲线时间应该总是大于在波特率下传输一个字符(包括起始位、数据位、校验位和停止
位)的时间。空闲线时间的典型值为在波特率下传输三个字符的时间。
对于二进制协议、没有特定起始字符的协议或者了消息之间小时间间隔的协议,您可以
使用空闲线检测作为起始条件。
设置:il = 1, sc = 0, bk = 0, SMW90/SMW190 =空闲线超时(毫秒)
字符 字符
重新启动空闲时间 进人消息缓冲区的个字符
执行了接收指令:启动空闲时间 检测到空闲时间:
启动接收消息功能
<p>
</p>
<p>下一篇:<a href="">西门子PLC模块6ES7214-1BD23-0XB8经销商</p>
联系我时,请说是在黄页88网连云港PLC功能模块栏目上看到的,谢谢!