在没有明确声明DB的情况下,如何使用S7-SCL打开一个数据块?

描述:
编程过程中,可以使用参数类型BLOCK_DB (图. 01). 在编译时,具体的数据块是不确定的,所以S7-SCL编译器通过符号表和DB的变量声明不能找到对应的数据类型。如果使用绝对地址访问DB,S7-SCL假定该数据类型为BOOL, BYTE, WORD或DWORD。

下面的例子,通过绝对地址寻址, 可以访问DB数据中的变量。在FB中,没有确定DB块(db_test)的数据DD0此时被读。

在没有明确声明DB的情况下,如何使用S7-SCL打开一个数据块?
图. 01

该DB的数据DD0为DINT数据格式。DD0被转化为TIME类型变量。

注意:
语句"WORD_TO_BLOCK_DB(Code_2).dw[Byte_Index]...;" 允许直接访问 DB。必须定义WORD类型的"Code_2"变量用于DB号和整型类型的变量"Byte_Index"用作DB数据索引。

如果DB号是"BLOCK_DB"类型的一个输入变量类型,可以间接地使用"dbnumber.dw0"变量访问DB。

更多的信息请参考S7-SCL在线帮助

  • Absolute access to data blocks
  • Indexed access to data blocks
  • Class B conversion functions

以及条目号: 10553802 的第5点.

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc334129.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年11月5日 下午12:03
下一篇 2021年4月12日 上午12:00

相关推荐

发表回复

登录后才能评论