- •Непрерывные и дискретные системы автоматического управления
- •Понятие о микропроцессорных системах управления
- •Характеристики непрерывных и дискретных систем
- •Определение, устройство и принцип действия микропроцессора
- •Обобщенная структура микропроцессорной системы
- •Понятие обмена данными
- •Обмен данными в микропроцессорной системе
- •Управление обменом на примере параллельного способа обмена
- •Организация внутренних линий связи
- •Методы обмена
- •Управление обменом в случае последовательного обмена данными
- •Контроль правильности передачи данных
- •Пакетный метод передачи данных по последовательному каналу
- •Управление последовательным каналом при полудуплексной связи
- •Управление потоком данных
- •Способы кодирования бит при последовательной передаче данных
- •Определение аппаратных и программных средств
- •Обобщенная архитектура микропроцессора
- •Обобщенный интерфейс микропроцессора
- •Команды микропроцессора. Система команд
- •Обобщенная архитектура и интерфейс запоминающего устройства
- •Классификация устройств ввода-вывода
- •Параллельный программируемый интерфейс
- •Последовательный программируемый интерфейс
- •Виды вспомогательных устройств
- •Программируемый контроллер прерываний
- •Программируемый таймер
- •Буферный регистр
- •Шинный формирователь
- •Этапы проектирования микропроцессорной системы управления
- •Математическая модель микропроцессорной системы управления
- •Задачи проектирования аппаратных средств мпс
- •Классификация усо
- •Задачи проектирования усо
- •Проектирование соединения усо с микропроцессором
- •Проектирование соединения усо с мп в случае нескольких ведущих устройств
- •Основные принципы построения усо
- •Усо для ввода данных без преобразования
- •In al, 0000h ; ввод младшего байта
- •In al, 0001h ; ввод старшего байта
- •In al, 0000h ;ввод младшего байта
- •In al, 0001h ;ввод старшего байта
Усо для ввода данных без преобразования
Такие УСО могут использоваться для ввода данных с внешнего устройства, которое предоставляет данные в цифровой форме — в виде двоичного кода. Примером такого устройства может служить цифровой датчик (например, положения). УСО такого типа могут применяться также при вводе информации в параллельном формате с ЭВМ верхнего уровня.
Рассмотрим задачу проектирования УСО и сопряжения УСО с объектом управления применительно к данному случаю. Объект управления представлен цифровым датчиком и УСО должно обеспечить ввод данных с него в МПС через магистраль. Таким образом, с одной стороны мы имеем цифровой датчик, предоставляющий данные в параллельном двоичном коде, с другой стороны — магистраль МПС (рис. 1).
|
|
Рис. 1.
Так как ввод любых данных в МПС осуществляется по шине данных (ШД), мы должны соединить выходные линии датчика с шиной данных. Но соединить их напрямую мы не можем, так как в этом случае информация, передаваемая датчиком, будет находиться на шине данных постоянно. И обмен с другими устройствами будет невозможен.
Следовательно, датчик необходимо соединить с ШД с помощью устройства, которое бы подключало датчик к ШД только на время цикла ввода информации с него. Для этой цели может быть использован рассмотренный нами ранее буферный регистр (БР) (рис. 2).
|
|
Рис. 2.
В данном случае БР играет роль усилителя с возможностью отключения от шины данных. Следовательно, на вход STB должен быть подан сигнал логической "1", обеспечивающий работу БР в режиме усилителя. Вход OE будет использоваться для подключения БР (и датчика) к ШД в цикле чтения. БР должен подключаться к ШД при следующих условиях:
Выполняется цикл обмена по чтению из внешнего устройства (управляющая линия IOR в активном состоянии — логического "0").
Цикл обмена выполняется именно с данным датчиком. Так как любое внешнее устройство, подключенное к МПС, должно иметь уникальный адрес, необходимо проанализировать адресную информацию (сигналы на линиях адреса). И если установленный на шине адрес соответствует адресу рассматриваемого ВУ (датчика), БР должен быть подключен к шине данных.
Для анализа адресной информации используется дешифратор (рис. 3).
|
|
Рис. 3.
В приведенной схеме УСО используется дешифратор с двумя входами, на которые подаются сигналы двух младших адресных линий. Следовательно, линия CS будет активизирована при передаче адреса, у которого младшие разряды будут иметь значение "00" (старшие разряды адреса в данной схеме не анализируются и могут иметь любые значения).
Использование логического элемента "ИЛИ" позволяет формировать сигнал OE на входе буферного регистра только если оба сигнала — CS и IOR находятся в активном состоянии — логического "0".
Таким образом, схема УСО, представленная на рис. 3 позволяет решить поставленную задачу — подключение цифрового датчика к шине данных только на время выполнения обмена с ним (с установкой соответствующего ему адреса на шине адреса).
Временная диаграмма изменения сигналов в УСО представлена на рис. 4.
|
|
Рис. 4.
Из временной диаграммы видно, что данные на шине данных появляются только после установки на шине адреса соответствующего адреса и активизации сигнала IOR
Задача подключения цифрового датчика может быть решена также с использованием программируемого параллельного интерфейса (ППИ, параллельного порта). Схема УСО для этого случая представлена на рис. 5.
|
|
Рис. 5.
Схема во многом аналогична предыдущей. Так как ППИ имеет в своем составе несколько портов ввода-вывода, при вводе данных через него необходимо указать, с каким конкретно портом идет работа (т.е. к какому порту подключено интересующее нас устройство — в данном случае цифровой датчик). Для этого используются входы А0, А1, которые соединены непосредственно с двумя младшими линиями шины адреса.
Следовательно, два младших разряда адреса в данном случае определяют номер нужного порта внутри ППИ. Два следующих разряда адреса (А2, А3) используются для выбора конкретной микросхемы ППИ — через дешифратор они соединены со входом CS ППИ. Параллельный интерфейс будет подключен к ШД только если на вход CS подан активный сигнал логического "0", а это произойдет только при А2=А3=0. Таким образом, если предположить, что датчик подключен к порту A ППИ, для выбора которого необходимо А1=А2=0, то для чтения данных с датчика через ППИ на шине адреса должно быть установлено значение "0000" — четыре младшие разряда нулевые. Значения старших разрядов не имеют значения, так как никак не используются в данной схеме.
Временная диаграмма изменения сигналов в УСО рис. 5. представлена на рис. 6.
|
|
Рис. 6.
Рассмотрим теперь ситуацию, когда разрядность данных, получаемых с датчика, больше 8. Так как порты ввода-вывода и буферные регистры обычно являются восьмиразрядными, для ввода данных большей разрядности необходимо использовать несколько портов (буферных регистров). Например, при вводе данных с 16-разрядного датчика положения, в схеме на рис. 5 линии восьми младших разрядов должны быть подключены к одному порту ППИ (например, порту А), линии восьми старших разрядов — к другому (например, порту В). Ввод данных с датчика будет осуществляться в два приема — сначала считывание младшего байта из порта А, затем старшего — из порта В. В соответствии со схемой подключения на рис. 5. порт А ППИ имеет адрес 0000h, порт В — 0001h. В таком случае ввод данных осуществляется следующей последовательностью команд МП Intel 8086:






