打印本文 打印本文  关闭窗口 关闭窗口  
在S7-SCL中,如何将“BCD”类型的变量与“INTEGER”类型互相转换?
作者:超音速  文章来源:不详  点击数 1374  更新时间:2009/5/7 14:37:19  文章录入:超音速

说明:
S7-SCL不支持将“BCD”类型与“INTEGER”类型之间的转换功能。
为了补救,推荐在STL中编程实现这两个功能。

FC1:从“BCD”数据类型转换为“INT”数据类型。


图 01

FC2:从“INT”数据类型转换到“BCD”数据类型。


图 02

STEP 7特有以下函数来转换BCD类型数:

  • BTI (in FC1):从BCD转换到INT。
  • ITB (in FC2):从INT转换到BCD,

STEP 7中的转换函数会将累加器1中所含值的数据类型进行转换。也可将累加器1中的内容分为几个连续的转换过程,由此执行多级转换而不需要保存转换的临时值。

样例:
将一个BCD码数转换为一个实数。

  • L BCD_variable //BCD码数
  • BTI //从BCD转换到INT
  • ITD //从INT转换到DINT
  • DTR //从DINT转换到REAL
  • T REAL_variable

注意事项:
即将发布的S7-SCL版本会包括将“BCD”数据类型转换到“INT”及从“INT”数据类型到“BCD”的函数。