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

Тема: Файловая система Овен ПЛК150

  1. #1

    По умолчанию Файловая система Овен ПЛК150

    Уважаемые разработчики программного обеспечения для Овен ПЛК 150 объясните пожалуйста следующую ситуацию.
    При записи информации во Flesh-память ПЛК происходит его перезагрузка.
    Пример кода, при выполнении которого происходит перезагрузка контроллера

    VAR
    Buffer: ARRAY [0..1] OF BYTE;

    END_VAR

    FileHandler:=SysFileOpen('archFlNm', 'a');

    Buffer[0]:=1;
    Buffer[1]:=2;

    sysFileWriteState:=SysFileWrite(FileHandler,ADR(Bu ffer),SIZEOF(Buffer));

    sysFileCloseState:=SysFileClose(FileHandler);

  2. #2

    По умолчанию

    1) Стандартная библиотека SysLibFile не позволяет открывать файлы с флагами иными кроме 'w' и 'r'. (Это не стандартная библитека 'C').
    2) Для записи в конец файла используйте SysFileSetPos
    3) Вылет на функции SysFileWrite происходит потому, что файл не открыт для записи. Это баг. Он устранен в прошивке 2.00. Функция будет возвращать ошибку.

  3. #3

    По умолчанию

    На сайте есть только прошивка 1.31.4.
    Где можно взять прошивку 2?
    (или когда можно ожидать её появление?)

  4. #4

    По умолчанию

    Прошивка 2.0 не нужна, просто используйте буковки r или w, а не "a"!
    Проблема была в ней!

  5. #5

    По умолчанию

    1. Почему возвращаемое значение функции SysFileClose всегда FALSE

    FileHandler:=SysFileOpen('FileName', 'w');
    <....>
    fileCloseState:=SysFileClose(FileHandler);

    2. Почему, если создать файл с именем, размер которого превышает 16 символов(это допустимо, так как в описании функции SysFileOpen сказано, что размер имени может достигать 80 символов), то такой файл нельзя удалить с помощью команды filedelete из PLC_Browser'a.

  6. #6

    По умолчанию

    1. -1 тоже возвращает пр ошибках.
    Попытка закрытия закрытого файла не ошибка.
    2. Это ограничение CoDeSys
    Тролль-наседка, добрый, нежный и ласковый

  7. #7

    По умолчанию

    Уважаемый Владислав!
    Приведите пожалуйста фрагмент кода, открывающего, дописывающего и закрывающего файл, при выполнении которого в контроллере ОВЕН ПЛК150 функция SysFileClose возвращала бы значение TRUE.
    В Овене ПЛК150 мне не удаётся получить возвращаемое значение TRUE при выполнении функции SysFileClose.

  8. #8

    По умолчанию

    И зачем вам TRUE? True будет возникать только при ошибке.
    Например, если вместо handle вы пошлете мусор.
    Тролль-наседка, добрый, нежный и ласковый

Ваши права

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