Показать сообщение отдельно
Старый 14.03.2012, 05:47   #80
Valentin8080
Старший Пользователь
 
Регистрация: 17.02.2010
Возраст: 43
Регион: 03
Машина: Toyota Corolla
Сообщений: 980
Valentin8080 is a jewel in the roughValentin8080 is a jewel in the roughValentin8080 is a jewel in the rough
По умолчанию

Цитата:
Сообщение от Valentin8080 Посмотреть сообщение
P.S. Разобрал ситуацию подробно:
Вообщем в очередной раз подался запрос 82 11 F1 21 F0 95. За заданное время RTO ответ не пришел (пришло только эхо запроса TxD(Эхо):82 11 F1 21 F0 95). Программа начинает подавать следующий запрос, но в это время ецу оказывается уже начал отправлять данные. В результате программа передает 84 11 F1 18 00 FF 00 9D (8 байт), а в ответ ждет сначала эхо запроса (8 байт) а ей приходит предыдущий ответ, но программа этого не знает и выкусывает как ей кажется эхо запроса (8 байт ) - TxD(Эхо):8B F1 11 61 F0 00 10 2D - вот почему не до конца ответ При этом продолжение пакета может быть битым, так как на него наложился следующий запрос.
Нашел и исправил ошибку, при которой сказанная выше ситуация приводит к зависанию панели. В новой версии обмен данными просто продолжится, забраковав неправильный прием. Для примера выложил лог своей панели с заведомо маленьким RTO.

P.S. To Alex_St - Стараюсь лишний проверок не делать, дабы не загружать процессор. Только самое необходимое, чтобы отбраковать неправильный прием.
Вложения
Тип файла: rar 130312_223959.rar (2.9 Кб, 566 просмотров)
__________________
Мой отчет TOYOTA COROLLA 2004
Valentin8080 вне форума   Ответить с цитированием