Структура PCA

Отличительной чертой микроконтроллеров типа 8XC51FX, 8XL51FX и более поздних от базового кристалла 8Х51 является наличие матрицы программируемых счётчиков или РСА (рис. 2.16). Данная многофункциональная структура предназначена для выполнения целого спектра операций с применением таймеров/счётчиков и позволяет увеличить производительность CPU за счёт минимизации числа обращений к нему по сравнению с такими кристаллами, как 8Х51, 8Х52 и т.п. Поэтому же удается уменьшить объём и сложность необходимого программного обеспечения.

 

 


Рис. 2.16. Матрица программируемых счётчиков

РСА состоит из 1-го таймера/счётчика и 5-ти 16-битных модулей фиксации/сравнения, изображённых на Рис.2-16. Таймер/счётчик является общим для всех модулей, а также единственным, который может ими использоваться. Входной сигнал может подаваться на него с одного из следующих источников:

· Fclc/12;

· Fclc/4;

· сигнал переполнения Т/СО;

· Внешний вывод ECI (Р1.2).

Каждый модуль фиксации/сравнения может быть запрограммирован на один из следующих режимов:

· фиксация нарастания или спада импульса (передний, задний фронты или положительный, отрицательный перепады);

· программный таймер;

· высокоскоростной выход;

· сторожевой таймер (только для модуля 4);

· широтно-импульсный модулятор.

Когда модуль сравнения/фиксации запрограммирован на режим фиксации, программного таймера или высокоскоростного выхода, возможна генерация соответствующего ему прерывания. Все 5 модулей и таймер/счётчик разделяют один и тот же вектор – 0033h, описанный несколько ниже. Для ввода/вывода таймер/счётчик и модули сравнения/фиксации используют выводы порта 1 (табл. 2.4). Если соответствующий модуль не задействован, то вывод порта используется по своему прямому назначению.

Использование порта 1 для РСА

Таблица 2.4

компонент РСА вывод порта 1
16-битный счётчик Р1.2/ЕС1
16-битный модуль 0 Р1.3/СЕХО
16-битный модуль 0 Р1.4/СЕХ1
16-битный модуль 0 Р1.5/СЕХ2
16-битный модуль 0 Р1.6/СЕХЗ
16-битный модуль 0 Р1.7/СЕХ4

16-разрядный таймер/счётчик РСА состоит из регистров СН и CL (соответственно старший и младший байты счётчика). Эти 2 регистра постоянно доступны для чтения и записи. Как отмечалось выше, тактовый сигнал может поступать от одного из следующих источников:

· Fclc/12 (Режим 0) - регистр CL инкрементируется в фазе SSP2 каждый машинный цикл (при тактовой частоте 16 Mhz период инкремента составляет 750 ns);

· Fclc/4 (Режим 1) - регистр CL инкрементируется в фазах S1P2, S3P2 и SSP2 каждый машинный цикл (при тактовой частоте 16 Mhz период инкремента составляет 250 ns);

· Сигнал переполнения Т/С0 (Режим 2) - регистр CL инкрементируется в фазе SSP2 при переполнении таймера 0. Этот режим позволяет программировать входную частоту РСА;

· Внешний вывод ЕС1 (Р1.2) (Режим 3) - регистр CL инкрементируется при каждом отрицательном перепаде (из "1" в "0") на выводе ECI (Р1.2). Проверка данного вывода производится в фазах S1P2, S3P2 и SSP2 машинного цикла. Таким образом, максимальная частота по входу ECI может составлять. Fosc/8.

Старший байт счётчика (регистр СН) инкрементируется спустя 2 периода тактового генератора после переполнения младшего бита (CL).

2.6.2. Регистр режима счётчика РСА (CMOD)

Содержит биты выбора источника входного сигнала таймера/счётчика CPS1 и CPS0, бит разрешения прерывания по переполнению счётчикаECF, а также биты CIDL - отключения таймер/счётчика во время режима холостого хода и WDTE (Watchdog Timer Enable) - разрешение сторожевого таймера для модуля 4. На рис. 2.17 эти биты описаны более подробно. Байтный адрес данного регистра - 0D9h, значение по сбросу - 00ххх000b.

 

MSB LSB

CIDL WDTE - - - CPS1 CPS0 ECF

 

Бит Поз. Функция присвоения приоритета прерывания
CIDL CMOD.7 CIDL=0 – продолжение нормального фунгкционирования счётчика РСА во время режима Idle CIDL=1 - счёт во время режима Idle прекращается
WDTE CMOD.6 WDTE=0 - запрет функции "сторожевой таймер" РСА-модуля 4 WDTE=1 - разрешение функции "сторожевой таймер"
- CMOD.5 Зарезервировано для дальнейшего использования
- CMOD.4 Зарезервировано для дальнейшего использования
- CMOD.3 Зарезервировано для дальнейшего использования
CPS1 CMOD.2 Выбор источника тактирования РСА, ,бит 1
CPS0 CMOD.1 Выбор источника тактирования РСА, .бит 0
ECF CMOD.0 Разрешение прерывания по переполнению счётчика РСА: ECF=1 - установка бита CF регистра CCON разрешена ECF=0 - запрещена.

 

Рис. 2.17. Регистр режима РСА – CMOD

 

2.6.3. Регистр управления счётчика РСА (CON)

Этот регистр содержит 2 бита, связанные с таймером/счётчиком РСА. Бит CF - устанавливается аппаратно - по переполнению счётчика. Бит CR включает или выключает счётчик. Остальные 5 бит данного регистра - флаги событий модулей сравнения/фиксации РСА. На рис. 2.18 эти биты описаны более подробно. Байтный адрес данного регистра - 0D8h, значение по сбросу - 00х00000b.








Дата добавления: 2015-10-09; просмотров: 598;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.007 сек.