Коллеги! Скажитесвое мнение, может протокол быть причиной ошибок (+)
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)
|
Отправлено
bialix 24 июня 2003 г. 11:06
|
|
|
|
Мне приходится сопровождать и апгрейдить одну готовую систему
в системе есть контроллеры, которые по RS485 общаются с компом
Протокол заложен типа SLIP только кривее несколько
есть префикс пакета 0x16 0x01
есть постфикс пакета 0x16 0x17
внутри пакета символ 0x16 передается как пара 0x16 0x00
Внутри пакета своя логическая организация (как всегда адресация, длина пакета, данные)
Самое интересное: контрольная сумма CRC16 передается НЕ ВНУТРИ ПАКЕТА, а после постфикса, причем передается как есть, т.е. для нее байт-стаффинг (для байта 0x16) не применяется. Такое впечатление, что его "прилепили" потом к готовому протоколу.
Сейчас ведутся "разборы полетов". На длинных линиях периодически вылазят ошибки обмена. Хуже того - подвисает прога на компе. Кто виноват: программист, схемотехник или компьютер понять сложно.
Мне бы хотелось услышать Вашу оценку вышеописанному протоколу по части метода работы с контрольной суммой. Я прав насчет того, что такое несет в себе потенциальные ошибки?
Составить ответ
|||
Конференция
|||
Архив
Ответы
- По опыту написания комп.программы под протокол ИСКРы - виноват только программист — Лагунов (24.06.2003 13:22, 378 байт)
- Мне вот что пришло в голову - а можно ли в принципе использовать протокол с байтстаффингом в условиях помех — bialix (24.06.2003 13:11, 330 байт)
- Раз для КС байт-стаффинг не применяется, — Валерьевич (24.06.2003 12:39, 220 байт)
- Ответ(+): — Sniper (24.06.2003 11:41, 200 байт)
- Ответ: CheckSum after EndOfMessage - это конечно нонсенс — Entuziast (24.06.2003 11:39, 143 байт)
- Зависит от того, как написана программа приема. Если после приема постфикса всегда принимается CRC, а не ищут параллельно синхропрефикс, и не обрабатывают staffing - то система должна быстро войти в режим синхронизации. — Oldring (24.06.2003 11:32, 194 байт)
Перейти к списку ответов
|||
Конференция
|||
Архив
|||
Главная страница
|||
Содержание
|||
Без кадра
E-mail:
info@telesys.ru