F00-17 (1041601), страница 35
Текст из файла (страница 35)
Флаг TF2 не устанавливается,если RCLK = 1 и/или TCLK = 1.Бит 6: EXF2: Флаг внешнего входного сигнала Таймера 2.Устанавливается в 1 аппаратно, если под воздействием перехода из 1 в 0 входного сигнала навнешнем выводе T2EX происходит либо захват, либо перезагрузка, и EXEN2 = 1. Еслипрерывание от Таймера 2 разрешено, то установка этого бита приведет к переходу на процедуруобслуживания прерывания от Таймера 2. Этот бит не сбрасывается аппаратно, он должен бытьсброшен программно.Бит 5: RCLK: Флаг тактирования приемника.Этим битом осуществляется выбор таймера, используемого для тактирования приемника модуляУАПП (в режимах 1 или 3).0: Для тактирования приемника УАПП используется переполнение Таймера 1.1: Для тактирования приемника УАПП используется переполнение Таймера 2.Бит 4: TCLK: Флаг тактирования передатчика.Этим битом осуществляется выбор таймера, используемого для тактирования передатчикамодуля УАПП (в режимах 1 или 3).0: Для тактирования передатчика УАПП используется переполнение Таймера 1.1: Для тактирования передатчика УАПП используется переполнение Таймера 2.Бит 3: EXEN2: Разрешение внешнего сигнала для Таймера 2.Разрешает переходам из 1 в 0 (срезам) входного сигнала на внешнем выводе T2EX вызыватьзахват или перезагрузку, если Таймер 2 не работает в режиме генератора скорости передачиданных.0: Срезы внешнего сигнала на выводе T2EX игнорируются.1: Срезы внешнего сигнала на выводе T2EX вызывают захват или перезагрузку.Бит 2: TR2: Бит управления запуском Таймера 2.Этот бит включает/отключает Таймер 2.0: Таймер 2 отключен.1: Таймер 2 включен.Бит 1: C/T2: Выбор режима счетчика или таймера для Таймера 2.0: Режим таймера: Таймер 2 инкрементируется от внутреннего сигнала тактирования, частотакоторого задается битом T2M (CKCON.5).1: Режим счетчика: Таймер 2 инкрементируется под воздействием перехода из 1 в 0 внешнеговходного сигнала (T2).Бит 0: CP/RL2: выбор режима захвата или перезагрузки.Этот бит определяет, в каком режиме функционирует Таймер 2: в режиме захвата или в режимеавтоперезагрузки.
Бит EXEN2 должен быть установлен в 1, чтобы срезы внешнего сигнала навыводе T2EX распознавались и использовались для осуществления захвата или перезагрузки.Если RCLK =1 или TCLK = 1, то этот бит игнорируется и Таймер 2 работает в режимеавтоперезагрузки.0: При переполнении Таймера 2 или под воздействием перехода из 1 в 0 входного сигнала навнешнем выводе T2EX происходит автоперезагрузка (если EXEN2 = 1).1: Под воздействием перехода из 1 в 0 входного сигнала на внешнем выводе T2EX происходитзахват (если EXEN2 = 1).Page 148CYGNAL Integrated Products, Inc.
20024.2002; Rev. 1.4C8051F000/1/2/5/6/7C8051F010/1/2/5/6/7Рисунок 19.15. RCAP2L: Младший байт регистра захвата Таймера 2R/WR/WR/WR/WR/WR/WR/WR/WЗначениепри сбросе:Бит 7Бит 6Бит 5Бит 4Бит 3Бит 2Бит 1Бит 000000000SFR Адрес:0xCAБиты 7-0: RCAP2L: Младший байт регистра захвата Таймера 2.Регистр RCAP2L захватывает младший байт Таймера 2, если Таймер 2 работает в режимезахвата. Если Таймер 2 работает в режиме автоперезагрузки, то этот регистр содержитмладший байт перезагружаемого значения.Рисунок 19.16. RCAP2H: Старший байт регистра захвата Таймера 2R/WR/WR/WR/WR/WБит 7Бит 6Бит 5Бит 4Бит 3R/WБит 2R/WR/WБит 1Бит 0Значениепри сбросе:00000000SFR Адрес:0xCBБиты 7-0: RCAP2H: Старший байт регистра захвата Таймера 2.Регистр RCAP2H захватывает старший байт Таймера 2, если Таймер 2 работает в режимезахвата.
Если Таймер 2 работает в режиме автоперезагрузки, то этот регистр содержитстарший байт перезагружаемого значения.Рисунок 19.17. TL2: Младший байт Таймера 2R/WR/WR/WR/WR/WБит 7Бит 6Бит 5Бит 4Бит 3R/WБит 2R/WR/WЗначениепри сбросе:Бит 1Бит 000000000SFR Адрес:0xCCБиты 7-0: TL2: Младший байт Таймера 2.Регистр TL2 содержит младший байт 16-разрядного Таймера 2.Рисунок 19.18. TH2: Старший байт Таймера 2R/WR/WR/WR/WБит 7Бит 6Бит 5Бит 4R/WБит 3R/WБит 2Биты 7-0: TH2: Старший байт Таймера 2.Регистр TH2 содержит старший байт 16-разрядного Таймера 2.4.2002; Rev. 1.4CYGNAL Integrated Products, Inc. 2002R/WБит 1R/WЗначениепри сбросе:Бит 000000000SFR Адрес:0xCDPage 149C8051F000/1/2/5/6/7C8051F010/1/2/5/6/719.3.
Таймер 3Таймер 3 представляет собой 16-разрядный таймер, образованный двумя 8-разрядными SFRрегистрами, TMR3L (младший байт) и TMR3H (старший байт). Входной сигнал тактирования Таймера 3образуется из системного тактового сигнала путем деления его частоты на 1 или на 12, в зависимости отсостояния бита Т3М регистра управления TMR3CN. Таймер 3 всегда настроен как автоматическиперезагружаемый таймер, значение перезагрузки которого хранится в регистрах TMR3RLL (младший байт) иTMR3RLH (старший байт).
Таймер 3 может использоваться для запуска преобразования модуля АЦП, длятактирования модуля SMBus, а также в качестве таймера общего назначения. Таймер 3 не может работать врежиме счетчика.Рисунок 19.19. Структурная схема Таймера 312T3M0(К модулю АЦП)SYSCLK1TMR3LTMR3HTR3(от модуля SMBus)SCLПерезагрузкаTOEПрерываниеTF3TMR3CNTCLKTR3T3MTMR3RLL TMR3RLHМатрицаРисунок 19.20. TMR3CN: Регистр управления Таймера 3R/WR/WR/WR/WR/WR/WR/WR/WTF3----TR3T3M-Значениепри сбросе:Бит 7Бит 6Бит 5Бит 4Бит 000000000Бит 3Бит 2Бит 1SFR Адрес:0x91Бит 7: TF3: Флаг переполнения Таймера 3.Устанавливается в 1 аппаратно, если Таймер 3 переполняется из состояния 0xFFFF в состояние0x0000.
Если прерывание от Таймера 3 разрешено, то установка этого бита приведет к переходу напроцедуру обслуживания прерывания от Таймера 3. Этот бит не сбрасывается аппаратно, ондолжен быть сброшен программно.Биты 6-3: Не используются. Читаются как 0000b.Бит 2: TR3: Бит управления запуском Таймера 3.Этот бит включает/отключает Таймер 3.0: Таймер 3 отключен.1: Таймер 3 включен.Бит 1: T3M: Выбор коэффициента деления системной тактовой частоты для Таймера 3.Этот бит определяет частоту сигнала тактирования Таймера 3.0: Частота сигнала тактирования Таймера 3 равна 1/12 системной тактовой частоты.1: Частота сигнала тактирования Таймера 3 равна системной тактовой частоте.Бит 0: Не используется. Читается как 0.Page 150CYGNAL Integrated Products, Inc.
20024.2002; Rev. 1.4C8051F000/1/2/5/6/7C8051F010/1/2/5/6/7Рисунок 19.21. TMR3RLL: Младший байт регистра перезагрузки Таймера 3R/WR/WR/WR/WR/WR/WR/WR/WЗначениепри сбросе:Бит 7Бит 6Бит 5Бит 4Бит 3Бит 2Бит 1Бит 000000000SFR Адрес:0x92Биты 7-0: TMR3RLL: Младший байт регистра перезагрузки Таймера 3.Таймер 3 настроен как таймер с автоматической перезагрузкой. Этот регистр содержитмладший байт перезагружаемого значения.Рисунок 19.22. TMR3RLH: Старший байт регистра перезагрузки Таймера 3R/WR/WR/WR/WR/WR/WR/WR/WБит 7Бит 6Бит 5Бит 4Бит 3Бит 2Бит 1Бит 0Значениепри сбросе:00000000SFR Адрес:Биты 7-0: TMR3RLH: Старший байт регистра перезагрузки Таймера 3.Таймер 3 настроен как таймер с автоматической перезагрузкой. Этот регистр содержитстарший байт перезагружаемого значения.0x93Рисунок 19.23. TMR3L: Младший байт Таймера 3R/WR/WR/WR/WR/WR/WR/WБит 7Бит 6Бит 5Бит 4Бит 3Бит 2Бит 1R/WБит 0Значениепри сбросе:00000000SFR Адрес:0x94Биты 7-0: TMR3L: Младший байт Таймера 3.Регистр TMR3L является младшим байтом Таймера 3.Рисунок 19.24.
TMR3H: Старший байт Таймера 3R/WR/WR/WR/WБит 7Бит 6Бит 5Бит 4R/WБит 3R/WБит 2R/WR/WЗначениепри сбросе:Бит 1Бит 000000000SFR Адрес:0x95Биты 7-0: TMR3H: Старший байт Таймера 3.Регистр TMR3H является старшим байтом Таймера 3.4.2002; Rev. 1.4CYGNAL Integrated Products, Inc. 2002Page 151C8051F000/1/2/5/6/7C8051F010/1/2/5/6/720. ПРОГРАММИРУЕМЫЙ МАССИВ СЧЕТЧИКОВПрограммируемый массив счетчиков (ПМС) реализует расширенные таймерные функции, при этомтребует меньшего вмешательства со стороны процессорного ядра, чем стандартные таймеры/счетчикиархитектуры 8051. ПМС состоит из специального 16-разрядного таймера/счетчика и пяти 16-разрядныхмодулей захват/сравнение. Каждый модуль захват/сравнение имеет свою собственную линию ввода/вывода(CEXn), которая через матрицу соединяется, если разрешено, с портом ввода/вывода (подробная информацияо настройке матрицы приведена в разделе 15.1).
Таймер/счетчик тактируется программируемым внутреннимсигналом, в качестве которого могут использоваться:- внутренний сигнал с частотой, равной 1/12 системной тактовой частоты;- внутренний сигнал с частотой, равной 1/4 системной тактовой частоты;- переполнение Таймера 0;- входной сигнал на внешнем выводе ECI.Для управления модулем ПМС и его настройки используются связанные с ним SFR регистры. Структурнаясхема модуля ПМС показана на рис.20.1.Рисунок 20.1. Структурная схема ПМССистемныйтактовыйгенератор/4/1216-разрядныйтаймер-счетчикПереполнение T0МодульЗахват/сравнение 0МодульЗахват/сравнение 1МодульЗахват/сравнение 2МодульЗахват/сравнение 3МодульЗахват/сравнение 4CEX4CEX3CEX2CEX1CEX0ECIКоммутирующая матрицаПортыВвода/выводаPage 152CYGNAL Integrated Products, Inc.
20024.2002; Rev. 1.4C8051F000/1/2/5/6/7C8051F010/1/2/5/6/720.1. Модули захват/сравнениеКаждый модуль можно независимо настроить для работы в одном из четырех режимов:инициируемый по фронту сигнала захват, программный таймер, высокоскоростной выход и широтноимпульсный модулятор. Каждый модуль имеет связанные с ним регистры специального назначения, которыеиспользуются для обмена данными с модулем и для настройки режимов работы.В табл.20.1 приведены комбинации бит в регистрах PCA0CPMn, используемые для перевода модулейзахват/сравнение в различные режимы работы.
Установка в 1 бит ECCFn в регистрах PCA0CPMn разрешаетгенерацию прерываний при установке в 1 флагов CCFn регистра PCA0CN. Следует иметь ввиду, чтоиндивидуальные CCFn прерывания распознаются только в том случае, если прерывания от модуля ПМСразрешены глобально. Прерывания от ПМС разрешаются глобально установкой в 1 битов EA (IE.7) и EPCA0(EIE1.3). Схема формирования прерываний от модуля ПМС приведена на рис.20.2.Таблица 20.1.
Настройка модулей захват/сравнение в регистре PCA0CPMECOMCAPPCAPNMATTOGPWMECCFх10000хх01000хх11000х11х010001ххх100100100х = не имеет значенияOperation ModeЗахват инициируется положительнымфронтом сигнала на линии CEXnЗахват инициируется отрицательнымфронтом сигнала на линии CEXnЗахват инициируется изменениемсигнала на линии CEXnПрограммный таймерВысокоскоростной выходШиротно-импульсный модуляторРисунок 20.2. Схема формирования прерывания от ПМС(для n = 0 … 4)PCA0CPMnECCMT P ECA A AOWCOPP TGMCMP N n n n Fn n nnPCA0CNCCFRCCCCCCCCCCFF FFF4 3 2 1 0PCA0MDCIDLCCEPPCSSF1 0ПереполнениеТаймера/СчетчикаПМС01ECCF00ПМС модуль 01EPCA0(EIE1.3)EA(IE.7)0011ДекодерприоритетовпрерыванийECCF10ПМС модуль 11ECCF20ПМС модуль 21ECCF30ПМС модуль 31ECCF4ПМС модуль 44.2002; Rev.
1.401CYGNAL Integrated Products, Inc. 2002Page 153C8051F000/1/2/5/6/7C8051F010/1/2/5/6/720.1.1. Режим захвата по фронту сигналаВ этом режиме активный фронт сигнала на внешнем выводе CEXn приведет к захвату значениятаймера/счетчика ПМС и загрузке его в 16-разрядный регистр захвата/сравнения (PCA0CPLn и PCA0CPHn)соответствующего модуля. Биты CAPPn и CAPNn регистра PCA0CPMn определяют, по какому фронту будетосуществляться захват: по положительному (переход из 0 в 1), по отрицательному (переход из 1 в 0) или полюбому фронту. Когда происходит захват, флаг захвата/сравнения (CCFn) в регистре PCA0CNустанавливается в 1 и, если CCF прерывание разрешено, генерируется запрос прерывания.