F00-17 (1041601), страница 34
Текст из файла (страница 34)
TH1: Старший байт Таймера 1R/WR/WR/WR/WR/WR/WR/WR/WЗначениепри сбросе:Бит 7Бит 6Бит 5Бит 4Бит 3Бит 2Бит 1Бит 000000000SFR Адрес:Биты 7-0: TH1: Старший байт Таймера 1.Регистр TH1 является старшим байтом 16-разрядного Таймера 1.4.2002; Rev. 1.4CYGNAL Integrated Products, Inc. 20020x8DPage 143C8051F000/1/2/5/6/7C8051F010/1/2/5/6/719.2. Таймер 2Таймер 2 представляет собой 16-разрядный таймер/счетчик, образованный двумя SFR регистрами:TL2 (младший байт) и TH2 (старший байт). Аналогично Таймерам 0 и 1, Таймер 2 в качестве сигналатактирования может использовать системный тактовый сигнал или срез сигнала на внешнем входном выводе.Бит выбора режима таймера или счетчика C/T2 (T2CON.1) определяет источник сигнала тактирования дляТаймера 2. Если бит C/T2 = 0, то в качестве сигнала тактирования будет использоваться системный тактовыйсигнал (деленный либо на 1, либо на 12 в зависимости от значения бита T2M регистра CKCON).
Если битC/T2 = 1, то регистр таймера/счетчика будет инкрементироваться под воздействием перехода из 1 в 0внешнего сигнала на входном выводе Т2. (В разделе 14 приведена подробная информация о выборе инастройке внешних выводов). Таймер 2 может также использоваться для запуска преобразования АЦП.Таймер 2 обладает дополнительными возможностями, отсутствующими у Таймеров 0 и 1. Он можетработать в одном из трех режимов:- 16-разрядный таймер/счетчик с захватом,- 16-разрядный таймер/счетчик с автоперезагрузкой,- режим генератора скорости передачи данных.Режимы работы Таймера 2 задаются установкой бит конфигурации в регистре управления Таймера 2T2CON, (см.
таблицу в конце этого раздела). В следующих разделах приводится подробное описание каждогорежима работы Таймера 2.RCLK00011XPage 144TCLK00101XCP/RL210XXXXTR2111110Режим16-разрядный таймер/счетчик с захватом16-разрядный таймер/счетчик с автоперезагрузкойГенератор скорости передачи данных для TXГенератор скорости передачи данных для RXГенератор скорости передачи данных для TX и RXОтключенCYGNAL Integrated Products, Inc. 20024.2002; Rev.
1.4C8051F000/1/2/5/6/7C8051F010/1/2/5/6/719.2.1. Режим 0: 16-разрядный таймер/счетчик с захватомВ этом режиме Таймер 2 работает как 16-разрядный счетчик с возможностью захвата. Подвоздействием перехода из 1 в 0 внешнего сигнала на входном выводе T2EX 16-разрядное значение изрегистров Таймера 2 (TH2, TL2) загружается в регистры захвата (RCAP2H, RCAP2L).Таймер 2 при работе в режиме таймера/счетчика с захватом в качестве внутреннего сигналатактирования может использовать сигнал системной тактовой частоты (SYSCLK), сигнал системной тактовойчастоты, деленной на 12 (SYSCLK/12), или срез (переход из 1 в 0) сигнала на внешнем выводе Т2.
Если битC/T2 (T2CON.1) сброшен в 0, то в качестве сигнала тактирования будет использоваться системный тактовыйсигнал (деленный либо на 1, либо на 12 в зависимости от значения бита T2M регистра CKCON). Если битC/T2 установлен в 1, то регистр таймера/счетчика будет инкрементироваться под воздействием перехода из 1в 0 внешнего сигнала на входном выводе Т2. Когда регистр таймера/счетчика инкрементируется ипереполняется из состояния 0xFFFF в состояние 0x0000, устанавливается флаг переполнения таймера TF2 ибудет сгенерировано прерывание, если оно разрешено.Режим таймера/счетчика с захватом выбирается установкой в 1 бита выбора режимазахват/перезагрузка CP/RL2 (T2CON.0) и бита управления запуском Таймера 2 TR2 (T2CON.2). Длявключения захвата бит разрешения внешнего сигнала для Таймера 2 EXEN2 (T2CON.3) также должен бытьустановлен в 1.
Если бит EXEN2 сброшен, то срезы внешнего сигнала на входном выводе T2EX будутигнорироваться.Рисунок 19.11. Структурная схема Таймера 2 в режиме 0CKCONTTT2 1 0MMM120SYSCLK1T2Матрица01TCLKTL2TH2EXEN2T2EX4.2002; Rev. 1.4T2CONTR2ЗахватRCAP2LRCAP2HCP/RL2C/T2TR2EXEN2TCLKRCLKEXF2TF2ПрерываниеМатрицаCYGNAL Integrated Products, Inc. 2002Page 145C8051F000/1/2/5/6/7C8051F010/1/2/5/6/719.2.2. Режим 1: 16-разрядный таймер/счетчик с автоперезагрузкойТаймер/Счетчик с режимом автоперезагрузки устанавливает флаг переполнения таймера TF2 припереполнении регистра таймера/счетчика из состояния 0xFFFF в состояние 0x0000.
Генерируетсяпрерывание, если оно разрешено. При переполнении 16-битное значение, хранящееся в двух регистрахзахвата (RCAP2H, RCAP2L), автоматически загружается в регистр таймера/счетчика и таймерперезапускается.Режим таймера/счетчика с автоперезагрузкой выбирается сбросом в 0 бита CP/RL2. Установка в1 бита TR2 включает и запускает таймер.
Таймер 2 в качестве внутреннего сигнала тактирования можетиспользовать сигнал системной тактовой частоты или срез (переход из 1 в 0) внешнего сигнала (выборсигнала тактирования осуществляется битом С/Т2). Если бит EXEN2 установлен в 1, то под воздействиемперехода из 1 в 0 внешнего сигнала на выводе T2EX произойдет перезагрузка Таймера 2. Если битEXEN2 сброшен в 0, то срезы внешнего сигнала на входном выводе T2EX будут игнорироваться.Рисунок 19.12. Структурная схема Таймера 2 в режиме 1CKCONT TT2 1 0MMM120SYSCLKT2Матрица01TCLKTL2TH2RCAP2LRCAP2HT2CON1TR2EXEN2T2EXPage 146МатрицаПерезагрузкаCYGNAL Integrated Products, Inc. 2002CP/RL2C/T2TR2EXEN2TCLKRCLKEXF2TF2Прерывание4.2002; Rev.
1.4C8051F000/1/2/5/6/7C8051F010/1/2/5/6/719.2.3. Режим 2: Генератор скорости передачи данныхТаймер 2 может использоваться в качестве генератора скорости передачи данных дляпоследовательного порта УАПП, если УАПП работает в режимах 1 или 3 (подробная информация о режимахработы УАПП приведена в разделе 18.1). В режиме генератора скорости передачи данных Таймер 2 работаеттак же, как в режиме автоперезагрузки. При переполнении 16-битное значение, хранящееся в двух регистрахзахвата (RCAP2H, RCAP2L), автоматически загружается в регистр таймера/счетчика. Однако, флагпереполнения TF2 не устанавливается и прерывание не генерируется. Вместо этого, событие переполненияиспользуется в качестве входного тактового сигнала для регистра сдвига модуля УАПП.
ПереполнениеТаймера 2 может использоваться для генерации скорости передачи данных для передатчика и/или приемниканезависимо.Режим генератора скорости передачи данных выбирается установкой в 1 битов RCLK (T2CON.5)и/или TCLK (T2CON.4). Если RCLK = 1 или TCLK = 1, то Таймер 2 работает в режиме автоперезагрузкинезависимо от состояния бита CP/RL2. Скорость передачи данных УАПП, работающего в режимах 1 или 3,определяется скоростью переполнения Таймера 2:Baud Rate = Timer 2 Overflow Rate / 16.Следует отметить, что во всех других режимах частота внутреннего сигнала тактирования таймераравна системной тактовой частоте, деленной либо на 1, либо на 12 (определяется битом T2M регистраCKCON).
Однако, в режиме генератора скорости передачи данных частота тактирования таймера равнасистемной тактовой частоте, деленной на 2. Другой коэффициент деления выбрать нельзя. Если требуетсядругая частота тактирования таймера, то установка в 1 бита С/Т2 позволит использовать для этой целивходной сигнал на внешнем выводе Т2. В этом случае скорость передачи данных для УАПП вычисляется поформуле:Baud Rate = FCLK / [32 * (65536 – [RCAP2H:RCAP2L]) ],гдеFCLK – частота входного сигнала на внешнем выводе Т2,[RCAP2H:RCAP2L] - 16-битное значение, хранящееся в регистрах захвата.Как описано выше, в режиме генератора скорости передачи данных Таймер 2 не устанавливает флагпереполнения TF2 и поэтому не может генерировать прерывание.
Однако, если бит EXEN2 установлен в 1, топод воздействием перехода из 1 в 0 входного сигнала на внешнем выводе T2EX будет установлен флаг EXF2и будет сгенерировано прерывание от Таймера 2, если оно разрешено. Поэтому вход T2EX можноиспользовать как дополнительный источник внешнего прерывания.Рисунок 19.13. Структурная схема Таймера 2 в режиме 2SYSCLK20T2C/T21МатрицаTL2TCLKTR2ПереполнениеТаймера 2TH2Перезагрузка2ПереполнениеТаймера 1RCAP2LS IGGTDFFOL1 0PE116004.2002; Rev.
1.4МатрицаT2CONEXEN2CP/RL2C/T2TR2EXEN2TCLKRCLKEXF2TF2ТактовыеимпульсыдляприемникаRCLKRCAP2H1T2EX160PCONSMOD1ТактовыеимпульсыдляпередатчикаTCLKПрерываниеCYGNAL Integrated Products, Inc. 2002Page 147C8051F000/1/2/5/6/7C8051F010/1/2/5/6/7Рисунок 19.14. T2CON: Регистр управления Таймера 2R/WR/WR/WR/WR/WR/WR/WR/WTF2EXF2RCLKTCLKEXEN2TR2C/T2CP/RL2Значениепри сбросе:Бит 7Бит 6Бит 5Бит 4Бит 3Бит 2Бит 1Бит 000000000(доступен в битовомрежиме адресации)SFR Адрес:0xC8Бит 7: TF2: Флаг переполнения Таймера 2.Устанавливается в 1 аппаратно, если Таймер 2 переполняется из состояния 0xFFFF в состояние0x0000 или перезагружается. Если прерывание от Таймера 2 разрешено, то установка этого битаприведет к переходу на процедуру обслуживания прерывания от Таймера 2. Этот бит несбрасывается аппаратно, он должен быть сброшен программно.