УСО для вывода данных без преобразования могут использоваться для вывода данных в параллельном формате, например для передачи их другой МПС. Предполагается, что на выходе УСО должны находиться данные в параллельном двоичном коде.
Построение УСО выполняется на базе программируемого параллельного интерфейса (ППИ) (рис. 1).
Рис. 1.
ППИ подключается к магистрали МПС стандартным образом, обеспечивающим обращение к нему как к устройству ввода-вывода. Выход одного из портов ППИ будет являться выходом УСО. Если предположить, что выход УСО подключен к порту А, имеющему адрес А0=А1=0, запись данных в ППИ (и вывод их через УСО) выполняется командой:
OUT 0000h, AL
В регистр AL предварительно должны быть помещены выводимые данные.
Если разрядность выводимых данных больше восьми, необходимо использовать два или более 8-разрядных порта ППИ.
Так как ППИ всегда готов к обмену, при взаимодействии УСО с ведущим устройством (МП) используется синхронный обмен, сигнал готовности не используется и отсутствует.
УСО для вывода данных с преобразованием из дискретной формы в непрерывную
УСО данного типа применяются, например, для передачи управляющего сигнала на усилитель мощности.
Собственно преобразование данных из дискретной формы в непрерывную осуществляется цифро-аналоговым преобразователем (ЦАП). Современные ЦАП выполнены в виде устройства, непосредственно подключаемого к магистрали МПС (рис. 1)
Рис. 1.
ЦАП имеет внутренний буферный регистр, в который заносится информация для преобразования при активизации линий CS и WR. Для занесения информации МП использует обычную команду вывода в УВВ OUT, указав соответствующий адрес (для приведенной на рис. 1. схемы адрес ЦАП 0000h).
Так как ЦАП работает в реальном масштабе времени (без задержек), данные в него могут быть загружены в любой момент. Следовательно, наше УСО всегда готово к приему данных от ведущего устройства (МП). Поэтому для взаимодействия с ведущим устройством в данном случае используется синхронный метод (не предусматривающий проверки готовности).
Разрядность ЦАП выбирается в процессе проектирования системы автоматического управления. Если разрядность ЦАП окажется больше разрядности шины данных (например, при использовании 8-разрядного МП с 8-разрядной ШД и 16-разрядного ЦАП) необходимо использовать буферные регистры для обеспечения одновременной перезагрузки старшего и младшего байтов в ЦАП. Буферные регистры включаются между шиной данных и ЦАП.