Файл: Семейство микроконтроллеров MSP430X1XX, руководство пользователя (2004).pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 16.06.2025

Просмотров: 2832

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Раздел IV.

Основной модуль тактирования

Пять битов MODx выполняют переключение между частотой, устанавливаемой битами DCOx и следующей более высокой частотой, устанавливаемой DCOx+1. В случае установки DCOx = 07h значение MODx не будет влиять на частоту DCO, так как для DCOx уже установлено максимальное значение.Диапазоны DCOx и RSELx, а также возможные шаги изменения частоты показаны на рис. 4.5.

Рис. 4-5. Диапазон DCOx и шаги RSELx

Использование внешнего резистора (Rosc) для DCO

Температурный коэффициент DCO может быть уменьшен при использовании внешнего резистора Rosc в качестве источника тока для DC генератора. На рис. 4.6 показана типичная зависимость частоты DCO от температуры для встроенного и внешнего резисторов. Использование внешнего резистора Rosc уменьшает температурный коэффициент DCO примерно на -0.05%/С. Подробные характеристики приведены в справочном руководстве на конкретное устройство.

Резистор Rosc также позволяет работать DCO на высоких частотах. К примеру, встроенный резистор с номинальным сопротивлением около 300 кОм позволяет работать модулю DCO на частоте приблизительно до 5 МГц. Когда используется внешний резистор Rosc сопротивлением около 100 кОм, DCO может работать на частотах до 10 МГц. Пользователю необходимо соблюдать осторожность, чтобы не превысить максимальную частоту MCLK, указанную в справочных данных, даже если DCO способен работать на более высоких частотах.

Библиотека Компэла

103

MSP430x1xxFamily

Рис. 4-6. Зависимость частоты модуля DCO от температуры

4.2.5. DCO модулятор

Модулятор смешивает две DCO-частоты: fDCO и fDCO+1, вырабатывая промежуточную эффективную частоту между fDCO и fDCO+1 и распределяет энергию тактирования, что приводит к снижению электромагнитных помех (EMI1). Модулятор смешивает частоты fDCO и fDCO+1 для 32 тактовых циклов DCOCLK и может конфигурироваться с помощью битов MODx. Когда MODx=0, модулятор выключен.

Смешивание частот модулятором происходит согласно следующей формуле: t=(32-MODx) × tDCO + MODx × tDCO+1

Поскольку fDCO меньше эффективной частоты, а fDCO+1 выше, погрешность эффективной частоты в сумме равна нулю. Накопления погрешности не происходит. Погрешность эффективной частоты равна нулю каждые 32 цикла DCOCLK. На рис. 4.7 показана работа модулятора.

Параметры настройки модулятора и управления DCO конфигурируются программно. Сигнал DCOCLK может сравниваться со стабильной, заранее известной частотой и подстраиваться с помощью битов DCOx, RSELx и MODx. Заме-

1 EMI – ElectroMagnetic Interference

104

Библиотека Компэла


Раздел IV.

Основной модуль тактирования

Рис. 4-7. Диаграмма сигналов модулятора

чания по применению и примеры кода для конфигурирования DCO можно найти на сайте http://www.ti.com/sc/msp430.

4.2.6.Надежность работы основного модуля тактирования

Восновном модуле тактирования имеется возможность определения возникновения неисправности осциллятора. Детектор неисправности осциллятора представляет собой аналоговую схему мониторинга сигналов LFXT1CLK (в режиме HF) и XT2CLK. Неисправность осциллятора определяется, когда любой из этих тактовых сигналов отсутствует в течение приблизительно 50 мкС. Когда обнаруживается неисправность осциллятора, а источником для сигнала MCLK выступает либо LFXT1 в режиме HF, либо XT2, происходит автоматическое переключение MCLK на работу от DCO, как от источника тактовых импульсов. Это позволяет продолжить выполнение программного кода, даже в ситуации, когда кварцевый генератор остановился.

Если установлены флаги OFIFG и OFIE, происходит запрос немаскируемого прерывания NMI. Процедура обработки NMI-прерывания может проверить флаг OFIFG, что позволит выявить возникшую неисправность осциллятора. Очистка флага OFIFG должна производиться программным обеспечением.

Примечание: определение неисправности осциллятора LFXT1 в режиме LF не производится.

Библиотека Компэла

105


MSP430x1xxFamily

Определение неисправности осциллятора выполняется только для LFXT1 в режиме HF и для XT2. Детектирование неисправности осциллятора модуля LFXT1 в режиме LF не производится.

ФлагOFIFGустанавливаетсясигналомнеисправностиосциллятораXT_OscFault. Сигнал XT_OscFault устанавливает POR, когда модули XT2 или LFXT1 в режиме HF имеют неисправность осциллятора. Когда XT2 или LFXT1 в режиме HF останавливаются программным обеспечением, сигнал XT_OscFault вырабатывается немедленно, и остается активным пока осциллятор не будет перезапущен, и снимается примерно через 50 мкС после рестарта осциллятора, как показано на рис. 4.8.

Рис. 4-8. Сигнал неисправности осциллятора

Определение неисправности осциллятора

Сигнал XT_OscFault переключает флаг OFIFG так, как показано на рис. 4.9. Сигнал LFXT1_OscFault имеет низкий уровень, когда LFXT1 находится в LF режиме.

