.............
Вид для печати
.............
...............
сейчас далеко от ПК чтоб проверить, но умные мужики пишут, что еще INI надо сразу использовать:Цитата:
VAR
pinst : POINTER TO FBTest;
END_VAR
IF bInit THEN
bInit := FALSE;
pinst := SysMemAlloc(SIZEOF(pinst^)); (*allocation of bytes*)
bDummy := INI(pinst^, TRUE); (*initialisation of instance*)
END_IF
pinst^(a := l, b := m, c := n, x => l, y => m, z => n);
тоже про катастрофу пишутЦитата:
So, in principle, its possible. One Problem is, that you have to take care that the memory is freed again, and that's a problem, because on the next download SysMemFree won't be called automatically.
An online change on FBTest by changing the Interface would lead to a crash
Записывали на flash вплоть до фото. 3 МБ фотографий влазило :)
Размер одного файла действительно ограничен.
Всех подробностей ввода данного ограничения не помню - в понедельник смогу уточнить.
А где именно написано про 3М? В руководстве по ПЛК110 вот что:Кстати луч ненависти в сторону авторов документа: «б» это биты, а байты это «Б».Цитата:
Объем оперативной памяти (тип памяти): 8 Мб (SDRAM), из них 1 Мб для кода пользовательской программы, 128 кб для переменных пользовательской программы
Если я правильно понял, то в тех же восьми эмах крутится среда исполнения вместе с реализациями стандартных библиотек. Ещё метр под программу пользователя. И нигде не уточняется, фиксированы границы участков или нет. Так что из документации вообще никаких выводов не сделать.Цитата:
О ! Даже до 8М. Пользоваться ей как ? И почему крах ?
Среда исполнения и среда разработки — разные вещи.Цитата:
Среда ? Она в ПК.
Если не висят, то нельзя гарантировать реальное время — будут задержки неопределённой длительности. Так что скорее всего висят.
Извиняюсь, что влезаю, но я так понял, что имелось ввиду, что в отличие от ФБ, которые имеют экземпляры, функции не имеют экземпляров.
И если рассматривать ФБ и функции, которые, например, работают с большими структурами данных, то каждый экземпляр ФБ будет отъедать значительный кусок памяти именно за счет данных, с которыми он работает ( речь именно про данные, а не про код), а функция этих данных просто не имеет, только код. Поэтому и задавался вопрос про количество экземпляров ФБ.
Посмотрите в Target Settings > Memory Layout > Global > Size прежде чем подкатывать к компилятору с такими запросами :) Для ПЛК160 там стоит 16#20000, что в десятичной составляет 131072.Цитата:
меня просто отшили на этапе компиляции