|
Вопросы о SMH-2G(i) Здесь всё, что касается работы контроллера SMH-2G(i). |
|
Опции темы | Поиск в этой теме |
22.04.2015, 14:51 | #1 |
Новичок
Регистрация: Apr 2015
Сообщения: 21
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
USB-носитель
Попробовал демo-программу "registrator". Все пишется нормально. Возникла необходимость писать не в корневой каталог флешки, а в директорию на ней.
Поменял MY_FLASH_FILENAME с '/media/u1/mylog.txt' на '/media/u1/123/mylog.txt' - контроллер перестал выводить процент доступного места на носителе,записывать данные тоже перестал(возможно нужно добавить команду создания директории). Создал директорию вручную - все то же самое, писать в эту директорию тоже не стал,процент доступного места не появился(хотя MY_FLASH_FILENAME используется только для работы с файлом). Вопрос: можно ли записывать не в корневую директорию usb-носителя? |
22.04.2015, 15:06 | #2 | |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 170
Благодарил(а): 15 раз(а)
Поблагодарили:
665 раз(а) в 607 сообщениях
|
Ответ: USB-носитель
Цитата:
__________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
|
23.04.2015, 17:28 | #3 |
Новичок
Регистрация: Apr 2015
Сообщения: 21
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: USB-носитель
Вроде заработало. Теперь нужно чтобы имена файла были разными.
Подробнее: в качестве имени файла создал переменную char *fname; в команде fopen вместо MY_FLASH_FILENAME подставил переменную fname; эта переменная меняется в процессе выполнения программы. Виснет на создании файла. Подскажите пожалуйста в чем может быть проблема? |
23.04.2015, 19:08 | #4 |
Новичок
Регистрация: Apr 2015
Сообщения: 21
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
USB-носитель
Как я понял, это связано с тем что тип переменной в имени файла должен быть const char*.
Когда меняю его, он автоматически становится просто char *. По ходу дела виснет из-за этого, можно ли как-нибудь обойти это? |
23.04.2015, 19:13 | #5 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 170
Благодарил(а): 15 раз(а)
Поблагодарили:
665 раз(а) в 607 сообщениях
|
Ответ: USB-носитель
Извините меня, но я не могу проводить обучение языку С++.
__________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
23.04.2015, 21:12 | #6 |
Новичок
Регистрация: Apr 2015
Сообщения: 21
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: USB-носитель
Проблема в том, что я писал и раньше подобное, только не под сегнетикс и все работало. Похоже на то что сегнетикс сам блокирует, потомучто компилятор не ругается на это. Ладно, думал может кто сталкивался с этим. Спасибо, буду пробовать.
|
24.04.2015, 10:18 | #7 | |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 170
Благодарил(а): 15 раз(а)
Поблагодарили:
665 раз(а) в 607 сообщениях
|
Ответ: USB-носитель
Цитата:
Ровно ноль целых ноль десятых процента. А по поводу "компилятор не ругается", так это для С++ нормально. Ведь это язык достаточно низкого уровня. Компилятор отслеживает только явные ляпы, остальное на совести программиста. __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
|
24.04.2015, 15:34 | #8 |
Новичок
Регистрация: Apr 2015
Сообщения: 21
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: USB-носитель
Разобрался в чем дело.
Возможно компилятор плохо работает со строковыми массивами нефиксированной длины. Т.е. когда создаю много указателей на строковые переменные (char *) и начинаю их изменять, они принимают то пустое значение, то значение других переменных. Сделал их фиксированной длины, проблемы сразу пропали. Может это относится и к массивам других типов, не проверял. |
04.06.2015, 08:40 | #9 | |
Новичок
Регистрация: Jun 2015
Сообщения: 18
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: USB-носитель
Цитата:
не мог бы мне скинуть ссылку на демо проект очень нужно но на форуме не могу найти Заранее Спасибо |
|
04.06.2015, 10:43 | #10 | |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 170
Благодарил(а): 15 раз(а)
Поблагодарили:
665 раз(а) в 607 сообщениях
|
Ответ: USB-носитель
Цитата:
__________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
|
25.10.2017, 17:30 | #11 |
Новичок
Регистрация: Jul 2017
Сообщения: 11
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: USB-носитель
Добрый день! Сильно не пинайте, я буквально 1й раз сталкиваюсь с данным ПЛК.
Из прочитанного и увиденного я так понял, что у 2Gi есть возможность "логгировать" данные на USB-флеш и это делается с помощью проекта из архива examples, который необходимо запустить на ОС Linux. Если нигде грубо не ошибся, то подскажите - есть ли альтернатива простого логгирования данных на флешку с заливкой проекта через SMLogix, не прибегая к установке виртуальной машины c Linux? Спасибо |
25.10.2017, 17:41 | #12 | |
Уволен из Сегнетикс
Регистрация: Nov 2015
Адрес: CПб/ВЛГ
Сообщения: 0
Благодарил(а): 0 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Ответ: USB-носитель
Цитата:
А если к контроллеру подключить scada-систему через сеть (даже через интернет можно), то реально сделать архив сразу на ПК. __________________ В сегнетиксе не работаю с самого начала 2019 года. |
|