Вустройствах, у которых модуль XT2 отсутствует, флаг OFIFG не может быть очищен, когда LFXT1 в режиме LF. Источником для сигнала MCLK может являться LFXT1CLK в режиме LF при установке битов SELMx, даже если флаг OFIFG остается поднятым.

Вустройствах, имеющих XT2, флаг OFIFG может очищаться программно, когда LFXT1 находится в режиме LF и далее остается очищенным. Источником для сигнала MCLK может являться LFXT1CKL в режиме LF независимо от состояния флага OFIFG.

Использование кварцевого резонатора для формирования MCLK

После сигнала PUC основной модуль тактирования использует DCOCLK для формирования MCLK. Если необходимо, в качестве источника сигнала для MCLK можно использовать LFXT1 или XT2. Для смены источника тактирования сигнала MCLK с модуля DCO на тактирование от кварцевого резонатора (LFXT1CLK или XT2CLK) используется следующая последовательность команд:

106

Библиотека Компэла

Раздел IV.

Основной модуль тактирования

Рис. 4-9 Прерывание при неисправности осциллятора

1)Переключение на кварцевый резонатор

2)Очистка флага OFIFG

3)Ожидание в течение примерно 50 мкС

4)Проверка OFIFG и повторение шагов с 1-4 до тех пор, пока OFIFG остается очищенным.

;Выбор LFXT1 (в режиме HF) для MCLK

BIC

#OSCOFF,SR

;включение осциллятора

BIS.B

#XTS,BCSCTL1

;установка режима HF

L1 BIC.B

#OFIFG,&IFG1

;очистка OFIFG

MOV

#0FFh,R15

;задержка

L2 DEC

R15

;

JNZ

L2

;

BIT.B #OFIFG,&IFG1

;повторная проверка

JNZ

L1

;OFIFG

;повторение проверки,

BIS.B #SELM1+SELM0,&BCSCTL2

;если необходимо

;выбор LFXT1CLK

Библиотека Компэла

107


MSP430x1xxFamily

4.2.7. Синхронизация сигналов тактирования

Когда происходит переключение MCLK или SMCLK на другой источник опорной тактовой частоты, переключатель синхронизируется, чтобы избежать критических состояний «гонки» сигналов. Это показано на рис. 4.10:

Рис. 4-10. Переключение MCLK с DCOCLK на LFXT1CLK

1)Текущий тактовый цикл продолжается до следующего фронта сигнала исходного источника.

2)Уровень тактового сигнала (MCLK) остается высоким до следующего фронта сигнала нового источника.

3)Выбирается новый источник тактирования и далее MCLK продолжает работать от него, начиная с полного периода нового источника.

4.3.Регистры основного модуля тактирования

Перечень регистров основного модуля тактирования приведен в таблице 4.1.

Таблица 4-1. Регистры основного модуля тактирования

Регистр

Обозначение

Тип регистра

Адрес

Исходное

состояние

Регистр управления DCO

DCOCTL

Чтение / запись

056h

060h после PUC

Регистр 1 управления систе-

BCSCTL1

Чтение / запись

057h

084h после PUC

мой основного тактирования

Регистр 2 управления систе-

BCSCTL2

Чтение / запись

058h

Сбрасывается пос-

мой основного тактирования

ле POR

Регистр 1 разрешения пре-

IE1

Чтение / запись

000h

Сбрасывается пос-

рываний SFR

ле PUC

Регистр 1 флагов прерыва-

IFG1

Чтение / запись

002h

Сбрасывается пос-

ний SFR

ле PUC

DCOCTL, регистр управления DCO

Библиотека Компэла

108


Раздел IV.

Основной модуль тактирования

DCOx

Биты

Выбор частоты DCO. Эти биты определяют, какая из восьми дискретных частот

7-5

DCO будет использоваться при выбранных установках RSELx.

Биты

Выбор модулятора. Эти биты определяют, как часто частота fDCO+1 использу-

MODx

ется в течение периода 32 циклов DCOCLK. В течение оставшихся циклов (32-

4-0

MOD) используется частота fDCO. Эти биты не задействуются, когда DCOx=7.

BCSCTL1, регистр 1 управления системой основного тактирования

Выключение XT2. Этот бит выключает осциллятор XT2.

XT2OFF

Бит 7

0

– включение XT2

1

– выключение XT2, если он не используется для MCLK или SMCLK.

Выбор режима LFXT1

XTS

Бит 6

0

– режим низкой частоты

1

– режим высокой частоты

Делитель для ACLK

00 – /1

DIVAx

Биты 5-4

01 – /2

10 – /4

11 – /8

XT5V

Бит 3

Не задействован. XT5V должен быть всегда сброшен.

Выбор резистора. Внутренний резистор имеет восемь различных величин

RSELx

Биты 2-0

сопротивления. Значение сопротивления резистора определяет номи-

нальную частоту. Низшая номинальная частота выбирается при установке

RSELx=0.

BCSCTL2, регистр 2 управления системой основного тактирования

Выбор MCLK. Эти биты позволяют выбрать источник для MCLK.

00

– DCOCLK

SELMx

Биты 7-6

01 – DCOCLK

10 – XT2CLK, когда XT2 имеется в микросхеме. LFXT1CLK, когда XT2 отсутствует.

11

– LFXT1CLK

Делитель для MCLK

00

– /1

DIVMx

Биты 5-4

01 – /2

10

– /4

11

– /8

Библиотека Компэла

109