Белов, А.В. Микроконтроллеры AVR: от азов программирования до создания практических устройств

Шаг 6. Осваиваем все возможности микроконтроллера ATtiny231 3 469 Установка этого бита уменьшит коэффициент деления делителя в фор ­ мирователе скорости передачи информации с 16 до 8, фактически удваивая скорость асинхронной передачи. Но в этом случае приемник будет исполь ­ зовать в два раза меньшее число тактов (уменьшенное с 16 до 8) выборки данных и восстановления синхронизации. Поэтому потребуются более точная установка скорости передачи и частоты тактового сигнала в этом режиме работы. Для передатчика в этом режиме нет никаких проблем. Внешний тактовый сигнал Внешняя синхронизация используется в синхронном slave -режиме работы. Для того, чтобы подробнее понять работу схемы синхронизации, обратимся к рис. 6.35. Дальнейшее описание ведется по этому рисунку. Внешний тактовый сигнал со входа ХСК поступает на регистр синхро ­ низации. Этот регистр предназначен для того, чтобы уменьшить неста ­ бильность тактового сигнала. С выхода регистра синхронизации синхро ­ сигнал поступает на детектор фронтов и лишь потом используется для синхронизации передатчика либо приемника. Каждое из этих преобра ­ зований вводит свою задержку для внешнего тактового сигнала. Поэтому максимальная внешняя частота тактового сигнала, поступающая на вход ХСК, ограничена следующим уравнением: f „ fosc J xck * 4 • Внимание. Частота f osc зависит от стабильности источника тактового сиг ­ нала системы. Поэтому рекомендуется выбирать частоту внешнего тактового сигнала с некоторым запасом, чтобы избежать возмож ­ ной потери данных из-за нестабильности частоты. Синхронизация процесса передачи данных В синхронном режиме (UMSEL = 1) вывод ХСК будет использоваться либо как вход (Slave), либо как выход (Master) тактового сигнала. Выборка данных на входе приемника и изменение данных на выходе передатчика синхронизируются от одного и того же тактового сигнала. При этом ввод данных (RxD) и вывод данных (TxD) синхронизируются от противопо ­ ложных фронтов этого сигнала. При помощи разряда UCPOL регистра UCRSC можно выбирать, какой фронт синхроимпульса ХСК будет использоваться для выборки дан ­ ных на входе, а какой — для изменения данных на выходе. Как видно из рис. 6.36, при нулевом значении бита UCPOL данные на выходе будут

RkJQdWJsaXNoZXIy MTExODQxMg==