zHz00 Untitled

воскресенье, 03 июля 2022
05:10 Сыр всё ещё не завезли
Посылаю устройству запросы -- получаю ответы. Завёл статистику, чтобы следить, успеваю я все данные выгрести, которые устройство генерирует, или нет.

Результат оказался плачевным. Устройство отвечает почти ровно на половину запросов, а на остальное не отвечает. На осциллографе диаграмма тоже как-то странно выглядит -- вроде ответы есть, но один ответ длинный, а другой -- короткий.

Поставил точку остановки на место, где генерируется ошибка "нет ответа", и посмотрел, что пришло. Оказалось, что ответ прекрасно пришёл, но в нём написано, что длина поля данных составляет 0 байт. То есть, я выгребал слишком быстро.

А такой вариант я не предусмотрел. Первичная проверка целостности у меня делалась по длине пакета. И минимальная возможная длина соответствовала одному входящему значению. Если длина меньше, пакет считался заведомо неполным! А зря.

Я уменьшил возможную длину пакета, а также ввёл дополнительный статус, кроме "пакет неполный", "сумма не совпадает" и "пакет полный". Теперь пакет может быть "полный, но пустой".

@темы: Программирование, Борьба с техникой

URL
Кто бы сомневался... Россию-Тунис снова лицезрел на сво...
Простой арабский парень
лето началось... :2jump:
На самом деле с идеей "публичных дневников" зна...
Проблемы, которые кажутся неразрешимыми, часто испаряются...
я еще никогда так не переживала по поводу футбола...у Арг...
Добавить комментарий

Расширенная форма

Подписаться на новые комментарии