logo
Управление светодиодным индикатором

2. Интерфейсная БИС

Разнообразные периферийные устройства сопрягаются с МП системой посредством небольшого числа интерфейсных БИС. Их отличает высокая универсальность, которая достигается путем программирования выполняемых ими функций. Для реализации большого набора операций периферийного устройства в БИС включают помимо команд ввода/вывода команды управления, контроля, оценки состояния, а также дополнительные функциональные узлы: память, таймеры, ЦАП, АЦП и т.п. Для программирования разнообразных функций пользователю и разработчику МП системы требуется глубокое понимание работы сложных интерфейсных БИС. Рассмотрим работу такой БИС на примере МС 8155 (фирмы Intel) и ее отечественного аналога МС 1821 РУ55.

В устройство 8155 входят: статическое ОЗУ емкостью 256 байт, два 8-разрядных и один 6-разрядный порты ввода/вывода и 14-разрядный программируемый счетчик-таймер. На рис.4 показана МП система с использованием МС 8155.Элементом,определяющим режим работы МС, является регистр команд, в котором разряды 0-3 используются для указания функций портов, разряды 4 и 5 - для управления прерываниями, поступающими из порта С, когда он действует как порт, сопровождающий операции ввода/вывода в портах А и В, а последние два разряда 6-7 используются для управления таймером. Изменение содержимого регистра команд производится при выполнении операции ЗАПИСЬ по адресу ХХХХХ000, где ХХХХХ - базовый адрес БИС, 000-адрес регистра команд. При этом сигнал IO/М=1 и должен быть активным сигнал выбора БИС (СЕ=0).

Для оценки работы МС в БИС введен регистр состояния из семи фиксаторов. Шесть из них (0-5) используются для фиксации состояния портов, а один (6)-для оценки состояния таймера. Регистр состояния может быть опрошен при выполнении операции ЧТЕНИЕ по тому же адресу ХХХХХ000. Т.о., этот адрес играет двойную роль: когда производится ЗАПИСЬ по указанному адресу, информация записывается в управляющий регистр, а когда выполняется операция ЧТЕНИЕ по тому же адресу - на линиях AD0-AD7 выдается информация о состоянии портов и таймера.

Порт А представляет собой регистр, который в зависимости от содержимого регистров управления и состояния может работать как порт ввода, либо как порт вывода. Кроме того, он может работать в режиме с квитированием сообщений. Этот порт имеет адрес ХХХХХ001.

Порт В аналогичен порту А и имеет адрес ХХХХХ010.

Порт С является 6-разрядным регистром, имеющим адрес ХХХХХО11, и может использоваться как для ввода/вывода, так и для представления сигналов, сопровождающих ввод/ вывод в портах А и В.

Таймер представляет собой 14-разрядный счетчик, работающий на вычитание: импульсы поступают на его вход ТМ IN, при завершении счета таймер обеспечивает выработку сигнала на выходе ТМ OUT. Таймер реализуется в виде 16-разрядного регистра, в котором 14 разрядов используются для счетчика и 2 - для задания режима работы таймера.