- •Раздел 3. Микропроцессорная техника
- •3.1. Общие сведения о микропроцессорных средствах.
- •§ 3.1.1. Большие интегральные схемы
- •3.1.2. Микропроцессоры. Основные определения
- •3.2. Понятия о преобразовании информации и теории алгоритмов
- •3.2.1. Понятия о преобразовании информации
- •3.2.2 Особенности систем обработки информации на основе бис
- •3.3 Аналоговые и цифровые микроэлектронные устройства
- •3.3.1. Основные понятия. Логические операции
- •§ 3.3.2. Аналоговые интегральные микросхемы
- •§ 3.3.3. Цифровые микроэлектронные устройства
- •3.4. Архитектура микропроцессора
- •3.4.1. Понятие об архитектуре микропроцессора
- •3.4.2. Организация процесса обработки информации
- •3.4.3. Организация процесса управления
- •3.4.4. Организация шин в микропроцессорах
- •3.5. Организация интерфейса в микропроцессорах
- •3.5.1. Понятие об интерфейсе
- •3.5.2. Порты ввода-вывода
- •3.5.3. Координация взаимодействия микропроцессора с внешними устройствами
- •3..5.4. Организация передачи данных с использованием систем прерываний
- •3.5.5. Прямой доступ к памяти
- •3.5.6. Организация связи микропроцессора с памятью
- •3.5.7. Аналого-цифровые и цифро-аналоговые преобразователи
- •3.5.8. Практическое применение микропроцессоров.
- •3.5.9. Системы управления технологическими процессами
3.5.3. Координация взаимодействия микропроцессора с внешними устройствами
В качестве внешних устройств могут быть терминалы, измерительные приборы, контроллеры станков и даже другие микропроцессоры. Большинство внешних устройств работает асинхронно по отношению к микропроцессору.
Например, терминал, состоящий из клавиатуры и печатающего устройства, создает выходные данные при нажатии кнопки человеком и воспринимает данные со скоростью, определяемой конструкцией печатающего механизма. Поэтому может случиться, что порт ввода готов для передачи данных, а данные не успели поступить от внешнего устройства. Аналогично и при выводе информации с шин данных, когда предыдущие данные еще не восприняты внешним устройством, а порт вывода выдает новые данные.
Таким образом, взаимодействие между внешним устройством и микропроцессором должно происходить по определенным правилам, т. е. координироваться.
Одним из методов организации ввода — вывода является программный запуск действия в устройстве для каждого акта передачи данных. Сигналы запуска посылаются от микропроцессора к внешнему устройству в моменты времени, определяемые программой. После того, как пройдет время, достаточное для завершения действия в устройстве, программа может снова обращаться к порту. Схема управления представлена на рис. 21. В таких схемах используется асинхронный RS-триггер, управляющий внешним устройством.
Рис. 21. Схемы управления внешними устройствами;
а — устройство вывода; б — устройство ввода.
Установка триггеров выполняется теми же сигналами, которые используются для управления передачей данных между микропроцессором и регистрами портов. Так, триггер выводного порта устанавливается логическим И от сигналов ВЫБОРКА и ВЫВОД (рис. 21а), а триггер вводного — логическим И от сигналов ВЫБОРКА и ВВОД (рис. 21б). Выходной сигнал от триггеров поступает на внешнее устройство и вызывает в нем выполнение действия (протяжка перфоленты или включение соленоидов в буквопечатающем устройстве) и в это же время сигналами ВЫБОРКА, ВВОД, ВЫВОД осуществляется управление портом. Таким образом, будут вводиться или выводиться данные. После завершения действия внешнее устройство подает сигнал, что действие завершено и триггер возвращается в исходное положение. Этим обеспечивается однократное выполнение действия во внешнем устройстве. Такой способ координации работы внешних устройств и микропроцессора называется программно-управляемым со стороны программы.
Для увеличения быстродействия при обмене информацией между микропроцессором и внешним устройством часто предусматривается управляющий вход со стороны внешнего устройства (рис. 22). В этом случае программа должна получить информацию о завершении действия во внешнем устройстве и о готовности порта к очередной передаче данных. Для этого служит флаг готовности (флаговый триггер), который устанавливается внешним устройством и периодически опрашивается программой, ожидающей обмена с данными порта. Когда внешнее устройство выполнило свои действия, то флаговый триггер устанавливается в единичное состояние и поэтому при подаче сигнала ВВОД или ВЫВОД открывается логический элемент И и денные поступают соответственно в порт ввода или в порт вывода. Такой способ координации работы внешних устройств и микропроцессора называется программно-управляемым со стороны внешнего устройства.
Рис. 22. Схема управления.
При оценке программно-управляемой передачи данных необходимо учитывать следующие факторы:
а) большинство электромеханических внешних устройств имеют малое быстродействие по сравнению с быстродействием микропроцессора, поэтому время ожидания готовности внешнего устройства может быть значительно большим;
б) программно-управляемая передача данных не может происходить по запросу от внешних устройств;
в) если флаговый триггер по какой-либо причине не установится в единичное состояние, то обмена данными между внешними устройствами и микропроцессором не будет.
С учетом этих факторов были разработаны различные схемы прерывания.
