Программируемый таймер К1810ВИ54
⇐ ПредыдущаяСтр 3 из 3
В некоторых применениях МПС встречаются такие функции управления, как генерация сигналов переменной частоты, формирование временных задержек, подсчет числа внешних событий и др. С целью максимального упрощения реализации таких функций в МПС применяются БИС программируемых счетчиков-таймеров. Типичная организация таймера показана на рис. 4.1. Основными элементами таймера являются регистр-счетчик и регистр управления. Сам счетчик прямо ЦП не доступен. Таймер может быть запрограммирован на работу в одном из нескольких предусмотренных для него режимов работы. При программировании ЦП загружает в регистр управляющего слова информацию о режиме работы таймера, а в регистр начального счета константу пересчета, определяющую заданный временной интервал. Содержимое регистра начального счета автоматически загружается в счетчик. С приходом тактового импульса на вход CLK при установке сигнала разрешения счета на входе GATE происходит вычитание счетчика на 1. Когда содержимое счетчика достигнет 0, на выходе OUT формируется сигнал, указывающий, что истекло заданное время, т.е. заданный константой пересчета временной интервал. В зависимости от режима работы таймера этот сигнал может быть в виде перепада потенциала, одиночного импульса, серии импульсов. Состояние счетчика ЦП может считывать путем передачи его содержимого в выходной регистр счетчика. В составе микропроцессорного комплекта К1810 для реализации времязадающих функций предусмотрена БИС К1810ВИ54 (программируемый таймер (ПТ)). Структурная схема БИС представлена на рис. 4.2.
Рис. 4.1. Организация таймера
В состав БИС входят: буфер данных, предназначенный для организации двунаправленной связи внутренней шины БИС с ШД системного интерфейса; блок управления БИС, с помощью которого выбирается один из трех каналов либо формируется признак загрузки управляющих слов или команд; три идентичных канала, каждый из которых может быть запрограммирован на работу в одном из шести режимов. Каналы работают независимо друг от друга.
Рис. 4.2. Структурная схема БИС ПТ
Назначение выводов ПТ. · D7 – D0 - выводы данных. · RD – чтение. Используется для чтения содержимого внутренних регистров ПТ. · WR – запись. Используется для загрузки данных в регистры ПТ. · CS – выбор кристалла. · A1 – A0 – адресные входы, по которым осуществляется адресация к одному их каналов. · <A1, A0> = <0,0> - адрес канала 0; · <A1, A0> = <0,1> - адрес канала 1; · <A1, A0> = <1,0> - адрес канала 2; · <A1, A0> = <1,1> - признак загрузки управляющих слов и команд. · CLK2 – CLK0 – входы тактовых импульсов для управления счетчиком. Срез сигнала на входе CLK приводит к уменьшению содержимого счетчика на единицу. · GATE2 –GATE0 – входы разрешения счета. Сигнал GATE =1 разрешает счет, а GATE=0 запрещает счет и состояние счетчика при этом не меняется. · OUT2 – OUT0 – выходы счетчика. При равенстве счетчика 0 вырабатывается сигнал на выходе этого счетчика, сигнализирующий об окончании счета. Программируемый таймер К1810ВИ54 включает три канала, каждый из которых состоит из трех 16-разрядных регистров CR, CE, OL и двух 8-разрядных регистров RSW и RS. CR - регистр пересчета. Служит для хранения констант пересчета. При программировании ЦП записывает в этот регистр константу, соответствующую времени появления сигнала на выходе счетчика. CE – регистр – счетчик, работающий в режиме вычитания. Изменение содержимого CE осуществляется по срезу сигнала CLK при GATE=1. При программировании содержимое регистра CR загружается в регистр CE для счета.
OL – выходной (буферный) регистр счетчика. Служит для запоминания и хранения мгновенного хранения счетчика CE, которое в любой момент времени может быть записано командой «Защелка» или «Чтение состояние канала». После выполнения этих команд содержимое регистра OL может быть прочитано ЦП без остановки дальнейшего счета в регистре CE. RS – регистр состояния канала. Содержимое этого регистра является словом состояния канала и его можно считывать в ЦП с помощью команды «Чтение состояния канала». RSW – регистр управляющего слова. Предназначен для записи и хранения управляющего слова, определяющего режим работы канала. При посылке ЦП в ПТ управляющей информации состояние сигналов на линиях A1,A0 должно быть 1,1. Управляющая информация может быть следующего содержания: управляющее слово CW, команда «Защелка», команда «Чтение состояния канала». Управляющее слово CW. Формат управляющего слова показан на рис. 4.3. Управляющие слова загружаются в регистры RSW каналов ПТ по команде OUT PORT, AL. Адрес канала указывается в самом формате управляющего слова в битах D7, D6 (SC1, SC0). Загрузка управляющего слова должна предшествовать загрузке константы. Биты D5, D4 (RW1, RW0) определяют размерность и порядок загрузки констант. Если D5, D4 заданы кодами 0 1 или 1 0, то размер константы определяется соответственно старшим или младшим байтом. Если <D5, D4>=<1,1>, то размер константы два байта; сначала загружается младший байт, затем – старший. Биты D3, D2, D1 (M2, M1, M0) задают один из шести режимов работы канала. Бит D0 (BCD) определяет тип счета. При D0=0 константа задается в двоичном коде и может принимать значения в диапазоне 0 – 65535. При D0=1 константа задается в двоично-десятичном коде в диапазоне 0 – 9999.
Рис. 4.3. Формат управляющего слова ПТ
После загрузки управляющего слова необходимо загрузить в каналы константу пересчета. Константа пересчета загружается в ПТ также по командам OUT PORT, AL, но с адресом, формирующим на входах A1, A0 код соответствующего канала (00, 01, 10). Команда «Защелка». Формат команды показан на рис. 4.4. Команда «Защелка» позволяет прочитать содержимое счетчика CE в любой момент времени без остановки счета. В формате команды нужно указать в битах D7, D6 (SC1, SC0) – номер канала, в котором нужно прочитать состояние счетчика CE, а биты D5, D4 должны быть равны 0,0 (код команды «Защелка»). Значение остальных битов не существенно. Команда «Защелка» загружается по команде OUT PORT, AL с адресом, формирующем на входах A1, A0 код 1 1.
Рис. 4.4. Формат команды ”Защелка”
При приеме команды «Защелка» в соответствующем канале ПТ состояние счетчика CE загружается в регистр OL. После загрузки команды «Защелка» содержимое регистра CL можно прочитать по команде IN AL, PORT с адресом выбранного канала. Команда “Чтение состояния канала” позволяет в любой момент времени прочитать слово состояния канала, т.е. содержимое регистра RS, а также выполнить защелку одного или нескольких каналов. Формат команды показан на рис. 4.5. Для организации чтения состояния канала биты D7, D6 команды должны быть равными 1,1, а бит D4=0.
Рис. 4.5. Формат команды ”Чтение состояния”
Если одновременно требуется защелкнуть каналы бит D5 также устанавливается в 0.
Рис. 4.6. Формат слова состояния канала
Биты D3, D2, D1 указывают на выбираемые каналы (1 в соответствующем бите). Бит D0=0. После подачи команды “Чтение состояния канала” ЦП может прочитать содержимое регистра RS того канала, который указан в команде. Формат слова состояния показан на рис. 4.6. Как видно, в процессе работы канала изменяются только два старших бита слова состояния D7 и D6. Остальные разряды соответствуют разрядам ранее загруженного управляющего слова, что позволяет контролировать правильность его загрузки. Бит D7 слова состояния несет информацию о состоянии выхода OUT канала в момент выполнения команды «Чтение состояния канала». Бит D6 показывает, передавалась в CE или нет последняя загружаемая константа в CR (0-передавалась, 1-не передавалась). Чтение содержимого регистра RS производится по команде IN AL, PORT с адресом выбранного канала. Как отмечалось ниже, каналы БИС ПТ независимо друг от друга могут быть запрограммированы на работу в одном из шести режимов.
счет, а GATE=0 запрещает счет, причем GATE не влияет на выход OUT. Содержимое CR передается в CE по первому импульсу CLK после того, как ЦП осуществил запись в CR, независимо от сигнала входа GATE. Счет в регистре CR начинается со второго тактового импульса CLK. На выходе OUT сразу после загрузки управляющего слова устанавливается низкий уровень сигнала, который сохраняется до достижении счетчиком нуля. Таким образом, сигнал OUT=0 удерживается на время N+1 тактовых импульсов, где N-загруженная константа. · Режим 1 (программируемый ждущий мультивибратор). При загрузке управляющего слова выход OUT устанавливается в 1. После загрузки константы пересчета N в регистр CR переход из 0 в 1 сигнала на входе GATE вызывает загрузку регистра CR. На выходе OUT происходит переход из 1 в 0 и запускается счет CE. Когда счетчик достигнет 0, на выходе OUT формируется высокий уровень сигнала. Таким образом, результатом работы канала в режиме 1 является формирование отрицательного импульса на выходе OUT длительностью равной N периодов синхронизации. Режим 1 является режимом с перезапуском. По каждому фронту сигнала GATE регистр CE перезагружается содержимым CR. · Режим 2 (импульсный генератор частоты). После загрузки управ ляющего слова на выходе OUT устанавливается единичный сигнал. При разрешении счета (GATE=1) счетчик CE производит вычитание 1 по импульсу CLK. Когда счетчик достигнет 0, на выходе OUT возникнет переход из 1 в 0. Низкий уровень устанавливается на время одного периода CLK. Режим 2 является режимом с автозагрузкой, т.е. после цикла счета регистр CE автоматически перезагружается содержимым CR и счет повторяется. При GATE=0 счет запрещается. Переход из 0 в 1 на выходе GATE вызывает продолжение счета. Данный режим позволяет реализовать генератор тактовых импульсов. · Режим 3 (генератор импульсов со скважностью два). Режим 3 аналогичен режиму 2, за тем исключением, что на выходе OUT формируется низкий уровень при достижении половины начального счета, т.е. при достижении счетчиком значения N/2 для четных значений N или (N-1)/2 для нечетных значений N. Низкий уровень сохраняется до достижения счетчиком 0. Сигнал на выходе OUT переходит из 1 в 0, регистр CE перезагружается и работа канала продолжается. · Режим 4 (программно запускаемый одновибратор). Режим 4 аналогичен режиму 0 за тем исключением, что на выходе OUT после загрузки управляющего слова устанавливается высокий потенциал, который действует в процессе счета, а при достижении счетчиком 0 появляется отрицательный импульс с длительностью равной одному периоду тактового импульса CLK. Если во время счета сигнал GATE снимается, то счет приостанавливается, текущее значение счетчика CE сохраняется. Переход GATE из 0 в 1 вызывает продолжение счета. Это режим однократного формирования импульса.
· Режим 5 (аппаратно запускаемый одновибратор). Режим 5 аналогичен режиму 4 по способу формирования сигнала на выходе OUT и режиму 1 по действию сигнала GATE. После загрузки регистра CR переход из 0 в 1 на выходе GATE вызывает передачу содержимого регистра CR в счетчик CE следующим импульсом CLK. На выходе OUT в процессе счета действует высокий уровень сигнала, а при достижении счетчиком 0 формируется отрицательный импульс с длительностью равной одному периоду тактового сигнала CLK. Таким образом, запуск канала таймера в работу в этом режиме осуществляется аппаратно путем подачи на вход GATE перепада из 0 в 1. Рассмотрим пример программирования ПТ для организации работы канала 1 в режиме 2 (адреса портов ПТ заданы в диапазоне (40-43)H). mov AL, 74H out 43H, AL mov AL, 35H out 42H, AL mov AL, 2BH mov 42H, AL Первые две команды указывают, что управляющее слово посылается в канал 1, который должен работать в режиме 2; загрузка младшего и старшего байтов; счет двоичный. Последние четыре команды загружают константу пересчета равную 2B35H в канал 1.
Контрольные вопросы и задания
1. Структура канала БИС программируемого таймера. Назначение регистров канала. Формат регистра режима. 2. Назначение управляющих сигналов канала CLK, DATE, OUT. 3. Режимы работы каналов таймера. а) Приведите временные диаграммы сигналов CLK, GATE, OUT при работе канала в режиме 0. б) Приведите временные диаграммы сигналов CLK, GATE, OUT при работе канала в режиме 1. в) Приведите временные диаграммы сигналов CLK, GATE, OUT при работе канала в режиме 2. г) Приведите временные диаграммы сигналов CLK, GATE, OUT при работе канала в режиме 3. д) Приведите временные диаграммы сигналов CLK, GATE, OUT при работе канала в режиме 4. е) Приведите временные диаграммы сигналов CLK, GATE, OUT при работе канала в режиме 5. 4. Для программируемого таймера в МПС выделен диапазон адресов (40-43)H. а) Напишите команды ввода в канал 1 управляющего слова с параметрами: режим 3, загрузка старшего и младшего байтов, счет двоичный. б) Напишите команды для чтения содержимого счетчика канала 2. в) На вход CLK канала 0 поступают импульсы с частотой F=10 Мгц. Запрограммируйте канал 0 для работы в режиме одновибратора с формированием импульса через 125 мкс после запуска.
СПИСОК ЛИТЕРАТУРЫ 1. Калабеков Б.А. Микропроцессоры и их применение в системах передачи и обработки сигналов. – М.: Радио и связь, 1987. 2. Лю-Ю-Чжен, Гибсон Г. Микропроцессоры семейства 8086/8088.- М.: Радио и связь, 1987. 3. Микропроцессорный комплект К1810. Структура, программирование, применение / Под. Ред. Ю.М.Казаринова. – М.: Высш.шк., 1990. 4. Райхлин В.А., Борисов А.Н. Основы организации микропроцессорных систем. Учебное пособие для вузов. Казань: Изд-во Казан. гос. техн. ун-та, 1998.
СОДЕРЖАНИЕ Введение... …………………………………………………………… 3 1. Интерфейсные БИС ………………………………………………. 6 1.1. Параллельный периферийный интерфейс …………………. 6 1.2. Последовательный периферийный интерфейс ……………..18 2. Работа по прерываниям ……………………………………………33 Контроллер прерываний К1810ВН59А …………………………...39 3. Прямой доступ к памяти …………………………………………...52 Контроллер ПДП …………..……………………………………….55 4. Программируемый таймер К1810ВИ54 …………………………..69 Список литературы……… …………………………………….……..81
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|