西门子plc的这个指令里是怎么规定小数点后面的精度的

如题所述

第1个回答  2016-06-01
ASCII常数字符串数据类型的格式:
字符串是一系列字符,每个字符作为一个字节存储。字符串的第一个字节定义字符串的长度,即字符数。如果常数字符串被直接输入程序编辑器或数据块,那么该字符串必须用双引号字符起始和结束 ("字符串常数")。
下面的内存图显示了字符串数据类型的格式。此字符串的长度可为0至254个字符。字符串的最大长度是255个字节(254个字符加上长度字节)。

以下是RTS指令的格式(FMT)操作数定义:

MSB7 6 5 4 3 2 1 LSB0
s s s s c n n n
ssss = 输出字符串长度c = 逗号(1)或小数点(0)nnn = 小数点右面的位数
输出字符串的长度由ssss域指定。0、1或2个字节无效。输出缓冲区中的小数点右面的位数由nnn域指定。nnn域的有效范围是0至5。将小数点右面的位数指定为0会使值显示为不带小数点。当nnn值大于5时或当指定的输出字符串长度太小无法存储转换的值时,输出字符串用ASCII空格字符填充。c位指定是使用逗号(c = 1)还是使用小数点(c = 0)作为整数和小数之间的分隔符

下表显示几个使用小数点(c = 0)和小数点右面有一位数(nnn = 001)以及输出字符串长度为6个字符(ssss = 0110)格式的值范例。位于OUT位置的值是字符串长度。

Out Out+1 Out+2 Out+3 Out+4 Out+5 Out+6
in = 1234.5 6 1 2 3 4 . 5
in = -0.0004 6 0 . 0
in = -3.67526 6 - 3 . 7
in = 1.95 6 2 . 0本回答被提问者采纳