Показано с 1 по 7 из 7

Тема: Уничтожение переменной

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #4
    Пользователь
    Регистрация
    13.10.2011
    Адрес
    Златоуст
    Сообщений
    1,021

    По умолчанию

    • Велосипед: SysLibMem — динамическое выделение памяти.
    • Не велосипед: реализация списков в библиотеке OSCAT.

    А почему формат текстовый? Может, лучше перед заливкой в ПЛК переводить в бинарный? Я вот в своём проекте вообще сделал без всякого разбора чтение напрямую из файла:
    Код:
    TYPE CONFIG : (* Формат файла соответствует формату этой структуры *)
    STRUCT
    	header: DWORD;
    	(* тут поля структуры *)
    	checksum: DWORD;
    END_STRUCT
    END_TYPE
    
    FUNCTION ReadConfig : CONFIG
    VAR_INPUT
    	filename: STRING;
    END_VAR
    VAR
    	handle: DWORD;
    	cfg: CONFIG;
    END_VAR
    
    (* Читаем весь файл в структуру за раз *)
    SysMemSet(ADR(cfg), 0, SIZEOF(cfg));
    handle := SysFileOpen(filename, 'r');
    IF handle > 0 THEN
    	SysFileRead(handle, ADR(cfg), MIN(SysFileGetSize(filename), SIZEOF(cfg)));
    	SysFileClose(handle);
    END_IF
    (* Ну а дальше проверка на целостность по контрольной сумме с загрузкой
    настроек по умолчанию при несоответствии и прочие предосторожности *)
    Последний раз редактировалось Yegor; 13.01.2012 в 15:27.

Похожие темы

  1. Использование переменной TIME
    от Валера Храмцов в разделе ПЛК1хх
    Ответов: 20
    Последнее сообщение: 26.08.2021, 09:48
  2. Чтение переменной с ТРМ101 по Modbus...
    от servo в разделе ПЛК1хх
    Ответов: 7
    Последнее сообщение: 22.08.2011, 09:10
  3. Ответов: 2
    Последнее сообщение: 02.08.2011, 07:18
  4. самозапуск переменной
    от smokin в разделе ПЛК1хх
    Ответов: 1
    Последнее сообщение: 17.12.2009, 15:35

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •