Многое зависит от слэйва (+)
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

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

Отправлено Jura 29 октября 2004 г. 11:13
В ответ на: Пасиба, а есть ли какие рекомендации по протоколу - ну типо старт-стопные байты или чего-то навроде? отправлено Вирт 29 октября 2004 г. 10:48

Если слэйв имеет возможность отвечать на каждый байт от мастера (если есть гарантия, что байты не будут пропускаться) - тогда особого протокола не нужно, достаточно в ответ на команду запроса выдать байт статуса, в котором, например, содержатся биты готовности слэйва к приему данных, наличия данных для выдачи мастеру и т.п. Если же такой гарантии нет - то тогда придется реализовывать достаточно серьезный протокол.
Для примера:
- данные пересылаются пакетами, начинающимися и заканчивающимися определенными байтами;
- в теле пакета должна присутствовать длина пакета и контрольная сумма пакета;
- желательно, чтобы форматы пакетов от мастера к слэйву и обратно несколько различались (во избежание приема мастером собственных пакетов, в случае, если слэйв по какой-либо причине ничего не пишет в регистр данных SPI);
- в протоколе должны быть предусмотрены тайм-ауты для возврата в исходное состояние после возникновения ошибки на шине.

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

Ответы



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

E-mail: info@telesys.ru