#468 closed баг (fixed)
Теряются данные при передаче через окончание R232
| Reported by: | san | Owned by: | alx |
|---|---|---|---|
| Priority: | высокий | Milestone: | 1 очередь |
| Component: | VE-02 | Keywords: | |
| Cc: |
Description
В ревизии 61 ПО платы VE-02 теряются данные при передаче через окончание R232. В ревизии 56 проблема не воспроизводится.
Схема:
ПК(TCP-клиент) - (TCP-сервер)VE-02(R232) - шлейф
Я отправляю с ПК пакеты по 32 байта данных каждые 100 мс. Из 170 принятых обратно пакетов, вижу 8 повреждённых.
Пример повреждения пакета:
Отправлено: 7E000000AECFA97556FFA7FC5ECF7A192D9ED46F97724EEEB498169735B9D17E Принято: 7E000000AECFA97556FF 7A192D9ED46F97724EEEB498169735B9D17E
Attachments (2)
Change History (15)
by , 3 weeks ago
follow-up: 3 comment:1 by , 3 weeks ago
follow-up: 5 comment:2 by , 3 weeks ago
У меня шлейф только Rx на Tx. Для управления потоком, кажется нужны ещё пара проводов...
Сейчас попробую.
follow-up: 4 comment:3 by , 3 weeks ago
Replying to alx:
Воспроизводится ли проблема если включить управление потоком?
by , 3 weeks ago
follow-up: 6 comment:4 by , 3 weeks ago
follow-up: 7 comment:5 by , 3 weeks ago
Replying to san:
Сейчас попробую.
Думаю, можно не пробовать. Я воспроизвел проблему, и кажется, что она не связана с портом. Я вывел отладочный вывод и вижу, что данные пакетов передаются в порт RS-232 и принимаются обратно из порта без потерь, а клиент получает их с потерями....
comment:6 by , 3 weeks ago
Replying to alx:
Replying to san:
С таким шлейфом должно работать?
Вроде бы да.
Начинаю эксперимент с отключенным аппаратным управлением, данные от VE-02 на ПК приходят, обе лампочки модуля моргают. Включаю аппаратное управление - данные от VE-02 перестают приходить, у модуля горит зелёный индикатор, оранжевый не горит.
comment:7 by , 3 weeks ago
Replying to alx:
Я воспроизвел проблему, и кажется, что она не связана с портом.
Это утверждение оказалось неверным. Отладочный вывод показывает, что из порта принимаются данные с потерями. В первый раз я, видимо, пропустил нужный пакет...
Проверка показала, что из платы в порт RS-232 данные уходят без потерь (проверялось параллельным подключением компьютера). Следовательно, потери возникают где-то на приеме из порта RS-232...
follow-up: 9 comment:8 by , 3 weeks ago
Для дальнейшего поиска причины потерь перенес эксперимент в другую плату VE-02 (исполнения 2 в блоке MC04-DSL-VIP), так как там доступ к плате удобнее чем в блоке MC04-DSL-3U. И вдруг обнаружилось, что в этой плате потерь нет. Было передано больше 24000 байт, и все они вернулись обратно. Стоит также отметить, что вторая плата (в которой нет потерь) версии 9, а первая - версии 6. Предполагаю, что различия в поведении скорее связаны с версией, чем с вариантом исполнения, так как в версии 9 немного изменено подключение модулей к ПЛИС.
comment:9 by , 3 weeks ago
Replying to alx:
Предполагаю, что различия в поведении скорее связаны с версией, чем с вариантом исполнения,
Предположение не подтвердилось. В плате VE-02 версии 9 исполнения 3 потери есть.
comment:10 by , 3 weeks ago
Экспериментально установлено, что FIFO (внутри ПЛИС) записывается правильное число принятых байт.
comment:13 by , 3 weeks ago
Проверка после исправления показала, что после передачи более 100000 байт ни один не был потерян.



Воспроизводится ли проблема если включить управление потоком?