ТАКТОВЫЙ ГЕНЕРАТОР

 

Работа процессорного ядра синхронизируется тактовым генератором. Именно период работы генератора определяет время, необходимое для выполнения элементарных операций в ядре. Простейшие операции, как правило, выполняются за один такт. Операции, связанные с извлечением данных из памяти, выполняются за два-три такта.

Схемы тактовых генераторов могут быть различны.

Простейшим и наиболее дешевым считается внутренний (реализованный на кристалле) RC-генератор. Он строится без внешних компонентов, но на частоту колебаний такого генератора влияет напряжение питания и температура. Для повышения стабильности к схеме внутреннего тактового генератора подсоединяются внешние высокостабильные времязадающие компоненты: кварцевые или керамические резонаторы. В ряде случаев микроконтроллеры используются с внешними схемами тактовых генераторов. Это также обеспечивает высокую точность отсчета времени и, при необходимости, позволяет синхронизировать работу сразу нескольких устройств. Некоторые схемы, могут работать с различными генераторами. Так, например, микроконтроллер АТтеgа163 может использоваться с различными внутренними и внешними генераторами.

Внутренний RC-генератор обеспечивает работу процессорного ядра AVR с частотой 1 МГц. Какие либо навесные компоненты в этом режиме к микросхеме не подсоединяются.

Внешний RC-генератор является простым решением, позволяющим изменять тактовую частоту. Но частота такого RC-генератора, как и генератора внутреннего, зависит от напряжения питания и температуры. Кроме того, частота может быть различной у различных изделий. Внешняя времязадающая RC-цепь генератора подключается к выводам микроконтроллера по схеме рис. 5.1 (а).

 

           
   
   
 
 

 


 

а) б) в)

 

Рис. 5.1. Подключение RC-цепей, резонаторов и внешних генераторов к контроллеру ATmega163

 

Сопротивление резистора R допускается варьировать в диапазоне от 3 до 100 kOм, а емкость С не должна быть менее 20 пФ. Типовые значения параметров приведены в таблице 5.1.

Таблица 5.1. Типовые параметры внешнего RC-генератора

 

R [кОм] С[пФ] F[кГц]
31.5
6.5

 

Кварцевый или керамический резонатор подключается к микроконтроллеру по схеме рис. 5.1 (б). Частота колебаний в этом случае определяется резонансной частотой кристалла. Емкость конденсаторов С1, C2 подбирается в диапазоне 13.. 40 пФ.

Внешний генератор просто подключается к выводу XTAL1 микроконтроллера (рис 5.1 в). В качестве внешнего генератора можно использовать любую схему генератора с ТТЛ-выходом. Внешние генераторы, как правило, обладают высокой стабильностью и предсказуемостью параметров.

Выбор той или иной схемы тактового генератора программируется на стадии занесения программы в Flash-память контроллера. В контроллере АТтеgа163 для хранения этой информации во флэш-памяти предназначены специальные биты- предохранители (fuse bits) CKSEL[3..0]. В процессе работы микроконтроллера эти биты не могут быть изменены. Программирование fuse-битов осуществляется в соответствии с таблицей 5.2.

 

Таблица 5.2. Программирование тактового генератора

 

Вид генератора CKSEL[3…0]
Внешний кварцевый или керамический резонатор 1111-1010
Внешний низкочастотный кристалл 1001-1000
Внешний RC-генератор 0111-0101
Внутренний RC-генератор 0100-0010
Внешний генератор 0001-0000

 

Fuse-биты CKSEL [3…0] используются также для задания некоторых временных параметров при сбросе микроконтроллера, поэтому в таблице 5.2. для описания каждого генератора предусмотрено много различных комбинаций этих битов.