lysenkov
Пользователи-
Posts
44 -
Joined
-
Last visited
Content Type
Profiles
Forums
Calendar
Everything posted by lysenkov
-
Прекрасно, только это не работает. Первая попытка откомпилировать программу показала что: /usr/local/arm-linux/lib/gcc/arm-linux/4.2.1/../../../../arm-linux/bin/ld: ERROR: /usr/local/arm-linux/lib/gcc/arm-linux/4.2.1/../../../../arm-linux/lib/libsms.so uses hardware FP, whereas smstest uses software FP Думаю, понятно о чем речь... P.S. Интересно, я первый это заметил?
-
Программа: #include <stdio.h> int k; int main(void) { long long int i; double d; for(k=0; k<100000000; k++) { i = k+1; d = i; if(k%4000000 == 0) printf("%d\n", k); } return 0; } Проблему вызывает строка d = i; На этом месте компилятор вставляет вызов функции __floatdidf. Видимо, она гробит стек. Оптимизация, похоже, не при чём. Она лишь меняет условия возникновения ошибки. В частности эта программа с опциями оптимизации -O2 или -O3 работает корректно. А без оптимизации падает на 169 обороте цикла. Про загубленный стек косвенно говорит внесение строчки int k; внутрь функции main - чудеса при выполнении возникают другие. Пока нашел временный выход - написал свои функции преобразования long long в double и обратно. Но это криво. Версию тул-чейна не знаю где посмотреть. arm-linux-gcc выдает 4.2.1 Если верить сайту moxa.com, то тул-чейн последний, т.к. скачивал я его где-то на границе 12-13 годов...
-
Здравствуйте! Обнаружил проблему с компилятором, входящим в состав тул-чейна для W406-LX. При указании компилятору ключей оптимизации -O, -O2, -O3, -Os работяющая ранее без оптимизации программа начинает падать с ошибкой Segmentation fault. Насколько мне хватило мозгов ковыряться в отладчике, я обнаружил, что проблема находится где-то в районе преобразования типа long long int в double. Я не силен в асемблере, тем более в arm-асемблере, но есть подозрение, что внутренняя функция, которую подставляет компилятор в месте такого преобразования типов, портит стек. При этом без указания ключей оптимизации все работает без вопросов, в т.ч. этот же исходник спокойно компилируется и работает на PC под дебианом и под виндой в режиме x86 и x64, как с оптимизацией, так и без. Без оптимизаци эксплуатировать программу мне как-то совесть не позволяет, ведь оптимизация дает существенное увеличение быстродействия. Прошу комментариев компетентных людей...
-
Свободные Com порты в Nport administrator
lysenkov replied to Danil's topic in Преобразователи RS-232/422/485 в Ethernet
Недавно впервые столкнулся с проблемой, что NPort Admin не может встать на якобы занятый порт. Не помню точно ругательное сообщение, но оно однозначно сообщает о том, что порт занят, занять его не могу. Windows 7 32-бит, NPort Admin v1.19 запущен от имени администратора. -
особенности настойки Real COM mode
lysenkov replied to anton-sokolov's topic in Преобразователи RS-232/422/485 в Ethernet
Я встречал. Вот она: echo atz > com1 -
Здравствуйте! Не работал с IA240, но подозреваю, что BINEncryptor там работает аналогично устройству w406. На w406 эта защита интеллектуальной собственности легко обходится. Я еще две недели назад пытался вам об этом написать, чтобы получить комментарии, но, к сожалению, Вам личное сообщение вообще отправить не могу, а Agibalov никак на это не отреагировал...
-
W406-LX, ftp и gprs_connect
lysenkov replied to lysenkov's topic in Встраиваемые коммуникационные компьютеры
Здравствуйте! Истекает таймаут на соединение. Вроде разобрался. После серии экспериментов было установлено, что после поднятия gprs соединения W406 отвечает на запрос подключения по ftp ровно через 40 секунд. А у меня был выставлен 30 секунд. Если на чистом устройстве gprs_connect ни разу не использовался, то коннект по ftp происходит быстро. Остается вопрос - в каком месте это прописывается? -
Здравствуйте! К устройству W406-LX после выполнения в нем команды gprs_connect становится невозможно подключиться по ftp через LAN. При этом telnet и ssh работают. Перезагрузка не помогает. Только сброс в заводские настройки. До первого выполнения команды gprs_connect. Прошивка 1.2 Прошу помощи, т.к. ftp сильно нужен.
-
Не являюсь представителем MOXA. Я тоже могу посоветовать использовать NPort'ы. Не знаю, какая у них паспортная задержка, но это порядка единиц миллисекунд (NPort 5xxx серии). В такой схеме главное, чтобы OPC сервер умел вести опрос разных COM-портов параллельно. Плюс групповые запросы Modbus могут сильно ускорить процесс...
-
W5340. Вставка значений каналов в сообщения
lysenkov replied to lysenkov's topic in Системы распределенного ввода/вывода
Если не задавать единицы измерения в названии каналов, то подставляются дефолтные (например, mA). Пока кривой выход такой - указывать единицы измерения из непечатного символа, а нормальные единицы писать в теле SMS... -
boneskos, не знаю, насколько сильно помогу, но по моему опыту работы с COM-портами (под виндой пока), как раз с RS-485 2 wire, одиночного чтения из порта не достаточно. Иногда, функция чтения из порта не выдает весь кусок данных, который туда пришел/идет. Читать из порта нужно до тех пор, пока не придет необходимый объем данных или не наступит таймаут. В вашем же примере, чтение производится один раз, затем в следующем цикле снова идет запись, при этом где гарантия, что все данные от устройства выбрались чтением? В недуплексном канале обмена, коим является RS-485, записью в порт вы заставляете порт переключиться в режим передачи, а это может оказаться еще рано, возможно он еще принимает данные. И еще: Вы вызываете функцию чтения из сом-порта сразу после записи, при этом flow control у вас отключен. В этом случае, на мой взляд, функцию чтения можно вызывать только по прошествию паузы, достаточной для отправки Вашего объема данных через сом-порт на данной скорости или после проверки того факта, что буфер передачи опустошился (не подскажу как сделать это в линуксе).
-
ioLogik 5300 использование языка С
lysenkov replied to bigocean's topic in Системы распределенного ввода/вывода
Думаю, подразумевается, что есть библиотеки, которые могут упростить общение с устройством из внешних разрабатываемых программ... -
W5340. Вставка значений каналов в сообщения
lysenkov replied to lysenkov's topic in Системы распределенного ввода/вывода
Только что получилось проверить. Вставка каналов рабтает. Но проблема: пока имеет место быть... -
W5340. Вставка значений каналов в сообщения
lysenkov replied to lysenkov's topic in Системы распределенного ввода/вывода
Конечно есть время подождать, а разве бывает иначе :-) Никто не решает вопросы мгновенно. Тем более праздники на носу... С Наступающим! Но прошу очень сильно не затягивать, если есть, конечно, вариант решения (думаю есть, проблема-то плёвая) :-) Спасибо! -
W5340. Вставка значений каналов в сообщения
lysenkov replied to lysenkov's topic in Системы распределенного ввода/вывода
На этом сайте нашел ioAdmin версии 3.10 В нем недостающие пункты меню есть. Но: 1. Не понятно, насколько ioAdmin 3.10 совместим в прошивкой 1.18; 2. Единицы измерения каналов (например "градус"), написанные русскими буквами подставляются в SMS вместе с значением канала, только телефон принимает их в виде кракозябров, хотя остальной русский текст, написанный в сообщении, отображается нормально. Сообщение, естественно, отсылается в UCS-2.