Так если сами не можете разобраться, то где гарантиии что суть проблемы доводите правильно?
Но так как непрокатило поднятся в мире айти с вашим кодом за ваш счет, то продолжайте дальше.
Что AT% зло - да и с этим никто не спорит, но они же есть зачем-то же? Про онлайн подгрузку не буду, редкая и специфическая вещь, но то что тщ CS-CS просто никак не перейдет от указателей к 1 (всего одному) адресу, про это уже было.
И по мне. И все это можно минимизировать. И при этом убрать дурацкие комментарии в стиле
Код:i := i + 1; (*увеличиваем i на один*)
изначально фрагментация произошла, что не было памяти достаточной.
Теперь надеюсь всё заработает (ПЛК110-60 на объекте с ним связи нет, только ПЛК110-30 доступен).
Почему переменные таймеров, статуса вентиляторов и т.д не включал в структуру? - вот к примеру создали в панели экран для одного вопа,
копируем это на экран другого Воп и к примеру меняем отображение статуса - нажимаем стрелку вниз и статус следующего уже здесь, не надо листать список параметров в поиске нужного регистра.
А для панели регистры проще виде таблицы, растянул и получил на несколько вопов, а не набивать в ручную каждый адрес.
Сейчас пока в основной памяти (гарантировано рабочей, возможно мое решение неправильное и проект будет неработоспособным) не могу разместить коэффициенты ПИД для всех в одном месте.
1exan Я наелся в 2016 прямых адресов и больше никогда не хочу с ними связываться. И ещё эта структура у меня гуляет по разным проектам. С указателями очень удобо её переносить.
Мне разыменовывать указатель нравится, потому что это напоминает списки переменных в CDS 3.5, где можно обращаться к перемнным по спискам типа VarsIO.hwSensorDoor - сразу ясно, куда и зачем ты обращаешься.
И ещё мне нравится то, что адрес подставляется автоматически. Вот какие достоинства я вижу:
1. Я именую только одну переменную в конфигурации ПЛК. Она может находиться в дереве где угодно. Мне не надо думать о порядке добавления Master/Slave в дерево.
2. (Самое удобное для самопроверки) Если я забуду создать эту переменную в Конфигурации, то у меня код точно не скомпилируется.
А с прямой адресацией можно случайно попасть пальцем в небо и привязать структуру куда-то не туда. При копипастах проекта.
Валенок Мне есть что сказать тебе.
1. По плану регистров: Ты пишешь как старпёр типа "Воот, попришли со своими новшествами, а мы раньше вот".
Это НЕ конструктивно, потому что ты НЕ умеешь понятно объяснить.
Я люблю учиться новому - но у тех, кто умеет объяснять. Я написал статьи, какие смог и сумел. Ни одной твоей статьи мне с 2016 года (когда я на форуме зарегался), читать не пришлось. Так что ты для меня - никто, не авторитет.
2. Про комментарии.
Я знаю, что я могу умереть в любой момент. Ну например, опять бахнет скоротечный рак, как в 2010, или взорвётся газ в моём жилом доме.
Поэтому я привык снижать стоимость владения своих проектов и расписывать всё очень подробно. Чтобы, когда я умру, в этом можно было легко разобраться.
Я считаю и, как диктатор, буду всем это назвязывать (даже если они не хотят).
))
тебе объяснено давно.
Да и даже с указателем можно 1 раз проюзать ^ и дальше использовать более чистый код без ^ (VAR_IN_OUT в помощь)
А у ТС спрошено про то как юзает. Тишина. Бегать за его проблемами?
тут же все усложнить мечтаютЦитата:
я привык снижать стоимость владения своих проектов
Это пройдет. Тоже уже говорилЦитата:
когда я умру, в этом можно было легко разобраться.
Но вас устраивает - и слава богу (2)
Валенок Ты никогда ничего не объяснял. Ты больше выпендриваешься, но конкретики нет.
Все твои ответы в стиле "Во, а в STRING можно больше 80 байт пихнуть в Modbus-запросах, но как - я не скажу, думай сам".
Твоё мнение в таком ключе не нужно даже за деньги. А тем более задаром.
Я НЕ хочу с тобой контактировать, пока ты не научишься излагать свои мысли более развёрнуто и с примерами.
kondor3000, Cs-Cs спасибо большое за помощь!