К541ре1 к565ру6 кр580ва86 к555ли1 к555лн1
Рисунок 16 - Схема подключения ОЗУ и ПЗУ к магистралям
4. РАЗРАБОТКА ПОДСИСТЕМ ВВОДА/ВЫВОДА, ПРЕРЫВАНИЯ И
ПРЯМОГО ДОСТУПА К ПАМЯТИ
4.1 Контроллер прямого доступа к памяти КР580ВТ57
БИС программируемого контроллера прямого доступа к памяти КР580ВТ57 предназначена для организации высокоскоростного обмена данными между памятью и внешними устройствами, выполняемого по инициативе внешнего устройства. Контроллер прямого доступа к памяти (КПДП) генерирует управляющие сигналы, необходимые для организации обмена. КПДП содержит четыре канала прямого доступа, каждый из которых обеспечивает передачу блока данных размером до 16 Кбайт с произвольным начальным адресом в диапазоне от 0 до 64 Кбайт.
Упрощенная структурная схема контроллера прямого доступа к памяти приведена ниже.
В состав БИС входят: двунаправленный двустабильный буфер данных ВD, предназначенный для обмена информацией между микропроцессором и контроллером прямого доступа к памяти; схема управления чтением/записью RWCU, адресующая внутренние регистры КПДП и управляющая обменом по шине D (7-0); блок управления СU, содержащий регистры режима и состояния КПДП и обеспечивающий последовательность операций, необходимую для организации режима прямого доступа к памяти; блок управления приоритетами РСU, обеспечивающий определенный порядок обслуживания запросов внешних устройств; четыре канала прямого доступа СН0 - СН3, каждый из которых содержит регистр адреса ячейки памяти, с которой производится обмен, и счетчик циклов обмена, два старших разряда которого отведены для задания операций обмена.
При подключении КПДП к шинам микро ЭВМ младший байт адреса выдается по линиям А (3-0) и А (7-4), а старший байт через шину D (7-0), поэтому КПДП обычно подключается вместе с буферным регистром.
BD CH0 CH1 CH2 CH3 PCU DRQ0 DACK0 DRQ1 DACK1 DRQ2 DACK2 DRQ3 DACK3 RWCU CU D
(7-0) I/0R I/OW CLK RESET A
(3-0) CS A
(7-4) READY HRQ HLDA MEMR MEMW AEN ADSTB TC MARK
UCC GND
Рисунок 17 – Структурная схема контроллера прямого доступа к памяти
КР580ВТ57
Режим расширенной записи EW=1 увеличивает за счет смещения переднего фронта длительность сигналов I/OW и MEMW, генерируемых КПДП. Это позволяет ВУ, формирующему сигнал READY по фронту сигнала записи, уменьшить время охлаждения и увеличить скорость обмена.
В режиме автозагрузки AL=1 может работать только второй канал, использую содержимое своих внутренних регистров и внутренних регистров третьего канала.
Схема подключения контроллера прямого доступа к памяти к системной шине с использованием буферного регистра К589ИР12 показана на рисунке 18.
КР580ВТ57 AB CB DB
К589ИР12
Рисунок 18 – Схема подключения контроллера прямого доступа к памяти к
системной шине с использованием буферного регистра
К589ИР12
Таблица 5 — Описание выводов контроллера прямого доступа к памяти
КР580ВТ57
Обозначение вывода |
Номер контакта |
Назначение вывода |
1 |
2 |
3 |
D (7-0) |
21;22;23;26; 27;28;29;30 |
Входы/выходы данных для обмена с МП |
I/OR |
1 |
Чтение ввода/вывода — двунаправленный тристабильный вход/выход; входной сигнал L-уровня разрешает чтение информации из КПДП в МП; выходной сигнал L-уровня разрешает чтение из ВУ |
I/OW |
2 |
Запись ввода/вывода — двунаправленный тристабильный вход/выход; входной сигнал L-уровня разрешает программирование КПДП: выходной сигнал L-уровня разрешает запись в ВУ |
CLK |
12 |
Вход тактовых импульсов |
Продолжение таблицы 5
1 |
2 |
3 |
RESET |
13 |
Вход установки 0 |
A (3-0) |
35;34;33;32 |
Двунаправленные тристабильные адресные выводы |
CS |
11 |
Выбор микросхемы |
A (7-4) |
40;39;38;37 |
Тристабильные адресные выходы |
READY |
6 |
Готовность — входной сигнал Н-уровня указывает на готовность к обмену |
AEN |
9 |
Разрешение адреса - сигнал Н-уровня используется для блокировки некоторых шин адреса и данных |
ADSTB |
8 |
Строб адреса - сигнал Н-уровня указывает на нахождение на шине D (7-0) старшего байта адреса ЗУ |
TC |
36 |
Конец счета - сигнал Н-уровня определяет выполнение последнего цикла передачи блока данных |
MARK |
5 |
Маркер - сигнал Н-уровня указывает, что до конца передаваемого блока необходимо выполнить число циклов обмена, кратное 128 |
DRQ3-DRQ0 |
16;17;18;19 |
Запросы прямого доступа к памяти каналов СН3 - СН0; сигнал Н-уровня указывает на запрос от ВУ |
DACK3-DACK0 |
15;14;24;25 |
Подтверждение запросов прямого доступа к памяти каналов СН3 - СН0; сигнал L-уровня указывает на разрешение обмена |
UСС |
31 |
Напряжение питания ( + 5 В) |
GND |
20 |
Напряжение питания (0 В) |
Электрические параметры микросхемы КР580ВТ57 при температуре окружающей среды 25±10°С:
- выходное напряжение логического нуля UOL, В менее 0,45;
- выходное напряжение логической единицы UOH, В более 2,4;
- ток потребления IСС, мА менее 100;
- ток утечки на входах IIL, мкА менее 1,5;
- ток утечки на управляемых выводах IОL, мкА 1,5.
4.2 Программируемый контроллер прерываний К1810ВН59А
Микропроцессорная БИС имеет простую и изменяющуюся систему прерываний. Прерывания могут быть вызваны внешними устройствами, выполнением соответствующих команд, а также инициированы самой МП БИС (внутренние прерывания). Существует 256 различных типов прерываний.
Для подачи прерываний в МП БИС имеются два входа:
INTR – Interrupt Reguest и NMI – Non Masking Interrupt (рисунок 19).
Рисунок 19 – Возможные способы формирования прерываний в
МП К1810ВМ6
Вход INT обычно используется для подключения программируемого блока приоритетных прерываний (БПП). По функциональному назначению микросхема БПП аналогична схеме КР580ИК59 и является дальнейшей ее модификацией. Режимы работы БПП могут быть заданы программно. Основные задачи БПП – получение запросов прерывания от различных внешних устройств, определение сигнала с высшим приоритетом, формирование запроса прерывания на входе МП БИС и сообщение номера текущего обслуживаемого внешнего устройства. Прерывания по входу INT могут быть маскированы путем записи «0» или «1» в разряд 1 флагового регистра МП БИС.
Микропроцессорная БИС реагирует на поступление запроса прерывания по входу INTR последовательным выполнением двух машинных циклов обслуживания прерывания: первый указывает БПП, что запрос прерывания был воспринят, и начинает обслуживаться; на втором БПП выдает на МД байт данных, указывающий тип прерывания (0–255). При работе МП БИС с максимальной конфигурацией системы на интервале двух циклов INTA на выходе LOCK формируется сигнал, запрещающий другим процессорам системы пользоваться магистралями.
Внешние устройства могут подавать запросы прерывания на второй вход NMI МП БИС. На этом входе запрос воспринимается и записывается в МП БИС по фронту поступающего импульса, не может быть маскирован и имеет высший приоритет по отношению к запросам, поступающим на вход INTR. Обычно вход NMI используют для указания МП БИС о каких-либо сбоях в системе (сбоях в источнике питания, ошибках в памяти). При определении наличия сигнала на входе NMl МП БИС нет необходимости получать код для инициализации процесса обслуживания прерывания и соответственно она не формирует два машинных цикла INTA в ответ на запрос по входу NMI.
Внутренние прерывания формируются за счет выполнения МП БИС команды прерывания (тип команды зависит от источника прерывания).
При установке флага переполнения О=1 в результате выполнения какой-либо команды программы формируется команда прерывания – INTO (прерывание по переполнению).
Микропроцессорная БИС формирует прерывание сразу же после выполнения команд DIV или IDIV, если частное от деления больше, чем разрядность используемых регистров.
При установке флага Т=1 МП БИС автоматически формирует прерывание, которое воздействует сразу после выполнения любой текущей команды. Этот тип прерывания называют одношаговым или первым типом, и он является мощным средством при отладке программ. При выполнении одношагового типа прерывания МП БИС производит обычную последовательность операций, а именно записывает в стек флаги МП БИС, содержимое регистров CS и IP. В дополнение к этому очищаются флаги I и Т. В регистры CS и IP записываются соответственно из адресов 00006, 00007 и 00004, 00005 новые значения базового адреса сегмента и смещения для передачи управления на соответствующую подпрограмму обслуживания прерывания. В качестве такой подпрограммы может быть использована подпрограмма выдачи результата выполнения программы на печать, дисплей и т. д. По окончании выполнения подпрограммы после получения команды IRET (возврат из подпрограммы) из стека извлекаются и записываются в МП БИС флаги и содержимое регистров IP и СР. Из приведенных пояснений ясно, что при выполнении одношагового типа прерывания МП БИС обслуживает прерывания обычным способом. Однако обеспечение вывода результатов выполнения отдельных блоков в программе или даже отдельных команд с целью их последующего анализа путем задания в нужном месте программ режима одношаговых прерываний является удобным средством при исследовании работы программ.
Типы внутренних прерываний имеют ряд общих свойств:
1) код прерывания сообщается МП БИС перед командой или включен в команду прерывания;
2) на выходе МП БИС не формируются сигналы INTA;
3) за исключением одношагового типа, внутренние прерывания не могут быть программно отключены;
4) за исключением одношагового типа, любой из внутренних прерываний имеет более высокий приоритет по отношению к внешним прерываниям.
Любой из 256 возможных типов прерывания характеризуется вектором прерывания. Векторы прерывания занимают 1К байт адресного пространства. На рисунке 19 показано распределение начал векторов прерывания по адресам памяти. Как видно из рисунка, каждый вектор занимает четыре ячейки памяти, при этом два младших адреса в векторе используются для записи смещения в сегменте, а два старших — для записи базового адреса сегмента.
Рисунок 20 – Распределение векторов прерываний в памяти микроЭВМ
Формирование адреса передачи управления на соответствующую подпрограмму обслуживания прерывания в BIU происходит так же, как и при обращении к любой ячейке памяти, а именно: содержимое двух младших адресов вектора прерывания записывается в регистр IP, coдержимое старших двух адресов записывается в регистр CS. После этого содержимое CS смещается на четыре разряда влево и откладывается с содержимым IP. Полученное 20-разрядное число определяет адрес начала подпрограммы прерывания.
В данной микропроцессорной системе используется контроллер прерываний К1810ВН59А. Структурная схема изображена на рисунке 21.
Рисунок 21 – Структурная схема контроллера прерываний К1810ВН59А
Включение контроллера прерываний в систему показано на рисунке 22.
Рисунок 22 – Включение контроллера прерываний в МПС
Контроллер принимает запросы от внешних устройств, определяет, какой из незамаскированных запросов имеет наивысший приоритет, сравнивает его с приоритетом текущей программы и при соответствующих условиях выдает запрос прерывания INT для МП. После подтверждения запроса МП должен получить от котроллера информацию, которая укажет на подпрограмму, соответствующую данному ВУ.
4.3 Аналого-цифровой преобразователь К572ПВ3
Широкое распространение однобайтных процессоров вызвало разработку восьмиразрядных аналого-цифровых преобразователей. В разрабатываемой МПС применим АЦП типа К572ПВ3.
Схема включения в МПС АЦП К572ПВ3 показана на рисунке 23.
Время преобразования этого АЦП равно 7,5 мкс, ток потребления от одного источника питания 5 В составляет всего лишь 5 мА. АЦП имеет два одинаковых входа AI1 и AI2, соединённых внутренними резисторами с одним входом компаратора. На этот же вход компаратора подаётся выходной ток цифро-аналогового преобразователя, управляемого регистром последовательного приближения. Таким образом, АЦП обеспечивает преобразование в код суммы напряжений, подаваемых на входы AI1 и AI2.
Рисунок 23 – Аналого-цифровой преобразователь К572ПВ3
При практическом использовании этого АЦП на вход AI1 подают входное напряжение Uвх, а на вход AI2 – напряжение, с помощью которого производят регулировку нуля АЦП. Управление работой АЦП К572ПВ3 осуществляется с помощью сигналов, подаваемых на входы (выбор кристалла) и(чтение). Переход 0/1 на входезапускает схему сброса АЦП, потенциал 0 на входеосуществляет запуск преобразователя при условии, что предварительно был осуществлён его сброс. Таким образом, если=0, то переход 0/1 на входеобусловит сброс и запуск преобразователя. Если же=1, то этот переход вызывает только сброс, а запуск произойдет по спаду 1/0 на входе. Выход BU (АЦП занят) принимает потенциал «нуль» тогда, когда осуществляется процесс преобразования. Данные на кодовом выходе N существуют при сочетании сигналов=0,=0,=1, если же этого сочетания нет, если же этого сочетания нет, то выход находится в высокоимпендансном состоянии.
4.4 Программируемый параллельный интерфейс КР580ВВ79
Микросхема КР580ВВ79 представляет собой программируемое устройство, используемое для ввода/вывода параллельной информации. Схема позволяет осуществлять обмен 8-разрядными данными по трем каналам: А, В и С. Направление обмена и режим работы для каждого канала задается программно. Каналы служат для передачи, как данных, так и управляющих сигналов.
В состав БИС входят: двунаправленный 8-разрядный буфер данных ВD, связывающий программируемый параллельный интерфейс с системной шиной данных, блок управления записью/чтением RWCU, обеспечивающий управление внешними и внутренними передачами данных, управляющих слов и информации о состоянии программируемого параллельного интерфейса, три 8-разрядных канала ввода/вывода РОRТ А, В и С для обмена информацией с внешними устройствами, схема управления группой А СUA, вырабатывающая сигналы управления каналом А и старшими разрядами канала С РС (7-4), схема управления группой В СUВ, вырабатывающая сигналы управления каналом В и младшими разрядами канала С РС (3-0).
Структурная схема программируемого параллельного интерфейса КР580ВВ79 представлена на рисунке 24.
PA
(7-0) CUA PORT A
D
(7-0) PC
(7-4)
PORT C BD
PC
(3-0) PORT C RD WR
RWCU A
1
PB
(7-0) A
0
PORT B CUB RESET
CS
UCC
GND
Рисунок 24 - Структурная схема программируемого параллельного
интерфейса КР580ВВ79
Назначения входных, выходных и управляющих сигналов приведены в таблице 6. Сигналы управления работой программируемого параллельного интерфейса подаются на блок К/УС11 и вместе с адресными входами А0, А1 задают вид операции, выполняемой БИС.
Основные электрические параметры микросхемы КР580ВВ79:
- выходное напряжение логического нуля UOL, В менее 0,4;
- выходное напряжение логической единицы UOH, В более 2,4;
- ток потребления от источника питания ICC, мА менее 60;
- ток утечки каналов А, В, С, D при невыбранном
режиме IIOZ, мкА более 100;
- ток утечки на управляющих входах IIL, мкА 10.
Режимы работы каждого из каналов ППИ программируется с помощью управляющего сигнала. Управляющее слово может задать один из трех режимов основной режим ввода/вывода (режим 0), стробируемый ввод/вывод (режим 1) и режим двунаправленной передачи информации (режим 2).Одним управляющим словом можно установить различные режимы работы для каждого из каналов.
Канал А может работать в любом из трех режимов, канал B в режиме 0 и режиме 1. Канал С может быть использован для передачи данных только в режиме 0, а в остальных режимах он служит для передачи управляющих сигналов , сопровождающих процесс обмена по каналам А и B.
Режим 0 применяется при синхронном обмене или при программной организации асинхронного обмена. Микросхема может рассматриваться в этом режиме как устройство, состоящих из четырех портов, независимо настраиваемых на ввод или вывод. Вывод информации осуществляется по команде OUT микропроцессора с фиксацией выводимой информации в регистрах каналов, а ввод - по команде IN, без запоминания информации.
Режим 1 обеспечивает стробируемый однонаправленный обмен информации с внешним устройством. Передача данных производится по канал А и В, а линии канал С управляют передачей. Работу канала в режиме 1 сопровождают три управляющих сигнала.
Таблица 6 — Описание выводов программируемого параллельного
интерфейса КР580ВВ79
-
Обозначение вывода
Номер
контакта
Назначение вывода
D(7-0)
27; 28; 29; 30;
31; 32; 33; 34
Вход/выход данных
RD
5
Чтение; L-уровень сигнала разрешает считывание информации из регистра, адресуемого по входам А0, А1 на шину D(7-0)
WR
36
Запись; L-уровень сигнала разрешает запись информации с шипы D(7—0) в регистр ППИ, адресуемый по входам А0, А1
АО, А1
9; 8
Входы для адресации внутренних регистров ППИ
RESET
35
Сброс; H-уровень сигнала обнуляет регистр управляющего слова и устанавливает все порты в режим ввода
CS
6
Выбор микросхемы; L-уровень сигнала подключает ППИ к системной шине
РА(7-0)
37; 38; 39; 40;
1; 2; 3; 4
Вход/выход канала А
РВ(7-0)
15; 24; 23; 22;
21; 20;19; 18
Вход/выход канала В
РС(7-0)
10; 11; 12; 13:
17; 16; 15; 14
Вход/выход канала С
Ucc
26
Напряжение питания ( + 5 В)
GND
7
Напряжение питания (0 В)
В режиме 1 для ввода информации используют следующие управляющие сигналы: строб приема STB - входной сигнал, формируемый внешним устройством, указывает на готовность ВУ к вводу информации; подтверждение приема IBF - выходной сигнал ППИ, сообщающий ВУ об окончании приема данных в канал; запрос прерывания INTER - выходной сигнал ППИ, информирующий МП о завершении приема информации в канале.
Для вывода информации в режиме 1 используются следующие управляющие сигналы: строб записи OBF - выходной сигнал, указывающий внешнему устройству о готовности к выводу, формируется по фронту WR; подтверждение записи ACK - входной сигнал от внешнего устройства, подтверждающий прием информации из ППИ; запрос прерывания INTR - выходной сигнал ППИ, информирующий МП о завершении операции вывода информации.
С
AB
CB
DB I/OR I/OW RESET
A0
A1 CS D (7-0) RD WR RESET
КР580ВВ79
PA
(7-0) PC (7-4) PC (3-0) PB (7-0)
Рисунок 25 – Схема сопряжения программируемого параллельного
интерфейса КР580ВВ79 со стандартной системной шиной
Режим два обеспечивает двунаправленную передачу информации по каналу А к внешнему устройству и обратно. Процесс обмена сопровождают пять управляющих сигналов, подаваемых по линиям PC7 - PC3. Оставшиеся 11 интерфейсных линий могут настраиваться на режим 0 или режим 1.Управление установкой внутреннего сигнала INTE для операции ввода осуществляется по линии PC4, а для операции вывода по линии PC6.
В режимах 1 и 2 возможно проведение контроля за состоянием работы внешнего устройства и ППИ .Контроль осуществляется чтением слова - состояния канала С по команде OUT.
4.5 Программируемый таймер К1810ВИ54
Программируемый таймер (ПТ) К1810ВИ54 предназначен для генерации времязадающих функций, программно-управляемых временных задержек с возможностью программного контроля их выполнения. Программируемые таймеры применяются в МПС, выполненных на базе МПК БИС К580, К1810, К1821, используемых в задачах управления и измерения в реальном масштабе времени с тактовой частотой до 8 МГц. Конструктивно эти ПТ совместимы с ПТ типа К580ВИ53, отличаются от них повышенным быстродействием и расширенными функциональными возможностями.
Рисунок 26 – Структура схема ПТ К1810ВИ54
Программируемый таймер К1810ВИ54 включает три независимых канала, каждый из которых может быть запрограммирован на работу в одном из шести режимов для двоичного или двоично-десятичного счета. Структурная схема ПТ показана на рисунке 26, его условное графическое обозначение – на рисунке 27.
Рисунок 27 – Условно-графическое обозначение ПТ К1810ВИ54
Таблица 7 – Назначение выводов ПТ К1810ВИ54
Обозначение вывода |
Назначение |
1 |
2 |
– выборка кристалла |
Сигнал управляет входным буфером BD. При =0 разрешается работа буфера. |
– чтение |
Сигнал =0 ориентирует входной буфер BD на вывод. ПТ выдает информацию в ЦП. |
–запись |
Сигнал =0 ориентирует входной буфер BD на ввод. ПТ принимает информацию от ЦП. |
А0, А1 – адресные входы |
По ним осуществляется адресация к одному из каналов: А0=А1=00 – адрес канала 0; А0=А1=01 – адрес канала 1; А0=А1=10 – адрес канала 2; А0=А1=11 – признак загрузки управляющего слова или команд. |
CLK2–CLK0 – входы тактовых сигналов для управления счетчиком/таймером |
Срез сигнала на входе CLK приводит к уменьшению содержимого счетчика/таймера СЕ на единицу. |
Продолжение таблицы 7
1 |
2 |
GATA2–GATA0 – входы разрешения счета. |
При GATA=l разрешается выполнение функций; для некоторых режимов работы разрешается поступление тактовых сигналов на вход счетчика/таймера, для других (импульсный генератор и генератор меандра) открывается выходной буфер OUT. |
OUT2–OUT0 – выходы счетчика/таймера. |
|
4.6 Организация пульта управления МПС
В обслуживаемых МПС управления, требующих введения оперативной информации и отображения, возникает необходимость разработки аппаратурной и программной частей интерфейса МП для связи с оператором. В качестве устройств ввода/вывода информации наиболее широкое распространение в микропроцессорных системах получили цифровые, алфавитно-цифровые и специальные клавиатуры, а также линейные дисплеи на семисегментных и матричных светодиодных индикаторах, алфавитно-цифровые и графические дисплеи на газоразрядных, жидкокристаллических и плазменных панелях.
При проектировании интерфейса ввода/вывода МПС прежде всего возникает необходимость решения задачи оптимального (по ряду критериев) распределения функций между аппаратурными и программными средствами интерфейса. При этом в самом общем случае необходимо исходить из того, что использование специализированных интерфейсных БИС упрощает разработку и обеспечивает высокое быстродействие системы, но сопряжено с увеличением стоимости, объема и потребляемой мощности МПС. В процессе проектирования МПС решение о выборе того или иного варианта реализации интерфейса системы принимается в зависимости от тиражности изделия, ограничений по стоимости, объему, потребляемой мощности и быстродействию.
4.6.1 Сопряжение с клавиатурой. Широкое распространение получили дешевые некодирующие (матричные) клавиатуры, которые представляют собой простую матрицу двоичных переключателей (требуемой размерности), включенных на пересечении строк и колонок матрицы. Идентификация (кодирование) нажатой клавиши в таких клавиатурах выполняется программой.
Микросхема КР580ВВ79 предназначена для параллельной передачи информации между микропроцессором и периферийными устройствами и содержит три 8-разрядных канала ввода/вывода. Микросхема КР580ВВ79 является матрицей клавиатуры размерностью 4x5, включающая 16 цифровых клавиш (0 – F) и 4 управляющих. Способ подключения клавиатуры к МК представлен на рисунке 28.
Линии порта 1 используются для сканирования, а линии порта 2 – для опроса матрицы клавиш. Каждая клавиша в такой матрице имеет свой номер, соответствующий ее местоположению. На цифровые клавиши можно нанести обозначения, соответствующие их кодам (от 0 до F). Коды управляющих клавиш больше числа 15. Диоды обеспечивают защиту от замыкания между собой сканирующих линий в случае одновременно нажатия более чем одной клавиши.
4x5
Рисунок 28 – Схема подключения клавиатуры К580ВВ79 к МП
Процедура ввода кода нажатой клавиши состоит из последовательности частных процедур: сканирования матрицы клавиш, устранения дребезга контактов, ожидание освобождения клавиши и идентификации кода нажатой клавиши. Для некоторого типа клавиатур может отсутствовать процедура устранения дребезга контактов (клавиатуры на основе герконов). Процедуру сканирования иногда бывает удобно совместить с процедурой идентификации.
Отечественной промышленностью выпускается специализированная БИС контроллера клавиатуры К580ВК79, условное графическое обозначение которой показана на рисунке 29.
С использованием этой БИС путем разработки соответствующего программного обеспечения можно создать клавиатуру любой требуемой размерности. Контроллер клавиатуры взаимодействует с МП в режиме прерывания, имеет аппаратурные средства подавления «дребезга» клавиатуры и внутренний четырехразрядный счетчик сканирования горизонтальных линий матрицы клавиатуры, что позволяет контроллеру при помощи внешнего дешифратора сканировать клавиатуру с размерами до 16 строк.
Рисунок 29 – Условно-графическое обозначение БИС К580ВК79
Кроме того, данная БИС реализует процедуры вывода информации на линейный дисплей на основе семисегментных светодиодных индикаторов с целью визуального контроля вводимой информации и отображения оперативной информации. Настройка осуществляется программным путем. Для этих целей в составе контроллера имеется схема управления отображением и внутреннее ОЗУ емкостью 16 байт.
4.6.2 Сопряжение с дисплеем. Самым дешевым устройством вывода информации из МПС является так называемый линейный дисплей на семисегментных светодиодных индикаторах (ССИ), которые выполнены в виде отдельных корпусов ИС и могут монтироваться в линию с числом знакомест в соответствии с требованиями, предъявляемыми к МПС. Каждый из ССИ имеет семь светоизлучающих сегментов, комбинация которых при засвечивании образует число или букву, внешний вид которой показан на рисунке 30.
Рисунок 30 – Светоизлучающие сегменты ССИ
Несмотря на ограниченное число светоизлучающих сегментов, ССИ способен отобразить значительное число специальных символов, которые требуются в данном конкретном применении МПС.
В том случае, если в МПС надо отображать выводимую информацию только в шестнадцатеричных кодах, можно воспользоваться стандартными СИС преобразователей кодов (К514ИД1, К514ИД2, К155ИД8, К155ИД9). В том случае, если в МПС требуется отображение специальных знаков, вместо стандартных СИС необходимо использовать специально разработанные логические схемы на основе ИС (или ППЗУ). Широкому применению в простых управляющих МПС ССИ типов АЛС314А и АЛС324Б способствуют не только их дешевизна и простота монтажа, но и их электрическая совместимость с элементами серии ТТЛ.
Рисунок 31 – Устройство светодиодного индикатора
Использование контроллера клавиатуры/дисплея (ККД) КР580ВВ79 позволяет разгрузить МП от рутинных операций опроса клавиатуры и поддержания изображения на однострочном дисплее.
Схема подключения контроллера клавиатуры/дисплея к МП показана на рисунке 26. При таком подключении контроллер входит в адресное пространство ВПД. Линия Р1.0 соединяется с линией А0 контроллера и должна быть установлена/сброшена перед обращением МК к контроллеру в зависимости от типа обращения (управление/данные). Вход выборки контроллера соединен с общей точкой, и, таким образом, контроллер всегда готов к обмену с МК. Выход сигнала запроса прерывания (IRQ) контроллера соединен с линией Р1.1 МК и может быть программно опрошен для определения факта нажатия клавиши.
Шина данных и линии чтения/записи контроллера соединяются на прямую с соответствующими линиями МК51. На вход CLK подается сигнал частотой примерно 2 МГц с выхода ALE. Контроллер клавиатуры/дисплея обеспечивает ввод в МК кода нажатой клавиши (одной из 20) и поддерживает изображение на восьмипозиционном построчном дисплее. Для сканирования клавиатуры и дисплея дополнительно используется инвертирующий дешифратор на восемь диодов. Диоды на выходе дешифратора необходимы для защиты от короткого замыкания между собой его выходов при одновременном нажатии нескольких клавиш.
сброс
Рисунок 32 – Схема подключения ККД КР580ВВ79 к МП
4.7 Уточненная структурная схема микропроцессорной системы
На основании анализа устройств, входящих в разрабатываемую микропроцессорную систему, а также на основании выбранного способа подключения данных устройств к магистралям представим микропроцессорную систему, которая включает в себя следующие элементы: микропроцессор К1810ВМ86, БИС ОЗУ К565РУ6 и БИС ПЗУ К541РЕ1, генератор тактовых импульсов К1810ГФ84, буферный регистр КР580ИР82, шинные формирователи КР580ВА86 и КР580ВК28, программируемый параллельный интерфейс КР580ВВ79, программируемый таймер К1810ВИ54, контроллер прямого доступа к памяти КР580ВТ57, программируемый контроллер прерываний К1810ВН59А, программируемый контроллер клавиатуры и индикации КР580ВВ79.
Генератор
тактовых
импульсов
К1810ГФ84
Микропроцессор
К1810ВМ86
ОЗУ
К565РУ6
ПЗУ
К541РЕ1
Шинный
формирователь
КР580ВК28
Буферный
регистр
КР580ИР82
Шинный
формирователь
КР580ВА86
AB
CB
DB
Программируемый
параллельный
интерфейс
КР580ВВ79
Программируемый
таймер
К1810ВИ54
Программируемый
контроллер
прерываний
К1810ВН59А
Программируемый
контроллер
клавиатуры и
индикации
КР580ВВ79
АЦП
К572ПВ3
Рисунок 33 - Расширенная схема микропроцессорной системы
4.8 Функциональная схема микропроцессорной системы
Функциональная схема микропроцессорной системы представляет собой принципиальную схему всей системы с учетом всех соединений между всеми устройствами системы. Данная схема представлена в приложении А.
5 РАЗРАБОТКА АЛГОРИТМА РАБОТЫ МИКРОПРОЦЕССОРНОЙ
СИСТЕМЫ
Обработка информации от цифровых датчиков и выдача управляющего воздействия y1 производится путем ввода значений x1, x2, x3, x4 и вычисления булевой функции f1(x1, x2, x3, x4)= .
При единичном значении f1 вырабатывается управляющий сигнал y1=1 длительностью t1=80мкс.
При обработке информации с аналоговых датчиков ПМ принимает коды NU1, NU2 с выходов АЦП и код константы К с регистра пульта управления. Далее вычисляется значение функции NU=f2(NU1,NU2, К)= NU1-NU2-К и сравнивается с константой Q, хранящейся в ПЗУ. В зависимости от результатов сравнения вырабатывается (аналогично y1) один из двух двоичных управляющих сигналов y2 или y3 заданной длительности по следующему правилу: если NU<Q, то выдать y2 длительностью t2=75 мкс, иначе выдать y3 длительностью t3=75 мкс.
Далее формируется управляющее воздействие Y4, для чего с АЦП вводится значение NU3 и производится вычисление по формуле:
Значение Y4 в виде 8-разрядного кода выдается на вход ЦАП.
Все двоичные переменные и константы, участвующие в вычислениях: NU1, NU2, NU3, К, Q, A0, A1, Y4 рассматриваются как целые без знака.
После выдачи всех управляющих воздействий проверяется состояние тумблера «СТОП» на пульте управления. Если СТОП=0, цикл управления начинается с начала, иначе выполняется процедура останова системы, включающая следующие действия: формируется сигнал установки системы в исходное состояние путем подачи на линию начальной установки интерфейса двух прямоугольных импульсов длительностью 30 мкс интервалом 30 мкс, выполняется команда процессора СТОП.
Блок-схема заданного цикла управления разбита на две части (рисунок 34 и 35), общая блок-схема представлена на рисунке 36.
Рисунок 34 – Цикл 1 управляющей программы
В общем виде управляющая программа состоит из двух циклов, по результатам выполнения которых осуществляется выдача управляющих воздействий на индикацию. Управляющая программа выполняется до тех пор пока на пульте управления не будет включен тумблер «СТОП».
Цикл 1 управляющей программы заключается в вводе в центральный процессор значений сигналов из цифровых датчиков, вычислении булевой функции . Если по результатам вычисления получилось, что управляющий сигнал стал равен 1, то выдается управляющий сигнал длительностьюt1=80 мкс. Если же управляющий сигнал принял значение 0, то булевая функция вновь.
Цикл 2 управляющей программы заключается в воде в центральный процессор двоичных кодов с выходов АЦП и констант К и Q, вычислении значения функции f2(NU1, NU2, К), по выражению NU= NU1-NU2-К. Если по результатам вычисления получилось, что NU<Q, то вырабатывается управляющий сигнал длительность t2=75 мкс, если же получилось что NU>Q, то вырабатывается управляющий сигнал, длительностью t3=75мкс. Далее осуществляется ввод в центральный процессор двоичного кода с выхода АЦП NU3 и производиться вычисление функции .
Цикл 2 изображен на рисунке 35.
Рисунок 35 – Цикл 2 управляющей программы
Рисунок 36 – Общая блок-схема программы
Общая блок - схема программы заключается: сначала выполняется первый цикл управляющей программы, затем осуществляется выполнение второго цикла управляющей программы. После этого осуществляется выдача управляющих воздействий по результатам двух циклов программы на светодиодную индикацию. Затем осуществляется проверка состояния тумблера «СТОП» на пульте управления. Если условие не выполняется (сигнал СТОП = 1), то осуществляется переход в начало программы. В противном случае происходит останов.
6 РЕАЛИЗАЦИЯ УСТРОЙСТВА ПРОЦЕССОРА ИНДИКАТОРА ШИН
Как с технической, так и с экономической стороны индикатор шин удовлетворяет большинству критериев идеального индикатора шин: он простой, высоко-интегрированный, с малыми габаритами. Многие параметры ИШ программно-управляемые, что позволяет заложить в устройство новые возможности. Все это делает индикаторы очень перспективными приборами.
Индикатор шин применяют при настройке и ремонте аппаратных устройств на базе МП К1810ВМ86. Индикатор состоит из микропульта, платы процессора и сорокаштырьковой вилки.
При начальной настройке устройства, когда нет готовых программ в ПЗУ, с помощью подстановки данных можно запрограммировать предусмотренные на плате ВУ и проверить ОЗУ.
Режим подстановки данных позволяет использовать индикатор шин как оценочное устройство при работе с МП К1810ВМ86.
Технические характеристики индикатора шин определяются характеристиками применяемого микропроцессора. Таким образом, индикатор обладает следующими параметрами:
- допустимый диапазон температур -10° С до + 70° С;
- напряжение (питание индикатора шин осуществляется через
соответствующие контакты вилки) + 5 В;
- максимальная тактовая частота 5МГц;
- максимальная потребляемая мощность 15Вт.
Индикатор шин предназначен для аппаратной настройки устройств на основе МП К1810ВМ86.
Вилка устанавливается в розетку МП настраиваемого устройства. Питание индикатора осуществляется через соответствующие контакты вилки. Плата процессора содержит эмулирующий МП К1810ВМ86, который всеми выводами, за исключением RDY, подключен через плоский кабель длиной 50 мм к вилке индикатора шин. Сигнал RDY, поступающий с платы пользователя, «перехватывается» индикатором для обеспечения пошагового режима работы.
Рисунок 37 - Общая структура Процессора индикатора шин
Микропульт соединен с платой процессора пятипроводным кабелем длиной 500 мм. С него в плату процессора поступают в последовательном коде соответствующие команды, а с платы также в последовательном коде выдается в микропульт информация о состоянии шины адреса, данных и управляющих сигналов эмулирующего МП.
Микропульт имеет 10-разрядный цифровой дисплей для отображения адреса, данных и управляющих сигналов МП и четыре клавиши управления работой индикатора шин.
Клавиша «Сброс» предназначена для физического сброса микропульта и платы процессора.
Клавиши «-» и «+» необходимы для перемещения запятой по разрядам цифрового дисплея влево и вправо соответственно, а также для увеличения и уменьшения шестнадцатеричной цифры соответствующего индикатора. Кратковременное нажатие на клавишу «-» или «+» (менее 1/3 с) изменяет значение шестнадцатеричной цифры, а более длительное - перемещает запятую.
Клавиша «Пуск» служит для запуска индикатора шин в работу в выбранном режиме. По сбросу индикатор переходит в исходное состояние и на его правом крайнем индикаторе появляется символ выбранного режима. По нажатию клавиши «-» или «+» последовательно перебираются все возможные режимы работы индикатора шин. После выбора соответствующего режима можно нажать клавишу «Пуск» и перевести индикатор на работу в этом режиме.
Среди возможных режимов работы индикатора шин: Т - пошаговый, G - автоматический, q - полуавтоматический с остановом на контрольной точке, Р - установки контрольной точки, А - перехода по заданному адресу, Н - полуавтоматический с остановом на контрольной точке и подстановкой данных, U - пошаговый с подстановкой данных.
Опрос клавиатуры, управление индикацией и связь с платой процессора по двухпроводной линии осуществляет однокристальная ЭВМ (ОЭВМ) К1810ВМ86 под управлением монитора микропульта «зашитого» в РПЗУ К573РФ2.
Выдачу всех необходимых управляющих сигналов на плату процессора и связь с микропультом по двухпроводной линии обеспечивает ОЭВМ под управлением монитора процессорной платы.
Регистры D12 и D14 предназначены для сохранения адреса по сигналу ALE МП и данных по сигналу ALE35 ОЭВМ, регистр D17 - для сбора информации с управляющих выводов МП, регистры D19 и D20 - для управляющих сигналов в максимальном режиме. На триггере D16 собрана схема управления готовностью в пошаговом режиме.
При установке эмулирующего МП К1810ВМ86 выключатель SA2 необходимо перевести в соответствующее положение. Индикатор шин удобно применять при настройке и ремонте устройств на базе МП К1810ВМ86, прогоняя «зашитую» в РПЗУ программу в автоматическом, пошаговом или полуавтоматическом режиме с остановом на контрольной точке.
Если неисправность заключается в «залипании» отдельных сигналов адреса, данных или управляющих сигналов, то ее удается локализировать за первые же несколько шагов в пошаговом режиме.
Описывая алгоритм работы индикатора шин видно, что его удобно применять при настройке и ремонте устройств на базе МП К1810ВМ86, прогоняя «зашитую» в РПЗУ программу в автоматическом, пошаговом или полуавтоматическом режиме с остановом на контрольной точке. Управляющая команда поступает из микропульта на плату, затем подается на настраиваемое устройство. Затем идет обратная передача информации от настраиваемого устройства и отображается на дисплее микропульта.
Принципиальная электрическая схема Процессора индикатора шин представлена в приложении А.
ЗАКЛЮЧЕНИЕ