F18-19 (1041602), страница 30
Текст из файла (страница 30)
Поэтому вход T2EX можно использоватькак дополнительный источник внешнего прерывания.Рисунок 17.13. Структурная схема Таймера 2 в режиме 2SYSCLK20T2C/T21МатрицаTL2TCLKTR2ПереполнениеТаймера 2TH2Перезагрузка2ПереполнениеТаймера 1RCAP2LS IGGTDFFOL1 0PE11600МатрицаT2CONEXEN2CP/RL2C/T2TR2EXEN2TCLKRCLKEXF2TF2Ред. 1.2ТактовыеимпульсыдляприемникаRCLKRCAP2H1T2EX160PCONSMOD1ТактовыеимпульсыдляпередатчикаTCLKПрерывание132C8051F018C8051F019Рисунок 17.14. T2CON: Регистр управления Таймера 2R/WTF2Бит 7R/WEXF2R/WRCLKБит 6Бит 5R/WTCLKБит 4R/WEXEN2Бит 3Значениепри сбросе:R/WTR2R/WC/T2R/WCP/RL2Бит 2Бит 1Бит 0SFR Адрес:(доступен в битовомрежиме адресации)0xC800000000Бит 7: TF2: Флаг переполнения Таймера 2.Устанавливается в 1 аппаратно, если Таймер 2 переполняется из состояния 0xFFFF в состояние0x0000 или перезагружается.
Если прерывание от Таймера 2 разрешено, то установка этого битаприведет к переходу на процедуру обслуживания прерывания от Таймера 2. Этот бит несбрасывается аппаратно, он должен быть сброшен программно. Флаг 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).133Ред. 1.2C8051F018C8051F019Рисунок 17.15. RCAP2L: Младший байт регистра захвата Таймера 2R/WR/WR/WR/WR/WR/WR/WR/WБит 6Бит 5Бит 4Бит 3Бит 2Бит 1Бит 0Значениепри сбросе:00000000Бит 7SFR Адрес:0xCAБиты 7-0: RCAP2L: Младший байт регистра захвата Таймера 2.Регистр RCAP2L захватывает младший байт Таймера 2, если Таймер 2 работает в режимезахвата.
Если Таймер 2 работает в режиме автоперезагрузки, то этот регистр содержитмладший байт перезагружаемого значения.Рисунок 17.16. RCAP2H: Старший байт регистра захвата Таймера 2R/WR/WR/WR/WR/WR/WR/WR/WБит 6Бит 5Бит 4Бит 3Бит 2Бит 1Бит 0Значениепри сбросе:00000000Бит 7SFR Адрес:0xCBБиты 7-0: RCAP2H: Старший байт регистра захвата Таймера 2.Регистр RCAP2H захватывает старший байт Таймера 2, если Таймер 2 работает в режимезахвата. Если Таймер 2 работает в режиме автоперезагрузки, то этот регистр содержитстарший байт перезагружаемого значения.Рисунок 17.17. TL2: Младший байт Таймера 2R/WR/WR/WR/WR/WR/WR/WR/WБит 6Бит 5Бит 4Бит 3Бит 2Бит 1Бит 0Значениепри сбросе:00000000Бит 7SFR Адрес:0xCCБиты 7-0: TL2: Младший байт Таймера 2.Регистр TL2 содержит младший байт 16-разрядного Таймера 2.Рисунок 17.18.
TH2: Старший байт Таймера 2R/WR/WR/WR/WR/WR/WR/WR/WБит 6Бит 5Бит 4Бит 3Бит 2Бит 1Бит 0Значениепри сбросе:00000000Бит 7SFR Адрес:0xCDБиты 7-0: TH2: Старший байт Таймера 2.Регистр TH2 содержит старший байт 16-разрядного Таймера 2.Ред. 1.2134C8051F018C8051F01917.3. Таймер 3Таймер 3 представляет собой 16-разрядный таймер, образованный двумя 8-разрядными SFRрегистрами, TMR3L (младший байт) и TMR3H (старший байт). Входной сигнал тактирования Таймера 3образуется из системного тактового сигнала путем деления его частоты на 1 или на 12, в зависимости отсостояния бита Т3М регистра управления TMR3CN.
Таймер 3 всегда настроен как автоматическиперезагружаемый таймер, значение перезагрузки которого хранится в регистрах TMR3RLL (младший байт) иTMR3RLH (старший байт). Таймер 3 может использоваться для запуска преобразования модуля АЦП, длятактирования модуля SMBus, а также в качестве таймера общего назначения. Таймер 3 не может работать врежиме счетчика.Рисунок 17.19. Структурная схема Таймера 312T3M0(К модулю АЦП)SYSCLK1TMR3HTF3TMR3CNTMR3LTCLKTR3(от модуля SMBus)SCLПерезагрузкаTOEПрерываниеTR3T3MTMR3RLL TMR3RLHМатрицаРисунок 17.20. TMR3CN: Регистр управления Таймера 3R/WTF3R/W-R/W-R/W-R/W-R/WTR3R/WT3MR/W-Бит 7Бит 6Бит 5Бит 4Бит 3Бит 2Бит 1Бит 0Значениепри сбросе:00000000SFR Адрес: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.135Ред. 1.2C8051F018C8051F019Рисунок 17.21. TMR3RLL: Младший байт регистра перезагрузки Таймера 3R/WR/WR/WR/WR/WR/WR/WR/WБит 6Бит 5Бит 4Бит 3Бит 2Бит 1Бит 0Значениепри сбросе:00000000Бит 7SFR Адрес:0x92Биты 7-0: TMR3RLL: Младший байт регистра перезагрузки Таймера 3.Таймер 3 настроен как таймер с автоматической перезагрузкой. Этот регистр содержитмладший байт перезагружаемого значения.Рисунок 17.22. TMR3RLH: Старший байт регистра перезагрузки Таймера 3R/WR/WR/WR/WR/WR/WR/WR/WБит 6Бит 5Бит 4Бит 3Бит 2Бит 1Бит 0Значениепри сбросе:00000000Бит 7SFR Адрес:0x93Биты 7-0: TMR3RLH: Старший байт регистра перезагрузки Таймера 3.Таймер 3 настроен как таймер с автоматической перезагрузкой. Этот регистр содержитстарший байт перезагружаемого значения.Рисунок 17.23.
TMR3L: Младший байт Таймера 3R/WR/WR/WR/WR/WR/WR/WR/WБит 6Бит 5Бит 4Бит 3Бит 2Бит 1Бит 0Значениепри сбросе:00000000Бит 7SFR Адрес:0x94Биты 7-0: TMR3L: Младший байт Таймера 3.Регистр TMR3L является младшим байтом Таймера 3.Рисунок 17.24. TMR3H: Старший байт Таймера 3R/WR/WR/WR/WR/WR/WR/WR/WБит 6Бит 5Бит 4Бит 3Бит 2Бит 1Бит 0Значениепри сбросе:00000000Бит 7SFR Адрес:0x95Биты 7-0: TMR3H: Старший байт Таймера 3.Регистр TMR3H является старшим байтом Таймера 3.Ред.
1.2136C8051F018C8051F01918. ПРОГРАММИРУЕМЫЙ МАССИВ СЧЕТЧИКОВПрограммируемый массив счетчиков (ПМС) реализует расширенные таймерные функции, при этомтребует меньшего вмешательства со стороны процессорного ядра, чем стандартные таймеры/счетчикиархитектуры 8051. ПМС состоит из специального 16-разрядного таймера/счетчика и пяти 16-разрядныхмодулей захват/сравнение. Каждый модуль захват/сравнение имеет свою собственную линию ввода/вывода(CEXn), которая через матрицу соединяется, если разрешено, с портом ввода/вывода (подробная информация онастройке матрицы приведена в разделе 13.1).
Таймер/счетчик тактируется программируемым внутреннимсигналом, в качестве которого могут использоваться:- внутренний сигнал с частотой, равной 1/12 системной тактовой частоты;- внутренний сигнал с частотой, равной 1/4 системной тактовой частоты;- переполнение Таймера 0;- входной сигнал на внешнем выводе ECI.Для управления модулем ПМС и его настройки используются связанные с ним SFR регистры. Структурнаясхема модуля ПМС показана на рис.18.1.Рисунок 18.1. Структурная схема ПМССистемныйтактовыйгенератор/4/1216-разрядныйтаймер-счетчикПереполнение T0МодульЗахват/сравнение 0МодульЗахват/сравнение 1МодульЗахват/сравнение 2137Ред.
1.2МодульЗахват/сравнение 4CEX4ПортыВвода/выводаCEX3CEX2CEX1CEX0ECIКоммутирующая матрицаМодульЗахват/сравнение 3C8051F018C8051F01918.1. Модули захват/сравнениеКаждый модуль можно независимо настроить для работы в одном из четырех режимов: инициируемыйпо фронту сигнала захват, программный таймер, высокоскоростной выход и широтно-импульсный модулятор.Каждый модуль имеет связанные с ним регистры специального назначения, которые используются для обменаданными с модулем и для настройки режимов работы.В табл.18.1 приведены комбинации бит в регистрах PCA0CPMn, используемые для перевода модулейзахват/сравнение в различные режимы работы. Установка в 1 бит ECCFn в регистрах PCA0CPMn разрешаетгенерацию прерываний при установке в 1 флагов CCFn регистра PCA0CN. Следует иметь ввиду, чтоиндивидуальные CCFn прерывания распознаются только в том случае, если прерывания от модуля ПМСразрешены глобально.
Прерывания от ПМС разрешаются глобально установкой в 1 битов EA (IE.7) и EPCA0(EIE1.3). Схема формирования прерываний от модуля ПМС приведена на рис.18.2.Таблица 18.1. Настройка модулей захват/сравнение в регистре PCA0CPMECOMCAPPCAPNMATTOGPWMECCFх10000хх01000хх11000х11х010001ххх100100100х = не имеет значенияOperation ModeЗахват инициируется положительнымфронтом сигнала на линии CEXnЗахват инициируется отрицательнымфронтом сигнала на линии CEXnЗахват инициируется изменениемсигнала на линии CEXnПрограммный таймерВысокоскоростной выходШиротно-импульсный модуляторРисунок 18.2. Схема формирования прерывания от ПМС(для n = 0 … 4)PCA0CPMnECCMT P ECA A AOWCOPP TGMCMP N n n n Fn n nnPCA0CNCCFRCCCCCCCCCCFF FFF4 3 2 1 0PCA0MDCIDLCCEPPCSSF1 0ПереполнениеТаймера/СчетчикаПМС01ECCF0EPCA0(EIE1.3)0ПМС модуль 01EA(IE.7)0011ДекодерприоритетовпрерыванийECCF10ПМС модуль 11ECCF20ПМС модуль 21ECCF30ПМС модуль 31ECCF4ПМС модуль 401Ред.