Как записать значение ASCII в строку структурированного текста для ПЛК?

Для программы ПЛК, написанной на структурированном тексте, мне нужна строка, начинающаяся со значений ASCII 0x01 0x01 0x01 0x00 0x12.

В Java я бы сделал это с помощью:

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

Как я могу добиться того же в структурированном тексте для ПЛК?


person BetaRide    schedule 29.01.2014    source источник


Ответы (2)


Похоже, что управляющая последовательность IEC-61131 — это $hh, поэтому просто используйте

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

см. тип данных STRING https://en.wikipedia.org/wiki/IEC_61131-3#Data_types

они показывают некоторые примеры строковых литералов, использующих $ в качестве символа управляющей последовательности (например, \ в C/C++/Java)

person franji1    schedule 30.01.2014

Попробуй это:

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
person Flanker    schedule 29.01.2014