P_PRT341: 打印Zui多包含4 个变量的消息文本 (S7-300, S7-400) 说明 P_PRT341 指令可用于打印消息文本。 例如,P_PRT341指令将过程消息传送到 CP 341。 CP 341 会将该过程消息记录到连接的打印机。 操作原理 P_PRT341指令将包含Zui多四个变量的消息文本传送给 CP 341。为进行数据传输,可通过循 环中或在时间控制程序中的静态(无条件)操作中调用P_PRT341 指令。 利用 DB_NO 和 DBB_NO 参数可以访问格式字符串和四个变量的指针(指向数据块)。这些指针必须以特定顺序存储在参数化的数据块中,并且指针之间没有间隔。这就是指针 DB(请 参见图“指针 DB”)。 输入 REQ的上升沿启动消息文本的传输。帧以消息文本的格式字符串开头,后跟变量 1 到 4。数据传输可能会进行多次调用(程序周期),具体取决于数据量。 通过将 R 参数输入的信号状态设置为“1”,可在循环中调用P_PRT341 指令。该设置会取消向 CP 341 的传输,并将 P_PRT341 指令复位为初始状态。 CP 341已接收到的数据仍会发送给 通信伙伴。 输入 R 的静态信号状态“1”指示打印作业的传输已禁用。 参数 LADDR 指定要寻址的 CP341 的地址。 输出 DONE 指示“作业已完成且无错”,ERROR 指示错误事件。如果发生错误,会在 STATUS中显示相应的事件编号。 如果未发生错误,STATUS 的值为 0。对于 P_PRT341 指令的。
数据区中的分配P_RCV_RK 指令与 I_RCV_RK 背景数据块结合使用。 调用时包含 DB 号。禁止访问背景数据 块中的数据 说明 例外:如果出现错误 STATUS == W#16#1E0E,可以检查 SFCERR 或 SFCSTATUS 变量以获得 其它详细信息。时序图 下图说明了 NDR、LEN 和 ERROR 参数的特性(取决于 EN_R 和 R 的输入电路)。说明 必须将输入 EN_R设置为静态信号状态“1”。在接收请求的持续时间内,必须给参数 EN_R 提 供逻辑运算结果“1”。如何处理错误 ERROR指示错误事件。 如果发生错误,会在 STATUS 中显示相应的事件编号。 如果未发生 错误,STATUS 的值为 0。对于P_RCV_RK 指令的 RESET,还会输出 NDR 和 ERROR/STATUS (参数 LEN == 16#00)。如果出现错误,则复位二进制结果 BR。 如果块已完成且无错,则 二进制结果的状态为“1”。 规则 说明 P_RCV_RK指令没有参数检查。 如果参数分配错误,CPU 可以切换到 STOP 模式。RESET,还会输出 DONE 和ERROR/STATUS。如果出现错误,则复位二进制结果 BR。如果块 已完成且无错,则二进制结果的状态为“1”。 参数 参数 声明数据类型 说明 REQ INPUT BOOL 作业在上升沿触发 R INPUT BOOL 取消作业 取消正在进行的作业。打印已禁用LADDR INPUT INT CP 341 的起始地址 起始地址从 STEP 7 获取。 DB_NO INPUT INT 数据块号指向指针 DB 的指针: 依 CPU 而定,不允许为零 (指向变量和格式字符串的指针以 固定顺序存储在指针 DB 中。) DBB_NOINPUT INT 数据字节号 0 ≤ DBB_NO ≤ 8162,指针从数据 字节开始 DONE1 OUTPUT BOOL作业已完成且无错 STATUS 参数 == 16#00; ERROR1 OUTPUT BOOL 作业已取消但有错误 STATUS参数(页8964)包含错误信 息。 STATUS1 OUTPUT WORD 错误规范 如果 ERROR == 1,则 STATUS参数 (页 8964)包含错误信息。 1 参数在下次调用指令之前可用!数据区中的分配,背景数据块 P_PRT341 指令与I_PRINT 背景数据块结合使用。 调用时包含 DB 号。 禁止访问背景数据块 中的数据。 说明 例外: 如果出现错误 STATUS== W#16#1E0F,可以检查 SFCERR 或 SFCSTATUS 变量以获得 其它详细信息。 数据区中的分配,指针 DBP_PRT341 指令使用 DB_NO 和 DBB_NO 参数访问指针 DB,在该 DB 中指向包含消息文本和变量的数据块的指针以固定顺序存储。 必须创建指针 DB。 下图显示了通过 P_PRT341 指令的 DB_NO 和 DBB_NO参数进行寻址的指针 DB 的语法。允许的 DB 号 允许的 DB 号根据 CPU 的不同而不同。如果为“指向变量的指针”指定值16#00 作为 DB 号, 则该变量将被解释为不存在,将指针设置为指向下一个变量或格式字符串。 如果 DB号与“指向格式字符串的指针”中的值 16#00 相等,则将取消打印作业,并在 P_PRT341 指令的参数输出 STATUS中指示事件 ID 16#1E43。允许的 DBB 编号 变量或格式化字符串从参数化的 DBB 编号开始。变量的Zui大长度可为 32个字节,格式字符 串的Zui大长度可为 150 个字节。 如果超出Zui大长度,则将取消打印作业,并在 P_PRT341 指令的 STATUS参数输出中指示事 件 ID 16#1E41。 允许的长度 为每个显示类型(数据类型)设置不受所用精度约束的指针 DB 的条目长度。时序图 下图说明了 DONE 和 ERROR 参数的特性(取决于 REQ 和 R 的输入电路)。说明 P_PRT341指令没有参数检查。 如果参数分配错误,CPU 可以切换到 STOP 模式。 说明 必须先完成 P_PRT341 指令的 CP-CPU启动例程,CP 341 才能执行 CPU 从 STOP 切换到 RUN之后触发的作业。在此期间启动的作业不会丢失。启动协调完成后,会将该作业发送至 CP 341。V24_STAT_340/V24_STAT: 读取来自 RS232C 接口的伴随信号 (S7-300, S7-400) 说明V24_STAT_340 (CP 340) / V24_STAT (CP 341) 指令从 CP 34x 读取 RS 232C伴随信号,并使 用户可以在块参数中使用它们。可在循环或者时间控制的程序的静态(无条件)操作中调用 V24_STAT_340 /V24_STAT 指令。 每次调用该指令(循环轮询)时,都会更新 RS 232C 伴随信号。 CP 34x 以 20 ms 的时间间隔更新 I/O 状态。输入/输出会持续更新而不受此约束。 不影响二进制结果 BR。 该指令不会输出错误消息。 参数 LADDR用于选择要寻址的 CP 34x。 参数 参数 声明 数据类型 说明 LADDR INPUT INT CP 34x 的起始地址起始地址从 STEP 7 获取。 DTR_OUT OUTPUT BOOL 数据终端准备就绪, CP 34x 准备就绪 (CP 34x输出) DSR_IN OUTPUT BOOL 数据集准备就绪, 通信伙伴准备就绪 (CP 34x 输入)数据区中的分配V24_STAT_340 / V24_STAT 指令不占用任何数据区。 规则 说明 检测信号更改需要Zui小脉冲宽度。 CPU循环时间、CP 34x 上的更新时间以及通信伙伴的响 应时间是起决定作用的变量。 V24_SET_340/V24_SET:将伴随信号写入 RS232C 接口 (S7-300, S7-400) 说明 可以通过指令 V24_SET_340(CP 340) / V24_SET (CP 341) 的参数输入来设置或复位接口输出。可在循环或者时间控制的程序的静态(无条件)操作中调用 V24_SET_340 / V24_SET 指 令。 不影响二进制结果BR。 该指令不会输出错误消息。STATUS 参数 错误代码 (W#16#.. .) 说明 解决方法 0003 已应用 PtP 参数- 0004 参数已经位于 CP 上(定时器匹配) - 0007 CPU 状态切换至 STOP - 0008 CPU 状态切换至RUN/STARTUP - 0101 测试 CP 的操作系统 EPROM 时出现故 障 CP 有故障;更换 CP。 0102 CP 的RAM 测试出错 0103 CP 的请求接口有故障 0110 CP 固件中出现故障 关闭模块再打开。如果需要,可以 更换模块。020F 开始进行参数通信时检测到无效的参 数分配。无法将接口参数化。 纠正无效参数重新启动。 0301源/目标数据类型无效,或区域不存在 (起始地址、长度) DB 无效或无 DB(例如 DB 0),或者 其它数据类型无效或缺少处理器间通信字节号无效或 处理器间通信标志位号无效,或未选 择“S”或“F”(对于 P_SND_RK 指令) 检查 CPU 和 CP上的参数分配,并根据 需要进行纠正。 仅 RK 512:伙伴在帧报头中返回无效 的参数。 检查 CPU 和 CP的参数;可以创建块。 请参阅请求表以获得有效数据类型。 仅 RK 512:伙伴在消息帧头中提供的 参数不正确。 0403数据类型不正确、未知或非法 检查程序,例如,查找指令中的错误参 数分配。