PDA

Просмотр полной версии : Вопрос о CoDeSys



mettled
18.08.2007, 13:31
Возникла неприятная ситуация, может быть кто нибудь ответит что произошло, или у кого нибудь была такая проблемма.
когда запуская программу на выполнение, у меня глобальной переменной присваивает знаение ****INVALID: 16#E0 **** Тип переменной :BOOL.
и еще появляется взаимосвязь нескольких переменные, в программе они не связаны, но при выполнении , когда изменяю одну, изменяется и другая... (а не должна)
при этом на другом компе запускаем эту же программу, и она работе нормально
В чем причина ?

Gans
21.08.2007, 09:04
Ну так это целевые (торгет) файлы в кодесисе не те (наверное)!!!
как вариант просто надо собрать заново программу в кодесис с предварительно установленными целевыми файлами. Уверен всё заработает.

Филоненко Владислав
21.08.2007, 09:23
Это может произойти если у вас в программе происходит прямая запись в булеву переменную значений или вы исп. указатели. На самом деле булева переменная занимает 1 байт и кодируется спец. кодом. Т.о. Кодесус контролирует ее ликвидность.

mettled
21.08.2007, 09:55
да честно говоря разобрался с этим я ... )) только зря спрашивал ...
действительно таргеты.
Вот так сидишь , думаешь в чем проблемма, потом разберешься и думаешь : а нафига я спрашивал ?!? ))

mettled
21.08.2007, 10:02
Но вот еще один вопрос есть... на этот раз ничего придумать не могу в чем проблемма может быть...
короче есть программа, довольно большая.. с большим количеством переменных глобальных, и переменных ретайн. с большим количеством экземпляров функциональных блоком.
и вот после определеннного момента, когда в PLC_PRG добавляю очередной блок у меня выдает ошибку 3101: Недостаточно памяти данных. Уменьшите число использованных в приложении данных.
Что бы этой ошибки не было, пришлось блоки объявлять как глобальные, тогда ошибка исчезла.
Хотелось бы узнать побольше насчет этой области данных, или скажите где прочитать. А то какое то чувство неопределенности возникает при написании программы :)
можно ли ее изменять ? или она постоянна ? ну и т.д....

Филоненко Владислав
21.08.2007, 15:14
При компиляции внизу в окне сообщается кол-во исп. памяти. И обычной и retain. Какая у вас кончилась?

mettled
21.08.2007, 17:02
да эта ошибка у меня возникает только в режиме симуляции.
(ничего в этом режиме не пишет)
если снять галочку и режима симуляции , он исчезает.

Филоненко Владислав
22.08.2007, 09:14
О как! Памяти в ПЛК больше чем в режиме симуляции???
Если вы запустите CoDeSys.exe \debug - будет больше информ. сообщений

k501
25.11.2019, 21:03
У меня такая же проблема, интересно, чем закончилась борьба у Вас?

Sulfur
26.11.2019, 11:56
Вероятно победили. Всё таки двенадцать лет прошло.