[an error occurred while processing this directive]
Ответ:
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено John 25 ноября 2002 г. 21:27
В ответ на: Подскожите пожалуйста как организовать протокол отправлено Vesago 25 ноября 2002 г. 19:12

Никогда не пользовался 9-м битом. А протокол делал примерно такой.
РС всегда начинает акт обмена, посылая пакет, состояний из полей:
1. Длина пакета
2. Адрес получателя
3. Команда
4. Данные (необязательно)
5. Контрольная сумма.
Прием в прерывании, оценка мне или нет. Когда принят последний байт - анализ пакета на правильность.
Если пакет правильный и мне, только тогда я отвечаю аналогичным пакетом.
Есть 2 таймаута - между байтами и ожидание ответа. Если между байтами слишком долго - считаем, что попали началом приема в середину пакета, все предыдущее - лажа, и следующий принятый байт - первый в пакете. Если контроллер слишком долго не отвечает - РС повторяет запрос.
Реальное наполнение и длина полей пакета - на твое усмотрение.
Алгоритм довольно устойчивый и хорошо себя зарекомендовал.

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru