Таймеры/счетчики событий MCS-51
При работе в качестве таймера содержимое Т/С инкрементируется в каждом машинном цикле, т.е. через 1 мкс при частоте кварца 12 МГц.
При работе в качестве счетчика событий содержимое Т/С инкрементируется под воздействием перехода из 1 в 0 внешнего входного сигнала, подаваемого на входы Т0 (Р3.4) или Т1 (Р3.5). Для управления режимами работы Т/С и организации взаимодействия таймеров с системой прерывания используются регистры TMOD (рис. 4.1) и TCON(табл. 4.1). С помощью битов М1 и М0 задаются четыре возможных режима работы Т/С0 и Т/С1.
Режим 0. Регистр таймера имеет разрядность 13 бит. При его переходе из состояния «все единицы» в состояние «все нули» устанавливается флаг TF. Работа Т/С разрешена, когда TR=1 и либо GATE=0, либо INT=1.
Режим 1. Отличается от режима 0 тем, что регистр таймера имеет разрядность 16 бит.
Режим 2. TL работает как 8-битовый автоперезагружаемый таймер/счетчик. ТН хранит значение, которое должно быть перезагружено в TL каждый раз по его переполнению.
Режим 3. TL0 работает как 8-битовый Т/С и его режим определяется управляющими битами Т/С0. ТН0 работает только как 8-битовый таймер, управляемый битом TR1 и использующий флаг TF1. Работа Т/С1 постоянно разрешена в режимах 0,1 и 2 без использования прерываний.
Символические обозначения программно доступных битов некоторых регистров приведены в табл. 4.1.
Таблица 4.1
Регистр | Бит 7 | Бит 6 | Бит 5 | Бит 4 | Бит 3 | Бит 2 | Бит 1 | Бит 0 |
P3 | RD | WR | T1 | T0 | INT1 | INT0 | TxD | RxD |
PSW | C | AC | F0 | RS1 | RS0 | OV | – | P |
TCON | TF1 | TR1 | TF0 | TR0 | IE1 | IT1 | IE0 | IT0 |
IE | EA | – | – | ES | ET1 | EX1 | ET0 | EX0 |
IP | – | – | – | PS | PT1 | PX1 | PT0 | PX0 |
SCON | SM0 | SM1 | SM2 | REN | TB8 | RB8 | TI | RI |
Дата добавления: 2016-01-09; просмотров: 1037;