广东湘恒智能科技有限公司
主营产品: 西门子PLC,西门子模块,西门子触摸屏,西门子变频器,西门子伺服电机驱动,电缆,西门子全系列
淮北市西门子代理商- 西门子触摸屏
ASCII 字符数组转换指令ASCII码 (AmericanStandardCodeforInformationInterchange)为美国标准信息交换码,在计算机系统中使用最广泛。西门子S7-200SMARTPLC的 ASCII字符数组转换指令包括整数转换为 ASCII码指令、双整数转换为 ASCII码指令、实数转换为 ASCII码指令、十六进制整数与 ASCII码相互转换指令,指令如表5-18所示。表5-18 ASCII字符数组转换指令(1)整数转换为 ASCII码指令ITA整数转换为 ASCII码指令ITA (IntegertoASCII)把输入端IN 的有符号整数转换成ASCII字符串,其转换结果存入以 OUT 为起始字节地址的8个连续字节的缓冲区中,FMT指定小数点右侧的转换精度和小数点是使用逗号还是点号。整数转 ASCII码指令的格式操作数如图5-2所示,输出缓冲区的大小始终是8个字节,nnn表示输出缓冲区中小数点右侧的数字位数,nnn的有效范围为0~5,若 nnn=0,指定小数右侧的位数为0,转换时数值没有小数点;若nnn>5时,输出缓冲区会被空格键的 ASCII码填充,此时无法输出。C指定整数和小数点的分隔符,当 C=1时,分隔符为 “,”;当 C=0时,分隔符为 “.”,FMT的高4位必须为0。在图5-2中给出了一个数值的例子,其格式为使用点号 (C=0),小数点右侧有3位小图5-2 整数转 ASCII码指令的 FMT操作数数 (nnn=011),输出缓冲区格式符合以下规则:① 正数值写入输出缓冲区没有符号位;② 负数值写入输出缓冲区时以负号 (-)开头;③ 小数点左侧开头的0 (除去靠近小数点的那个之外)被隐藏;④ 数值在输出缓冲区 OUT 中是右对齐的。例5-9  整数转 ASCII码指令的使用。将 VW10中的整数转换为从 VB100开始的8个ASCII码字符,使用 16#0B 的 格 式,用 逗 号 作 小 数 点,保 留 3 位 小 数,程 序 如 表 5-19所示。表5-19 整数转 ASCII码指令程序(2)双整数转换为 ASCII码指令 DTA双整数转换为 ASCII码指令 DTA (Double   Integer   to    ASCII )把输入端IN的有符号双字整数转换成 ASCII字符串,其转换结果存入以 OUT 为起始字节地址的12个连续字节的缓冲区中。除输入IN 为双整数、输出为12字节外,其它方面与整数转 ASCII码指令相同。双整数转换为 ASCII码指令的格式操作数如图5-3所示。图5-3 双整数转 ASCII码指令的 FMT操作数(3)实数转换为 ASCII码指令 RTA实数转换为 ASCII码指令 RTA (RealtoASCII)是将输入端IN 的实数转换成 ASCII字符串,其转换结果存入以 OUT 为起始字节地址的3~15个连续字节的缓冲区中。实数转换为 ASCII码指令的格式操作数如图5-4所示。西门子S7-200SMARTPLC的实数格式最多支持7位小数,若显示7位以上的小数会图5-4 实数转 ASCII码指令的 FMT操作数产生一个四舍五入的错误。图5-4中,SSSS表示输出缓冲区 OUT 的大小,它的范围为3~15个字节。输出缓冲区的大小应大于输入实数小数点右边的位数,如实数-3.89546,小数点右边有5位,SSS应大于5,至少为6。与整数转 ASCII码指令相比,实数转 ASCII码的输出缓冲区的格式还具有以下规则:① 小数点右侧的数值按照指定的小数点右侧的数字位数被四舍五入;②输出缓冲区的大小应至少比小数点右侧的数字位多3个字节。例5-10  实数转ASCII码指令的使用。将VD10中的实数转换成从VB100开始的10个ASCII码字符,使用16#A3的格式,用点号作小数点,后面跟3位小数,程序如表5-20所示。表5-20 实数转 ASCII码指令程序(4)十六进制整数与 ASCII码相互转换指令ASCII码30~39和41~46与十六进制数为0~9和 A~F相对应,使用 HTA 指令可将十六进制整数转换为 ASCII码字符串;使用 ATH 指令可将 ASCII码字符串转换为相应的十六进制整数。ATH 指令将一个长度为 LEN 从IN 开始的 ASCII码字符串转换成从 OUT 开始的十六进制整数;HTA 指令将从输入字节IN 开始的长度为 LEN 的十六进制整数转换成从 OUT开始的 ASCII码字符串。ASCII码和十六进制数的有效范围为0~255。例5-11  ASCII码转换成十六进制整数指令的使用。将 VB100~VB102中存放的3个ASCII码34、42、38转换成十六进制数。程序及运行结果如表5-21所示。表中 “x”为半字节,表示 VB11的低4位值未改变。表5-21 ASCII码转换成十六进制整数指令程序
展开全文
拨打电话 微信咨询 发送询价