西门子S7-300授权总经销商 6ES7392-2BX00-0AA0 10 个 DIN A4 标签纸
SIMATIC S7-300, 10 个 DIN A4 标签纸, 颜色:浅米色, 10 个标签纸/装订页, 针对信号模块(16 通道), 材料:薄膜,预打孔, 用于利用激光打印机进行打印, 10 张/包装单位 |
说明
参数 EN 和 ENO 仅存在于图形化表示(LAD 或 FBD)中。编译器使用二进制结果 BR 处
理这些参数。如果块被终止且未出错,则将二进制结果设置为信号状态“1”。如果有错
误,则将 BR 设置为“0”。
P_RCV FB 与 I_RCV 的背景数据块一起使用。在调用中指定 DB 编号。 背景数据块的长
度为 40 个字节。不允许访问背景数据块中的数据。
说明
例外情况: 如果出现错误 STATUS == W#16#1E0E,可以参考 SFCERR 或
SFCSTATUS 变量以获得更多信息(请参见“功能块 P_SEND、P_RCV 和 P_PRINT 的诊
断消息 (页 146)”一章)。 有关详细信息,请参见“调用变量 SFCERR 或 SFCSTATUS”。
CP 340 的 PtP 耦合与组态
设备手册, 04/2011, A5E01032212-03
使用功能块的通讯
6.3 使用功能块连接至通讯处理器
P_RCV(FB 2)参数
下表列出了 P_RCV(FB 2)的参数。
表格 6- 3
名称
P_RCV(FB 2)参数
类型
数据类型 说明
EN_R
INPUT
BOOL
允许的值、说明
启用数据读取
R
INPUT
BOOL
取消请求
LADDR
INPUT
INT
当前请求被中止。 接收已锁定
CP 340 的基址
DB_NO
INPUT
INT
数据块号
起始地址从 STEP 7 获取。
接收 DB 号:
依 CPU 而定,不允许为零
DBB_NO
INPUT
INT
数据字节号
0 ≤ DBB_NO ≤ 8190,接收的数据从
数据字节开始
NDR 1)
OUTPUT
BOOL
请求已完成且没有错
误,接受了数据
ERROR 1)
OUTPUT
BOOL
参数 STATUS == 16#00;
请求完成但有错误
LEN 1)
OUTPUT
INT
错误信息已写入 STATUS 参数。
已接收消息帧的长度 1 ≤ LEN ≤ 1024,通过字节数指定
STATUS 1)
OUTPUT
WORD
错误规范
如果 ERROR == 1,则 STATUS 参
数将包含错误信息。
1) 成功完成发送请求后,该参数将在一个 CPU 周期内有效。
CP 340 的 PtP 耦合与组态
121
设备手册, 04/2011, A5E01032212-03
使用功能块的通讯
6.3 使用功能块连接至通讯处理器
FB 2 P_RCV 的时间顺序图
下图根据 EN_R 和 R 的接线方式说明了参数 NDR、LEN 和 ERROR 的特性。
图 6-2
时间顺序图 FB_2_P_RCV
说明
必须将输入 EN_R 设置为静态“1”。 在整个接收请求过程中,必须为参数 EN_R 提供逻辑
运算结果“1”。
122
CP 340 的 PtP 耦合与组态
设备手册, 04/2011, A5E01032212-03
使用功能块的通讯
使用功能块将消息文本输出到打印机
6
.4
6.4
简介
使用功能块将消息文本输出到打印机
您可以使用 P_PRINT 功能块(FB 4)将消息文本输出到打印机。 例如,P_PRINT 功能
块(FB 4)将过程消息发送给 CP 340。 CP 340 将过程消息记入连接的打印机。
消息文本“输出”
P_PRINT FB 将包含*多四个变量的消息文本发送给 CP 340。使用 CP 340: 点对点通
信、参数分配(请参见章节“使用打印机驱动程序的数据传输 (页 59)”和“打印机输出的转
换语句和控制语句 (页 85)”)。 为了进行数据传输,将循环调用功能块 P_PRINT,或者
在时间控制的程序中静态(无条件)调用该功能块。
可通过 DB_NO 和 DBB_NO 参数获得格式字符串和四个变量的指针(指向数据块)。 这
些指针必须以特定顺序存储在组态的数据块中,并且指针之间没有间隔。 这就是指针 DB
(请参考图“指针 DB”)。
由 REQ 输入的上升沿启动消息文本传输。 帧从消息文本的格式字符串开始。 后跟变量 1
到 4。
根据包含的数据量,数据传输可能需要多次调用(程序循环)。
当参数输入 R 的信号状态为“1”时,可循环调用功能块 P_PRINT。 此操作将中止向 CP
340 的传输,并将 P_PRINT FB 重新设置为其初始状态。 CP 340 已接收到的数据仍发送
给通信伙伴。 如果输入 R 的信号状态保持为静态“1”,这意味着已禁用发送打印请求。
LADDR 参数指定要寻址的 CP 340 的地址。
DONE 输出显示“作业已完成且无错”(job completed without errors)。 ERROR 指示是否
已发生错误。 如果发生错误,则在 STATUS 中显示相应的事件编号(请参见“功能块
P_SEND、P_RCV 和 P_PRINT 的诊断消息 (页 146)”一章)。 如果没有错误,则
STATUS 的值为“0”。 当重设 P_PRINT 功能块时,还将输出 DONE 和
ERROR/STATUS。 发生错误时,二进制结果 BR 复位。 如果块终止且未出错,则二进
制结果的状态为“1”。
说明
P_PRINT 功能块无参数检查,这表示如果出现无效参数,CPU 可能切换到 STOP 模式。
必须先完成 CP-CPU 启动机制 FB P_PRINT,CP 340 才能在 CPU 从 STOP 切换到
RUN 模式后处理激活请求(请参见“有关程序处理的常规信息 (页 135)”一章)。在此期间
发起的任何请求都不会丢失。 完成与 CP 340 的启动协调后便传输这些请求。
CP 340 的 PtP 耦合与组态
123
设备手册, 04/2011, A5E01032212-03
使用功能块的通讯
6.4 使用功能块将消息文本输出到打印机
块调用
STL 表示法
CALL P_PRINT, I_PRINT
REQ:=
R: =
LADDR: =
DB_NO: =
DBB_NO: =
DONE:=
ERROR:=
STATUS:=
LAD 表示法
说明
参数 EN 和 ENO 仅存在于图形化表示(LAD 或 FBD)中。编译器使用二进制结果 BR 处
理这些参数。
如果块终止且未出错,则会将二进制结果设置为信号状态“1”。如果有错误,则将 BR 设
置为“0”。
数据区中的分配,背景数据块
P_PRINT 功能块与 I_PRINT 背景数据块一起使用。 在调用中指定 DB 编号。 背景数据
块的长度为 40 个字节。不允许访问背景数据块中的数据。
说明
例外情况: 如果出现错误 STATUS == W#16#1E0F,可以参考 SFCERR 或
SFCSTATUS 变量以获得更多信息(请参见“功能块 P_SEND、P_RCV 和 P_PRINT 的诊
断消息 (页 146)”一章)。 有关详细信息,请参见“调用变量 SFCERR 或 SFCSTATUS”。
CP 340 的 PtP 耦合与组态
124
设备手册, 04/2011, A5E01032212-03
使用功能块的通讯
使用功能块将消息文本输出到打印机
6
.4
数据区中的分配,指针 DB
P_PRINT FB 使用 DB_NO 和 DBB_NO 参数访问指针 DB,在该 DB 中指向包含消息文
本和变量的数据块的指针以固定顺序存储。 必须创建指针 DB。
该图显示了通过 P_PRINT DB 的 DB_NO 和 DBB_NO 参数寻址的指针 DB 的结构。
图 6-3
允许的 DB 号
P_PRINT 功能块(FB)的指针 DB 的结构
允许的 DB 号是根据 CPU 的不同而不同。 如果为“指向变量的指针”指定值 16#00 作为
DB 号,则该变量将被解释为不存在,然后将指针设置为指向下一个变量或格式字符串。
如果在“指向格式字符串的指针”中,DB 号等于值 16#00,则将取消打印作业并在
FB P_PRINT 的 STATUS 参数输出中指示事件号 16#1E43。