-
- IMHO в программе дело... Ещё помнится в fido7.ru.embedded кто-то в своё время FAQ по RS485 писал и там про преамбулу было. Мол BREAK вначале, потом данные. Иначе если приёмник уже заклинило мусором, то пропал весь пакет. Подробностей не помню, но fk0(48 знак., 27.12.2012 14:58)
- Ммм, надо обдумать. На -40 как-то не до "думать" было. - POV(27.12.2012 21:39)
- было следующее соображение.... POV(798 знак., 27.12.2012 21:47)
- Вот есть, например, такой алгоритм Витерби. Или даже, типичный недетерминированный конечный автомат -- вот что собственно нужно для разбора сообщений в потоке мусора. Ну а как гласит теория, любой НКА путём нехитрых механических преобразований fk0(489 знак., 28.12.2012 10:05)
- Программист - это я. И рассчитывал на всякие косяки. Оттого и диагноз поставить не могу. Попробую в общем с нуля код переписать - может выйдет новая реализация без каких-то скрытых сюрпризов. - POV(28.12.2012 14:44)
- Ну-ну. Попробуйте. Скрипач(91 знак., 28.12.2012 20:01)
- "открытие-закрытие" сделано и работает. Но это неприемлемо если оно требуется раз в 10...30 секунд. - POV(28.12.2012 21:59)
- А сколько времени оно занимает?! Секунду? Чудна Вин-дааа :о) - Скрипач(28.12.2012 22:02)
- В моём случае если пропала связь, то она больше не восстанавливается. Хоть час жди... POV(110 знак., 29.12.2012 00:26)
- Не восстанавливается, пока не закроешь/откроешь порт. Та же фигня. А про очередь не понял. Она что, сбрасывается?! - Скрипач(29.12.2012 00:46)
- Нуу, оно вот как-то так... POV(161 знак., 29.12.2012 00:50)
- С ком-портом кто работает? Вы или "библа"? В моем понимании, закрытие/открытие порта занимает времени не больше чем любой другой вызов Win32 API. Я не прав? - Скрипач(29.12.2012 00:54)
- Прав. Но каков критерий пропажи связи? Я жду 5 подряд не отвеченных запросов. Т.е. до 5 секунд (если девайс активен тока один). В это время, например, пользователь нажимает кнопки, а реакции не будет ибо порт косячит. - POV(29.12.2012 01:07)
- ХЗ. Протокол нужно знать. У меня просто. МОДБАС-Мастер всегда знает когда безопасно порт "передернуть". - Скрипач(29.12.2012 01:38)
- Сразу чего-то я не отписался... POV(306 знак., 08.01.2013 21:46)
- Перед тем, как отправлять запрос очередному девайсу, закрой-открой порт. - Скрипач(08.01.2013 21:54)
- На рабочей машине всё как часики. А на удаленной вообще ни одного байта не получает (согласно логу). Всякие задержки после открытия порта не помогают. Шо ж это такое? - POV(15.01.2013 09:21)
- Не знаю. Посмотрел свой говнокод - никаких задержек или других танцев с бубном. Видимо проблема в чем-то другом. Поменять персоналку? - Скрипач(15.01.2013 11:19)
- Увы, не могу. Она от меня в 2000 км и пользователям это нахрен не нужно. Я её использую лишь для испытания и отладки кода, чтобы потом поставить софт в другом месте... POV(74 знак., 15.01.2013 11:31)
- Сочуствую, но ничем помочь не могу. Когда в одном месте "как часики", а в другом "ни одного байта" нужно искать отличия между одним и другим местом. - Скрипач(15.01.2013 12:54)
- Отличия тока в компе. При этом и там и там используются PCI-мультипортовки. Но одна - мокса, а вторая - адвантек... Да, где часики - семёрка стоит, а на удалёнке - ХП. Ладно, будем подождать, может чего прояснится. - POV(15.01.2013 13:11)
- Вспоминается, в своё время на Moxa наткнулся. Отличия могут быть в драйверах, некоторые не все ioctl реализуют. Я бы вначале нашёл ту мультипортовку, что на удалённой стороне и проверил. ОС везде одинаковую, драйвера и т.п. Может с ней всегда fk0(26 знак., 15.01.2013 14:06)
- Косяк в мультипортовке. Попробовал на 2 машинах - везде то же самое. А вот с набортным COM-портом косяков нет... POV(134 знак., 05.03.2013 09:34)
- Этт понятно. Буду думать как реализовать такой вот поиск. - POV(15.01.2013 14:20)
- Вспоминается, в своё время на Moxa наткнулся. Отличия могут быть в драйверах, некоторые не все ioctl реализуют. Я бы вначале нашёл ту мультипортовку, что на удалённой стороне и проверил. ОС везде одинаковую, драйвера и т.п. Может с ней всегда fk0(26 знак., 15.01.2013 14:06)
- Отличия тока в компе. При этом и там и там используются PCI-мультипортовки. Но одна - мокса, а вторая - адвантек... Да, где часики - семёрка стоит, а на удалёнке - ХП. Ладно, будем подождать, может чего прояснится. - POV(15.01.2013 13:11)
- Сочуствую, но ничем помочь не могу. Когда в одном месте "как часики", а в другом "ни одного байта" нужно искать отличия между одним и другим местом. - Скрипач(15.01.2013 12:54)
- Увы, не могу. Она от меня в 2000 км и пользователям это нахрен не нужно. Я её использую лишь для испытания и отладки кода, чтобы потом поставить софт в другом месте... POV(74 знак., 15.01.2013 11:31)
- Не знаю. Посмотрел свой говнокод - никаких задержек или других танцев с бубном. Видимо проблема в чем-то другом. Поменять персоналку? - Скрипач(15.01.2013 11:19)
- Попробую.. Жду как мне удалённый доступ к Улан-Удэ обеспечат. - POV(08.01.2013 22:05)
- На рабочей машине всё как часики. А на удаленной вообще ни одного байта не получает (согласно логу). Всякие задержки после открытия порта не помогают. Шо ж это такое? - POV(15.01.2013 09:21)
- Перед тем, как отправлять запрос очередному девайсу, закрой-открой порт. - Скрипач(08.01.2013 21:54)
- Сразу чего-то я не отписался... POV(306 знак., 08.01.2013 21:46)
- ХЗ. Протокол нужно знать. У меня просто. МОДБАС-Мастер всегда знает когда безопасно порт "передернуть". - Скрипач(29.12.2012 01:38)
- Прав. Но каков критерий пропажи связи? Я жду 5 подряд не отвеченных запросов. Т.е. до 5 секунд (если девайс активен тока один). В это время, например, пользователь нажимает кнопки, а реакции не будет ибо порт косячит. - POV(29.12.2012 01:07)
- С ком-портом кто работает? Вы или "библа"? В моем понимании, закрытие/открытие порта занимает времени не больше чем любой другой вызов Win32 API. Я не прав? - Скрипач(29.12.2012 00:54)
- Нуу, оно вот как-то так... POV(161 знак., 29.12.2012 00:50)
- Не восстанавливается, пока не закроешь/откроешь порт. Та же фигня. А про очередь не понял. Она что, сбрасывается?! - Скрипач(29.12.2012 00:46)
- В моём случае если пропала связь, то она больше не восстанавливается. Хоть час жди... POV(110 знак., 29.12.2012 00:26)
- А сколько времени оно занимает?! Секунду? Чудна Вин-дааа :о) - Скрипач(28.12.2012 22:02)
- "открытие-закрытие" сделано и работает. Но это неприемлемо если оно требуется раз в 10...30 секунд. - POV(28.12.2012 21:59)
- Ну-ну. Попробуйте. Скрипач(91 знак., 28.12.2012 20:01)
- Программист - это я. И рассчитывал на всякие косяки. Оттого и диагноз поставить не могу. Попробую в общем с нуля код переписать - может выйдет новая реализация без каких-то скрытых сюрпризов. - POV(28.12.2012 14:44)
- После окончания приёма у тебя вообще получается ничего из порта не считывается? - FDA(27.12.2012 21:53)
- Вот есть, например, такой алгоритм Витерби. Или даже, типичный недетерминированный конечный автомат -- вот что собственно нужно для разбора сообщений в потоке мусора. Ну а как гласит теория, любой НКА путём нехитрых механических преобразований fk0(489 знак., 28.12.2012 10:05)
- было следующее соображение.... POV(798 знак., 27.12.2012 21:47)
- Ммм, надо обдумать. На -40 как-то не до "думать" было. - POV(27.12.2012 21:39)
- IMHO в программе дело... Ещё помнится в fido7.ru.embedded кто-то в своё время FAQ по RS485 писал и там про преамбулу было. Мол BREAK вначале, потом данные. Иначе если приёмник уже заклинило мусором, то пропал весь пакет. Подробностей не помню, но fk0(48 знак., 27.12.2012 14:58)