Цитата Сообщение от Santi Посмотреть сообщение
"Дырки" конечно лучше не делать, но не всегда это возможно. В некоторых серийно выпускаемых изделиях адресация идет с "дырками" и пользователь ничего сам исправить не может. Правильный мастер считывает именно те регистры, которые указал пользователь. Так как Вы пишите, что панель читает по 16 слов (кстати откуда такая инфо?) - в правильном ус-ве быть не должно. Считываться должны только те регистры, которые указал пользователь. Если они с "дырками" значит д.б. не одна операция чтения, а несколько. Так д.б., а как это делает СП - мне, например, неизвестно.
Инфа - http://www.owen.ru/forum/showthread....l=1#post139313
А мне известно. Панель это делает так
Регистры 3х и 4х. Чтение
Все регистры, используемые в качестве источника данных для элементов активного экрана, постоянно и безусловно читаются из слейва с периодичностью заданной в настройках "Коммуникационный интервал" порта панели.
Чтение будет осуществляться группой если адреса регистров отличаются не более чем на 5, например
- для двух дисплеев с регистрами Wrd 4х00 и 4х5 будет одна команда чтения шести регистров 0,1,2,3,4,5. А для двух дисплеев с регистрами Wrd 4х00 и 4х6 будут две отдельные команды чтения по одному регистру.
- для двух дисплеев с регистрами DWrd 4х00 и 4х6 будет одна команда чтения восьми регистров 0,1,2,3,4,5,6,7. А для двух дисплеев с регистрами DWrd 4х00 и 4х8 будут две отдельные команды чтения по два регистра.
Соответственно к вышеописанной цепочки из двух регистров могут добавляться последующие регистры, если их адрес отличаются не более чем на 5 от предыдущего. Например
- для трех дисплеев с регистрами Wrd 4х00, 4х5 и 4х8 будет одна команда чтения девяти регистров 0,1,2,3,4,5,6,7,8.
и т.д.
Но максимальное число регистров в групповой команде чтения не может превышать 16.
Т.е. если есть функция прочитать блок данных из ПЛК, например, 50 регистров, то будет сформировано четыре команды чтения (три по 16 регистров и одна 2 регистра).
Как правило такое поведение панели оправдано.
Но действительно есть случаи когда
Считываться должны только те регистры, которые указал пользователь
Как я уже писал ранее это делается элементарно с помощью галки "Дин. адр.", на примере МСД200 http://www.owen.ru/forum/showthread....l=1#post139257