Программирование микроконтроллеров MCS-51



             

Программная модель микроконтроллера 8051 - часть 5


         Регистры TH0, TL0, TH1, TL1 (Timer/counter Low (High) byte). Исходное (текущее) состояние j-го таймера/счетчика T/Cj

 в микроконтроллере определяется (отражается) программно доступными регистрами THj, TLj. Причем регистр THj - старшие, а регистр TLj - младшие 8 разрядов. Указанные регистры могут быть программно прочитаны или загружены как при выключенных, так и при работающих таймерах/счетчиках. Новая загрузка THj, TLj сразу же означает новую величину с которой будет начат счет в T/Cj, а старая теряется. Если загрузка произведена при включенном T/Cj, то счет продолжается с новой величины. Очередность загрузки регистров THj, TLj произвольная. Выключение T/Cj не искажает код, находящийся в THj, TLj. Таймер/счетчик T/Cj можно выключить, через произвольное время вновь включить и счет начнется с той величины, которая была в регистрах THj, TLj на момент выключения.

Регистр TCON (Timer/counter Control). Наименование и назначение разрядов регистра TCON приведены в табл.2.3. Все разряды этого регистра доступны по записи и по чтению.

                                                                                                                        Таблица 2.3

Биты

Наименование

Назначение

7

TF1

Флаг переполнения T/C1.

6

TR1

Бит включения T/C1.

TR1=1 - включен, TR1=0 - выключен.

5

TF0

Флаг переполнения T/C0.

4

TR0

Бит включения T/C0.

TR0=1 - включен, TR0=0 - выключен.

3

IE1

Флаг запроса внешнего прерывания

.

2

IT1

Бит, определяющий вид прерывания

.

IT1=0 - прерывание по уровню (низкому),

IT1=1 - прерывание по фронту (переход из"1" в "0").

1

IE0

Флаг запроса внешнего прерывания

.

0

IT0

Бит, определяющий вид прерывания

.

IT0=0 - прерывание по уровню (низкому),

IT0=1 - прерывание по фронту (переход из"1" в "0").

Флаг TFj

 аппаратно устанавливается в "1" при переходе T/Cj из состояния "все единицы" в состояние "все нули".


Содержание  Назад  Вперед