vmp (20.11.2009 13:02, просмотров: 74) ответил Vladimir Ljaschko на Интересная идея. А какая скорость? Мне хорошо бы 19200 реальных получить, ресурсов отъест как на 200 кбит. Прерывание раз в 50 мкс, в принципе терпимо.
Скорость для меня была некритична, поскольку данных мало (8 бит), передача раз в секунду, мастер использовал DMA, а слейву все равно нечем было заняться. Все это в пределах одной платы, скорость (аппаратная) была настроена на 38400. В качестве синхронизации предусмотрел ограничение паузы между аппаратными байтами - если она слишком большая, то считается ошибкой (неполная посылка), приемник переходит на начало.
Интервал между байтами делал увеличенный (+4 стоп-бита на передачу), благо железо мастера это позволяет, а слейву (повторюсь) все равно больше нечего делать.
Мастер - AT91SAM9XE, слейв - ATtiny2313 на внутреннем RC 8 МГц.
У мастера получалось всего 1 прерывание на обмен туда-сюда (по 8 бит в обе стороны) + отслеживание тайм-аута (средствами ОС).
В принципе длина посылки может быть любой, не обязательно 8 бит.