7) Программное управление вводом-выводом данных.

Ввод и вывод информации выполняется с помощью портов ввода/вывода, которые представляют собой 8- или 16-разрядные регистры со схемами выборки и управления чтением/записью. В качестве портов могут быть использованы буферные регистры. Ис­пользование регистра КР580ИР82 для соединения с устройством ввода и устройством вывода показано на рис.3.1, а и б соответственно.

Рис.3.1. Использование регистра КР580ИР82 для сопряжения:

а — с устройством ввода; б — с устройством вывода

            Если регистр используется как порт ввода (рис.3.1, а), то данные от устрой­ства ввода поступают в регистр по линиям DI7—DI0 и записываются по стробу STB. Выходные данные DO7—DO0 порта поступают в МПС систему по шине данных. МП формирует также сигнал управления чтением и вы­боркой порта, который поступает на вход . Если регистр используется как порт вывода (рис.3.1, б), то данные от МП поступают по шине данных на входы DI7-DI0 порта и сопровождаются сигналами управления записью и выборки БИС. Выходные данные DO7-DO0 порта поступают в устройст­во вывода.

 

Ввод или вывод данных можно осуществлять двумя способами:

  1. с использованием отдельного адресного пространства УВВ;
  2. с использованием общего с памятью адресного пространства, т.е. с отображением на память.

В первом случае ввод и вывод данных выполняются по командам IN и OUT.

            Во втором случае адреса портов располагаются в общем с памятью адресном пространстве, и обращение к портам не отличается от обращения к ячейке памяти.

            Сигналы выборки БИС (рис.3.1) конкретных портов формируются с помощью дешифраторов. Адрес 16-разрядного порта Р16 должен быть четным, чтобы обращение к нему происходило за один цикл шины. Адреса 8-разрядных портов ввода/вывода Р8 могут быть любыми (четными, нечет­ными), но при четном адресе 8-разрядные порты нужно соединить с млад­шей половиной шины данных D7—D0, а при нечетном — со старшей половиной D15—D8.

© cop320

Конструктор сайтов - uCoz