Atmega128. Внешняя синхронизация
Внешняя синхронизация
Если необходимо тактировать микроконтроллер от внешнего источника, то его необходимо подключить к выводу XTAL1 (см. рисунок 21). В этом случае внешняя синхронизация должна быть разрешена записью в конфигурационные биты CKSEL значения “0000”. Если запрограммировать конфигурационный бит CKOPT, то между XTAL1 и GND будет подключен внутренний конденсатор номиналом 36 пФ.
Рисунок 21 – Схема подключения внешнего источника синхронизации
После выбора данного источника синхронизации длительность задержки при запуске определяется конфигурационными битами SUT как показано в таблице 16.
Таблица 16 – Длительность задержки при запуске при выборе внешней синхронизации
SUT1..0 | Длительность задержки при выходе из режима выключения и экономичного режима | Дополнительная задержка после сброса (VCC= 5.0В) | Рекомендуемые условия для применения |
00 | 6 CK | - | Включен детектор питания BOD |
01 | 6 CK | 4.1 мс | Быстро нарастающее питание |
10(1) | 6 CK | 65 мс | Медленно нарастающее питание |
11 | Зарезервировано |
После подключения внешнего тактового источника необходимо избегать внезапных изменений его частоты для гарантирования стабильности работы микроконтроллера. Если на следующем такте частота изменится более чем на 2% по сравнению с предыдущим, то поведение микроконтроллера может стать непредсказуемым. Данный механизм реализован для гарантирования нахождения микроконтроллера в состоянии сброса в процессе таких изменений тактовой частоты.
Генератор таймер-счетчика
Выводы генератора таймера-счетчика TOSC1 и TOSC2 предназначены для непосредственного подключения кварцевого резонатора. В этом случае не требуются внешние конденсаторы. Генератор оптимизирован для совместной работы с часовым кварцевым резонатором 32.768 кГц. Подключение внешнего тактового источника к выводу TOSC1 не рекомендуется.
Регистр управления делением XTAL – XDIV
Регистр управления делением XTAL используется для деления частоты тактового источника на одно из значений в диапазоне 2 - 129. Данная функция может использоваться при необходимости оптимизации энергопотребления.
Разряд 7 – XDIVEN: Разрешение деления XTAL
Если в XDIVEN записать лог.1, то тактовые частоты ЦПУ и периферийных модулей (clkI/O, clkADC, clkCPU, clkFLASH) будут поделены на коэффициент, заданный значениями XDIV6 - XDIV0. Данный бит можно программировать в работающем приложении для варьирования тактовой частотой.
Разряды 6..0 – XDIV6..XDIV0: Разряды 6…0 коэффициента деления XTAL
Данные разряды определяют значение коэффициента деления, который вступает в силу после записи лог. 1 в XDIVEN. Если значение данных бит обозначит как d, то результирующая тактовая частота (fCLK) ЦПУ и периферийных модулей может быть найдена по выражению:
Изменять значение данных разрядов допускается, только если XDIVEN=0. Когда в XDIVEN записывается лог.1, то записываемые одновременно с ней значения XDIV6..XDIV0 будут использоваться как коэффициент деления. Во время записи в XDIVEN лог. 0 одновременно записываемые значения в разряды XDIV6..XDIV0 отклоняются. Поскольку, делитель выполняет снижение входной тактовой частоты микроконтроллера, то после разрешения деления также снижается быстродействие всех периферийных модулей.
Примечание: После разрешения деления тактовой частоты таймер-счетчик 0 может быть использован только в асинхронном режиме. Частота асинхронного источника должна быть не менее чем в 4 раза меньше результирующей (поделенной) частоты синхронизации. В противном случае не гарантируется определение запроса на прерывание и корректность доступа к регистрам таймера-счетчика 0.
<< Предыдущая глава |
Оглавление | Следующая глава >> |