1. Квадратиков не обнаружил
2. Если надо бинарное отображение - просто копируете 4 байта из ADR(REAL) в файл.
3. Стандартная библиотека CoDeSys ограничена в возможностях форматирования. Обычно приходится делать решение под себя.
1. Квадратиков не обнаружил
2. Если надо бинарное отображение - просто копируете 4 байта из ADR(REAL) в файл.
3. Стандартная библиотека CoDeSys ограничена в возможностях форматирования. Обычно приходится делать решение под себя.
см. бибиотеку oscаt функция round()3.Пришлось написать функцию realformat, ограничивающую количество знаков после запятой, есть ли в кодесис такая встроенная?
Вроде разобрался.
После каждой записанной в файл строки автоматически вставляется символ NUL(00).
Как этого избежать?
Работать не со строками, а с байтовым массивом. Или при передаче строк на запись размер уменьшать на 1.
Можно Ваш проект посмотреть?
Да не вопрос
На всякий случай прилагаю файл, который у меня пишется в ПЛК. Как можно видеть, после любой строки принудительно записывается комбинация 00(NUL). Она то и не распознается виндой и отображается в виндовских средствах просмотра как квадратик . Фар рулит
з.ы.
Скажу еще на всякий случай (может чего присоветуете ), что предполагается 5 таких одновременно работающих модулей (архиваторов) (при 5 подключенных объектах) и шестой, включаемый пользователем при опред. условиях.
ПЛК100 Р-L
прошивка 2.03
тагет 2.02
Последний раз редактировалось Serp; 26.09.2008 в 13:29.
Вы используете строку как источник данных и берете её размер через sizeof(). При этом sizeof() строки возвращает заданный при объявлении размер + 1 скрытый байт на завершающий ноль.
Нужно использовать либо strlen() для строк переменной длины, либо SIZEOF()-1 для константных строк.
Большое спасибо Владислав!
все получилось
Здравствуйте! сколько ни бьюсь не могу разобраться с библиотекой SysLibFile. скачал проект "test_syslibfile2.rar" и немного изменил программу, всёравно ничего не получается- создаётся пустой файл archive.log и всё. может ктонибудь подсказать что в нём не так???