您现在的位置是:首页 > PLC技术 > PLC技术

STL编程语言中在加载存储器内生成数据块

来源:艾特贸易2017-06-05

简介系统功能 SFC 82 CREA_DBL 在加载存储器内创建一个数据块,如果合适的话,也在工作存储器中创建。系统功能通过输入参数 LOW_LIMIT 和 UP_LIMIT 在给定的数值带分配最低的自由值,在这些参

    系统功能SFC 82 CREA_DBL在加载存储器内创建一个数据块,如果合适的话,也在工作存储器中创建。系统功能通过输入参数LOW_LIMITUP_LIMIT在给定的数值带分配最低的自由值,在这些参数中规定的数值是包括在数值带中的。如果两个值是相同的,数据块用这个数值创建,已经出现在用户程序中的数据块的数值不能重新设定,即使该数据块仅仅出现在工作存储器中也不能重新设定。

    输出参数DB_NUM提供实际创建数据块的数值。通过输入参数COUNT,规定了创建数据块的长度,该长度与数据字节的数值一致,且必须是一个偶数。

    创建的数据块在输入参数SRCBLK中预先指定数据区。在这里,用户可以定义一个完整的数据块,如DB 160或“Archive 1”;或来自数据块的一个变量;或一个具有绝对寻址的数据区,用作ANY指针,如P#DB160DBX16.0 BYTE 64。源必须是工作存储器中的数据区。

    如果源存储区比目标存储区小,源存储区就完全写入目标存储区,目标存储区的剩余位都填零。如果源存储区比目标存储区大,也完全写入目标存储区,而忽略源存储区的剩余部分。

    用户可以使用ATTRIB参数给创建的数据块赋予以下属性:

    Bit 0=1

    数据块具有“Unlinked”(非连接)属性,在传输到离线数据管理并重新加载到

   CPU之后,数据块仅存于加载存储器中。如果该位信号状态是“0”,则数据块同

    时创建在工作存储器和加载存储器中。

    Bit 1=1

    数据块具有DB属性,在AS中具有“写保护”属性,用户只能读取该数据块的数

    值。

    Bit 2=1

    数据块具有Non_Retain(非保留)属性。

    此时剩余位不被占用。

    系统功能SFC 82 CREA_DBL以异步形式操作:在输入参数REQ的信号状态为“1”时触发创建操作。当参数BUSY的信号状态再次为“0”时,用户仅能再次访问读写数据区。

    创建过程不能调用相关的数据块,当前数据块一直是有效的。

    如果出错,不能创建数据块,输出参数赋予不定值,通过功能值输出出错信息。