Программируемые интерфейсные контроллеры
Общая характеристика программируемых интерфейсных контроллеров
Интерфейсы микроконтроллерных систем
Периферийные устройства подключаются к компьютеру с помощью специализированных адаптеров или контроллеров. Адаптер – это средство сопряжения некоторого внешнего устройства с определенной шиной МПС. Контроллер также выполняет подобные функции, однако он способен на самостоятельные действия после получения команд от машины. Сложный контроллер может иметь и собственный процессор. Сегодня часто термины “адаптер” и “контроллер” считают почти синонимами. Все внешние интерфейсы имеют в своем составе адаптер или контроллер.
Микропроцессорные комплекты КР580 и К1810 имеют следующие программируемые интерфейсные контроллеры (адаптеры):
· контроллер прерываний – К1810ВН59 (ВН59);
· контроллер ПДП – КР580ВТ57 (ВТ57);
· программируемый таймер – КР580ВИ53 (ВИ53);
· параллельный интерфейс – КР580ВВ55 (ВВ55);
· последовательный интерфейс – КР580ВВ51 (ВВ51
Микросхема КР580ВВ55А
Микросхема KP58GBB55A – программируемое устройство ввода/вывода параллельной информации, применяется в качестве элемента ввода/вывода общего назначения, сопрягающего различные типы периферийных устройств с магистралью данных систем обработки информации.
Условное графическое обозначение микросхемы приведено на (рисунке 1, назначение выводов – в таблице 8.3.1, структурная схема показана на рисунке 8.3.1.
Рисунок 8.3.1 Условное графическое обозначение КР580ВВ55А | Таблица 8.3.1. Назначение выводов |
Рисунок 8.3.2. Структурная схема КР580ВВ55 | Таблица 8.3.2. Выбор канала и управление передачей |
Обмен информацией между магистралью данных систем и микросхемой КР580ВВ55А осуществляется через 8-разрядный двунаправленный трехстабильный канал данных (D). Для связи с периферийными устройствами используются 24 – линии ввода/вывода, сгруппированные в три 8-разрядых канала ВА, ВВ, ВС, направление передачи информации и режимы работы которых определяются программным способом.
Микросхема может функционировать в трех основных режимах. В режиме 0 обеспечивается возможность синхронной программно управляемой передачи данных через два независимых 8-разрядных канала ВА и ВВ и два 4-разрядных канала ВС.
В режиме 1 обеспечивается возможность ввода или вывода информации в/или из периферийного устройства через два независимых 8-разрядных канала ВА и ВВ по сигналам квитирования. При этом линии канала С используются для приема и выдачи сигналов управления обменом.
В режиме 2 обеспечивается возможность обмена информацией с периферийными устройствами через двунаправленный 8-разрядный канал ВА по сигналам квитирования. Для передачи и приема сигналов управления обменом используются пять линий канала ВС.
Выбор соответствующего канала и направление передачи информации через канал определяются сигналами А0, А1 (соединяемые обычно с младшими разрядами канала адреса системы) и сигналами , , в соответствии с таблицей 2.
Режим работы каждого из каналов ВА, ВВ, ВС определяется содержимым регистра управляющего слова (РУС). Произведя запись управляющего слова в РУС, можно перевести микросхему в один из трех режимов работы:
режим 0 – простой ввод/вывод,
режим 1 – стробируемый ввод/вывод,
режим 2 – двунаправленный канал
Рисунок 8.3.3. Графическое представление режимов работы каналов | Рисунок 8.3.4. Формат управляющего слова определения режима работы * Безразличное состояние |
Рисунок 8.3.5. Формат управляющего слова установки и сброса разрядов регистра канала С | Таблица 8.3.3. |
При подаче сигнала SR РУС устанавливается в состояние, при котором все каналы настраиваются на работу в режиме 0 для ввода информации. Режим работы каналов можно изменять как в начале, так и в процессе выполнения программы, что позволяет обслуживать различные периферийные устройства в определенном порядке одной микросхемой. При изменении режима работы любого канала все входные и выходные регистры каналов и триггеры состояния сбрасываются. Графическое представление режимов работы каналов показано на рисунке 3, а формат управляющего слова, определяющего режимы работы каналов приведен на рисунке 8.3.4.
В дополнение к основным режимам работы микросхема обеспечивает возможность программной независимой установки в 1 и сброса в 0 любого из разрядов регистра канала ВС. Формат управляющего слова установки/сброса разрядов регистра канала ВС показан на рисунке 8.3.5.
Если микросхема запрограммирована для работы в режиме 1 или 2, то через выводы ВС0 и ВСЗ канала ВС выдаются сигналы, которые могут использоваться как сигналы запросов прерывания для микропроцессора. Запретить или разрешить формирование этих сигналов в микросхеме можно установкой или сбросом соответствующих разрядов в регистре канала ВС. Эта особенность микросхемы позволяет программисту запрещать или разрешать обслуживание любого внешнего устройства ввода/вывода без анализа запроса прерывания в схеме прерывания системы.
При работе микросхемы в режиме 0 обеспечивается простой ввод или вывод информации через любой из трех каналов, и сигналов управления обменом информацией с периферийным устройством не требуется. В этом режиме микросхема представляет собой совокупность двух 8-разрядных и двух 4-разрядных каналов ввода/вывода. В режиме 0 возможны 16 различных комбинаций схем ввода/вывода каналов ВА, ВВ, ВС, которые приведены в таблице 8.3.3.
В режиме 1 передача данных осуществляется только через каналы ВА и ВВ, а линии канала ВС используются для приема и выдачи сигналов управления обменом (сигналов квитирования).
Форматы управляющих слов и функциональные схемы каналов ВА и ВВ при вводе данных в режиме 1 показаны на рисунке 8.3.6.
Рисунок 8.3.6. Форматы управляющих слов (а, в) и функциональные схемы ввода данных (б, г) в режиме 1 | Рисунок 8.3.7. Форматы управляющих слов (а, в) и функциональные схемы вывода данных (б, г) в режиме 1 |
При подаче сигнала (стробирующий сигнал приема) низкого уровня данные записываются во входной регистр соответствующего канала.
Выходой сигнал ASK RS «Подтверждение приема» высокого уровня свидетельствует о том, что входные данные записаны во входной регистр канала.
Сигнал на выходе IRQ «Запрос прерывания» может использоваться для прерывания работы микропроцессора и устанавливается в состояние высокого уровня, если сигналы , ASK RC и в состоянии высокого уровня и соответствующий разряд регистра канала ВС, используемый как триггер разрешения выработки запроса прерывания по данному каналу, установлен в состояние высокого уровня. Сигнал IRQ сбрасывается в состояние низкого уровня при чтении информации из соответствующего канала.
Для разрешения выработки сигнала IRQ ВА используется 4-й разряд регистра канала ВС, а для сигнала IRQ BB 2-й разряд регистра канала ВС.
Форматы управляющих слов и функциональные схемы каналов ВА и ВВ при выводе информации в режиме 1 показаны на рисунке 8.3.7.
Сигнал низкого уровня на выходе (стробирующий сигнал записи) свидетельствует о том, что микропроцессор произвел запись данных в выходной регистр канала.
Сигнал низкого уровня на входе (подтверждение записи) свидетельствует о том, что внешнее устройство приняло данные, записанные в микросхему.
Сигнал IRQ устанавливается в состояние высокого уровня, если сигналы , в состоянии высокого уровня и соответствующий разряд регистра канала ВС, используемый как триггер разрешения выработки запроса прерывания по данному каналу, установлен в состояние высокого уровня. В состояние низкого уровня сигнал IRQ сбрасывается при переходе сигнала в состояние низкого уровня. Для разрешения выработки сигнала IRQ ВА используется 6-й разряд регистра канала ВС, а для сигнала IRQ BB 2-й разряд регистра канала ВС.
При работе микросхемы в режиме 2 обеспечивается возможность o6мeнa информацией с периферийными устройствами только по 8-разрядному двунаправленному каналу ВА. Для обеспечения протокола обмена используется пять линий канала ВС.
Формат управляющего слова и функциональная схема вводa/вывода данных в режиме 2 показаны на рисунке 8.3.7, временная диаграмма работы микросхемы в режиме 2 – на рисунке 8.3.8.
Рисунок 8.3.8. Формат управляющего слова (а) и функциональная схема ввода/вывода данных (б) в режиме 2
Функции сигналов управления, используемых при передаче информации в режиме 2, и временные соотношения между ними такие же, как и в режиме 1.
В режиме 2 допускается любая последовательность передачи данных, при которой сигнал появляется раньше сигнала , а сигнал - раньше сигнала .
Если микросхема запрограммирована для работы в режиме 1 или 2, то состояние каждого сигнала управления об установлении связи с периферийным устройством, принимаемого и выдаваемого через выводы канала ВС фиксируется в регистре канала ВС. Это позволяет программисту простым чтением содержимого регистра канала ВС проверить состояние каждого периферийного устройства, подключенного к микросхеме, и в соответствии с состоянием внешнего устройства изменять процесс прохождения программы.
Для чтения информации состояния используется обычная операция чтения канала ВС.