4

对于用结构化文本编写的 PLC 程序,我需要一个以 ASCII 值开头的字符串0x01 0x01 0x01 0x00 0x12

在Java中,我会这样做:

String literal = "\x01\x01\x01\x0\x12";

如何在 PLC 的结构化文本中实现相同的功能?

4

2 回答 2

5

看来 IEC-61131 的转义序列是 $hh,所以只需使用

'$01$01$01$00$12'

请参阅 STRING 数据类型https://en.wikipedia.org/wiki/IEC_61131-3#Data_types

他们展示了一些使用转义序列字符的示例字符串文字( C/C++/Java 中$的 ala )\

于 2014-01-30T01:48:04.997 回答
2

尝试这个:

VAR
 string: STRING[5]:='abcde';
 char : ARRAY[0..4] OF BYTE := 16#x01, 16#01, 16#01, 16#0, 16#12;
 ptr : POINTER TO BYTE;
 i : INT;
END_VAR

ptr:=ADR(string);
FOR i:=0 TO 4 DO
 ptr^ = char[i];
 ptr:=ptr+1;
END_FOR
于 2014-01-29T18:30:08.547 回答