Хелпикс

Главная

Контакты

Случайная статья





Цель работы : Научиться работать с последовательным и интерфейсом UART в МК AVR.



Почти каждый микроконтроллер имеет на борту универсальный последовательный интерфейс - UART. AVR тут не исключение и поддерживает этот протокол в полном обьеме полностью аппаратно. По структуре это обычный асинхронный последовательный протокол, то есть передающая сторона по очереди выдает в линию 0 и 1, а принимающая отслеживает их и запоминает. Синхронизация идет по времени — приемник и передатчик заранее договариваются о том на какой частоте будет идти обмен. Это очень важный момент! Если скорость передатчика и приемника не будут совпадать, то передачи может не быть вообще, либо будут считаны не те данные.

Протокол
Вначале передатчик бросает линию в низкий уровень - это старт бит. Почуяв что линия просела, приемник выжидает интервал Т1 и считывает первый бит, потом через интервалы Т2 выковыриваются остальные биты. Последний бит это стоп бит. Говорящий о том, что передача этого байта завершена. Это в самом простом случае.

В конце байта, перед стоп битом, может быть и бит четности. Также может быть два стопа, опять же для надежности. Битов может быть не 8, а 9. О всех этих параметрах договариваются, до начала передачи. Самым же популярным является 8 бит, один старт один стоп, без четности.

 

 


Рисунок 1 – Передача одного байта

По такому же протоколу работает COM порт компьютера, разница лишь в разнице напряжений, поэтому именно этот протокол я буду использовать для связи микроконтроллера с компом. Для преобразования напряжений можно использовать RS232-TTL конвертер. Мы же применим встроенный в Pinboard мост USB-UART который образовывает в системе виртуальный COM PORT.



  

© helpiks.su При использовании или копировании материалов прямая ссылка на сайт обязательна.