临沧西门子代理商
临沧西门子代理商
使用端口控制串行通讯口通过编程,您可以选择端口来控制S7- 200的串行通讯口。当选择了端口,用户程序通过使用接收中断、发送中断、发送指令和接收指令来控制通讯口的操作。当处于端口时,通讯协议完全由梯形图程序控制。SMB30 (对于端口0)和SMB130(对于端口1,如果您的
S7-200有两个端口的话)被用于选择波特率和校验类型。
当S7- 200处于STOP时,端口被禁止,重新建立正常的通讯(例如:编程设备的访问)。在简单的情况下,可以只用发送指令(XMT)向打印机或者显示器发送消息。其他例子包括与条码阅
读器、称重计和焊机的连接。在每种情况下,您都必须编写程序,来支持在端口下与
S7- 200通讯的设备所使用的协议。
只有当S7- 200处于RUN时,才能进行端口通讯。要使能端口,应该在SMB30
(端口0)或者SMB130 (端口1)的协议选择区中设置01。处于端口通讯时,不能与编程设备
通讯。
将PPI通讯转变为端口
SMB30和SMB130分别配置通讯口0和通讯口1,并且为端口操作提供波特率、校验和数据位数
的选择。端口的控制字节如图6--8所示。每一个配置都产生一个停止位。
MSB LS
7 0
SMB30 = 端口0
SMB130 = 端口1
bbb: 端口波特率
pp: 奇偶校验选择
00 = 无奇偶校验
01 = 偶校验
10 = 无奇偶校验
mm: 协议选择
1 需要S7-200 CPU
版本1.2或更高
11 = 奇校验
d: 每个字符的数据位
0 = 每个字符8位
1 = 每个字符7位
00 = PPI/从站
01 = 端口协议
10 = PPI/主站
11 = 保留(缺省时为PPI/从站)
图6--8 用于端口的SM控制字节(SMB30或SMB130)
发送数据发送指令使您能够发送一个字节或多个字节的缓冲区,多为255个。 图6--9给出了发送缓冲区的格式。
如果有一个中断程序连接到发送结束事件
上,在发送完缓冲区中的后一个字符
时,则会产生一个中断(对端口0为中断事件9,对端口1为中断事件26)。
发送字节个数(字节区)
图6--9 发送缓冲区的格式
您可以不使用中断来执行发送指令(例如:向打印机发送消息)。通过SM4.5或者SM4.6,判
断发送是否完成。
把字符数设置为0并执行XMT指令,可以产生一个BREAK状态。这样产生的BREAK状态,在线上会 以当前波特率传输16位数据所需要的时间。发送BREAK的操作和发送其他任何消息的操作是一 样的。当BREAK完成时,产生一个发送中断并且SM4.5或者SM4.6反应发送操作的当前状态。
接收数据接收指令使您能够接收一个字节或多个字节的缓冲区,多为255个。
图6--10给出了接收缓冲区的格式。
如果有一个中断程序连接到接收消息完成事件上,在接收完缓冲区中的后一个字
符时,S7- 200会产生一个中断(对端口0为中断事件23,对端口1为中断事件24。)
接收的字节个数(字节区)
图6--10 接收缓冲区的格式
您可以不使用中断,通过SMB86 (端口0)或者SMB186 (端口1)来接收消息。当接收指令未被激
活或者已经被中止时,这一字节不为0; 当接收正在进行时,这一字节为0。
如表6--13中所示,接收指令允许您选择消息的启始和结束条件。使用SMB86至SMB94对端口0进行 设置,SMB186至SMB194对端口1进行设置。
端口0 | 端口1 | 描述 |
SMB86 | SMB186 | 接收消息 MSB LSB 7 0 状态字节
n: 1 = 接收消息功能被终止:用户发送禁止命令。 r: 1 = 接收消息功能被终止:输入参数错误或丢失启动或结束条件。 e: 1 = 接收到结束字符。 t: 1 = 接收消息功能被终止:定时器时间已用完。 c: 1 = 接收消息功能被终止:实现字符计数。 p 1 = 接收消息功能被终止:奇偶校验错误。 |
SMB87 | SMB187 | 接收消息 MSB LSB 7 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 中的定时时间超出时终止接收。 bk: 0 =忽略断开条件。 1=用中断条件作为消息检测的开始。 |
SMB88 | SMB188 | 消息字符的开始 |
SMB89 | SMB189 | 消息字符的结束 |
SMW90 | SMW190 | 空闲线时间段按毫秒设定。空闲线时间用完后接收的个字符是新消息的 开始。 |
SMW92 | SMW192 | 中间字符/消息定时器溢出值按毫秒设定。如果超过这个时间段,则终止接收 消息。 |
SMB94 | SMB194 | 要接收的字符数(1到255字节)。此范围必须设置为期望的缓冲区大小,即 使不使用字符计数消息终端。 |
联系方式
- 地址:上海杨浦 上海市松江区广富林路4855弄88号3楼
- 邮编:200093
- 电话:15821971992
- 经理:聂聪
- 手机:15821971992
- 传真:021-33556143
- QQ:2724917714
- Email:2724917714@qq.com