9.2. Модуль RTC
(Руководство разработчика по микроконтроллерам семейства HCS08)Для управления модулем RTC используются 3 регистра специальных функций:
- RTCSC — регистр управления модуля RTC;
- RTCCNT — регистр счетчика модуля RTC;
- RTCMOD — регистр периода модуля RTC.
9.2.1.1. Регистр управления RTCSC
Для МК серии Dx, Ex, JM, QE. Sx
Регистр | Режим | D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
---|---|---|---|---|---|---|---|---|---|
RTCSC | Чтение | RTIF | RTCLKS | RTIE | RTCPS | ||||
Запись | |||||||||
Сброс | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Описание битов:
Имя бита | Описание | Символ в языке С |
---|---|---|
RTIF | Флаг события модуля RTC. Этот флаг устанавливается в 1 в момент переполнения счетчика модуля RTC. Для сброса в 0 необходимо в этот бит записать 1. | bRTC_RTIF |
RTCLKS | Биты выбора источника тактирования модуля RTC: | |
00 — модуль тактируется от внутреннего генератора с пониженным энергопотреблением и частотой 1 кГц (LPO); | RTCLKS_LPO | |
01 — модуль тактируется от внешнего источника тактирования (ERCLK); | RTCLKS_EXT | |
lx — модуль тактируется от внутреннего генератора (IRCLK). При изменении источника тактирования значение счетчика обнуляется автоматически. | RTCLKS_INT | |
RTIE | Бит разрешения генерации запроса на прерывание: 0 — установленный флаг RTIF не вызывает запроса на прерывание; 1 — установленный флаг RTIF генерирует запрос на прерывание. | bRTC_RTIE |
RTCPS | Выбор коэффициента деления тактовой частоты. При изменении коэффициента деления автоматически обнуляется содержимое счетчика модуля RTC. Для определения коэффициента см. Табл.9.5 и 9.6. | См. Табл.9.5 и 9.6 |
Таблица9.5. Коэффициенты деления частоты при RTCLKS = x0 (источники тактирования LPO или IRCLK)
RTCPS | Коэффициент деления | Обозначение в языке Си |
---|---|---|
0000 | Модуль RTC отключен | RTC_OFF |
0001 | 8 | RTC_PRE8 |
0010 | 32 | RTC PRE32 |
0011 | 64 | RTC_PRE64 |
0100 | 128 | RTC_PRE128 |
0101 | 256 | RTC_PRE256 |
0110 | 512 | RTC_PRE512 |
0111 | 1024 | RTC_PRE1024 |
1000 | 1 | RTC_PRE_l |
1001 | 2 | RTC_PRE_2 |
1010 | 4 | RTC PRE_4 |
1011 | 10 | RTC_PRE_10 |
1100 | 16 | RTC_PRE_16 |
1101 | 100 | RTC_PRE_100 |
1110 | 500 | RTC_PRE_500 |
1111 | 1000 | RTC_PRE_1000 |
Таблица9.6. Коэффициенты деления частоты при RTCLKS = x1 (источники тактирования ERCLK или IRCLK)
RTCPS | Коэффициент деления | Обозначение в языке Си |
---|---|---|
0000 | Модуль RTC отключен | RTC_OFF |
0001 | 1024 | RTC_PRE_1024 |
0010 | 2048 | RTC PRE_2048 |
0011 | 4096 | RTC_PRE_4096 |
0100 | 8192 | RTC_PRE_8192 |
0101 | 16384 | RTC_PRE_16384 |
0110 | 32768 | RTC_PRE_32768 |
0111 | 65536 | RTC_PRE_65536 |
1000 | 1000 | RTC_PRE_lk |
1001 | 2000 | RTC_PRE_2k |
1010 | 5000 | RTC PRE_5k |
1011 | 10000 | RTC_PRE_10k |
1100 | 20000 | RTC_PRE_20k |
1101 | 50000 | RTC_PRE_50k |
1110 | 100000 | RTC_PRE 100k |
1111 | 200000 | RTC_PRE_200k |
9.2.1.2. Регистр счетчика RTCCNT
Для МК серии Dx, Ex, QE, Sx
Регистр | Режим | D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
---|---|---|---|---|---|---|---|---|---|
RTCCNT | Чтение | RTCCNT | |||||||
Запись | — | ||||||||
Сброс | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Регистр RTCCNT содержит текущее значение счетчика модуля RTC. Регистр доступен только для чтения. Попытка записи игнорируется. Любые изменения регистров RTCMOD, RTCLKS или RTCPS автоматически сбрасывают текущее значение регистра RTCCNT.
9.2.1.3. Регистр периода RTCMOD
Для МК серии Dx, Ex, QE, Sx
Регистр | Режим | D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
---|---|---|---|---|---|---|---|---|---|
RTCMOD | Чтение | RTCMOD | |||||||
Запись | |||||||||
Сброс | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Регистр содержит максимальное значение коэффициента счета (или, что то же самое, код периода) для счетчика модуля RTC. Счетчик RTCCNT увеличивает свое значение от 0 до значения, записанного в регистре RTCMOD.
Электронные компоненты Freescale >>>
Подробнее о компании Freescale >>>