Для общей картины![]()
Для общей картины![]()
Да, чето тупанул ADD и AND слились АND. Смутило что WORD через AND проходит но ничего не изменяется)
Как проще всего прокручивать несколько надписей в одной строке на дисплее плк63?
Пока три ошибки в виде выходов из 3 тригеров, если нет ошибок "нет ошибок", в случае ошибки в одной строке от 1 до 3 словосочетаний, по очереди. Сильно сокращать или использовать коды не хочется. Язык CFC плк63
Пробовал через три SEL, когда доходит до третьего выкидывает обращение к неизвестному адресу)
Я непонял чем еще можно менять текст в ShowString
Последний раз редактировалось Alex61; 28.09.2025 в 12:44.
Код:var alarm: dword; index: byte := 31; alarm_str : array[0..2] of string(16) := 'нет ошибок','xxx','yyy','zzz'; ton: ton := (pt := t#3s); ----- alarm := 0; alarm.1 := .. alarm.2 := .. alarm.3 := .. alarm.0 := alarm = 0; ton(in := not ton.Q); if ton.Q or not extract(alarm, index) or index > 3 then repeat index := (index + 1) mod 4; until extract(alarm, index) end_repeat ShowString(?,0,?,alarm_str[index]); end_ifВ квадратики самиCFC
Спасибо. Осталось понять как это реализовать в CFC. Я выбрал CFC потому что нет времени вникать в написание кода. Для меня это страный набор понятных слов.)
А на кой?
вставляйте этот квадратик на свое квадратное поле и пихайте на/с ножек самиКод:PROGRAM XXXX var_input alarm1, alarm2,alarm3: bool; end_var var_output str: string(16); end_var var alarm: dword; index: byte := 31; alarm_str : array[0..2] of string(16) := 'нет ошибок','xxx','yyy','zzz'; ton: ton := (pt := t#3s); end_var ----- alarm := 0; alarm.1 := alarm1; alarm.2 := alarm2; alarm.3 := alarm3; alarm.0 := alarm = 0; ton(in := not ton.Q); if ton.Q or not extract(alarm, index) or index > 3 then repeat index := (index + 1) mod 4; until extract(alarm, index) end_repeat str := alarm_str[index]; (*ShowString(?,0,?,alarm_str[index]);*) end_if