В состав счетчика входят регистр хранения, буферный регистр и собственно счетчик. Регистр хранения содержит значение константы счета. В начале цикла работы канала константа счета из регистра хранения переписывается в счетчик, и затем по тактовым импульсам на входе CLK происходит декремент содержимого счетчика. Содержимое счетчика в любой момент времени может быть переписано в буферный регистр и прочитано процессором. В регистр режима записывается управляющее слово, определяющее режим работы канала. Схема управления синхронизирует работу отдельных схем в соответствии с запрограммированным режимом работы и работу канала с работой процессора. Схема синхронизации формирует серию внутренних импульсов с длительностью, определяемой внутренними времязадающими цепями, и периодом, равным периоду внешних тактовых импульсов.
Каналы таймера полностью независимы друг от друга - каждый может иметь свой режим работы. Счетчик в каждом канале представляет собой 16-разрядный счетчик с предустановкой, работающий на вычитание в двоичном или двоично-десятичном коде. Таким образом, максимальное число при счете - 216 (при работе в двоичном коде) или 104 (при работе в двоично-десятичном коде) - получается при загрузке всех нулей в счетчик канала.
Режимы работы ПТ задаются при начальной установке. Процессор должен задать каждому каналу в указанной последовательности:
Режим работы. Определяется записью в ПТ управляющего слова по адресу A0=1, A1=1.
Число для счетчика (один или два байта в зависимости от управляющего слова для данного канала).
Формат управляющего слова приведен в табл. 3. Порядок программирования ПТ произвольный, т. е. можно сначала запрограммировать режимы работы всех каналов, а затем загрузить счетчики. Счетчик канала должен быть обязательно загружен именно тем количеством байтов, которое было запрограммировано в управляющем слове (значения разрядов D5 и D4). При загрузке содержимого счетчика двухбайтовым числом первым записывается младший байт, затем старший.
Таблица 3. Формат управляющего слова для выбора режима работы
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
Выбор канала 00 - канал 0 01 - канал 1 10 - канал 2 |
Число байтов для загрузки счетчика 00 - чтение на лету 01 - чтение/запись младшего байта 10 - чтение/запись старшего байта 11 - чтение/запись слова |
Режим работы канала 000 - режим 0 001 - режим 1 010 - режим 2 011 - режим 3 100 - режим 4 101 - режим 5 |
1 = двоично-десятичный счет 0 = двоичный счет |
Существует шесть режимов работы каждого канала.
Режим 0 - выдача сигнала прерывания по конечному числу. При работе в этом режиме на выходе канала появляется уровень "0" сразу же после установления режима работы. После загрузки числа в счетчик канала выход остается в "0" и счетчик начинает считать, если на входе разрешения установлен уровень "1". После того как достигается конечное число, на выходе устанавливается уровень "1" и остается до тех пор, пока канал не будет перезагружен режимом работы или новым числом.
Режим 1 - ждущий мультивибратор с программно-устанавливаемой длительностью сигнала. В этом режиме выход канала после загрузки числа в счетчик канала устанавливается в уровень "0" после первого тактового сигнала, следующего за передним фронтом на управляющем входе. Одновременно начинается счет, а при достижении конечного числа на выходе устанавливается уровень "1".
Режим 2 - генератор тактовых сигналов. В этом режиме на выходе канала через число периодов тактовой частоты, записанное в счетчике канала, появляется уровень "0" длительностью в один период тактовой частоты.
Режим 3 - генератор прямоугольных сигналов. В этом режиме на выходе канала будет уровень "1" в течение первой половины интервала времени, определяемого числом в счетчике, и уровень "0" в течение второй половины.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.