Разработка микропроцессорной системы на базе микропроцессора M6800, содержащей: 2 кБ ROM памяти, 4 кБ RAM памяти, периферийные БИС M6850 и I-8255, страница 5

В 64Кбайтовом адресном пространстве МПС память ОЗУ расположим в диапазоне адресов от 0000h до 0FFFh (4Кбайт). Память ПЗУ расположим над памятью ОЗУ в диапазоне адресов от 1000h до 17FFh (2Kбайт). Для обращения к этим адресным пространствам и формирования сигналов #CEи #CS используются дешифраторы адреса ОЗУ и ПЗУ соответственно.

Cоставим карту памяти и определим функции дешифраторов:

FFFFh

 

#CS = #( (#A15) & (#A14) & (#A13) & A12 & (#A11) ) = A15 | A14 | A13 | #A12 | A11

 

#CE = #( (#A15) & (#A14) & (#A13) & (#A12) ) = A15 | A14 |A13 | A12

 

Функция дешифратора ОЗУ: A15 | A14 |A13 | A12

Функция дешифратора ПЗУ: A15 | A14 | A13 | #A12 | A11


В соответствии с заданием в качестве периферийной БИС  последовательного интерфейса выбрана микросхема интерфейса асинхронной передачи данныхMС6850.

Микросхема предназначена для организации обмена данными между микропроцессором (данные в параллельном формате) и периферийным устройством (данные в последовательном формате).

Конфигурируем БИС следующим образом:

·  частоту приема/передачи установим равной 1/16 тактовой частоты (3 режим); поделенную частоту подадим на входы Tx CLK и RxCLK;

·  биты паритета устанавливать не будем;

·  используем для обмена БИС с МП аппаратную систему прерываний – подключим вывод #IRQ схемы на вход маскируемого прерывания #IRQ процессора;

·  на вход схемы R/#W подключим соответствующий вывод R/#W МП;

·  на входы выбора чипа CS0, CS1, #CS2 подадим биты шины адреса A0, A1, A2;

·  на вход выбора регистра RSподадим бит шины адреса A3;

·  к выводам параллельных данных D7-D0 подключаем шину данных;

·  на вывод разрешения работы E подадим вывод МП разрешения работы периферийного устройства VMA;

·  используем подключённый к БИС разъём последовательной связи (последовательный порт), на который подадим выводы Rx Data и
Tx Data, а также управляющие периферийным устройством сигналы запроса на передачу #RTS, готовности к получению #CTS и

контроля окончания получения #DCD.

В качестве периферийной БИС параллельного интерфейса была выбрана микросхема программируемого параллельного ввода/вывода I8255A.

Микросхема применяется в качестве элемента ввода/вывода общего назначения для подключения интерфейсных устройств (клавиатуры, принтера, накопителя на магнитной ленте и т. д.) к магистралям данных.

Конфигурируем БИС следующим образом:

·  подключаем шину данных на выводы данных D7-D0;

·  на входы выбора регистра A0, A1 подадим младшие биты шины адреса A0, A1;

·  на вход разрешения работы #CS подадим вывод МП разрешения работы периферийного устройства VMA;

·  на входы чтения и записи #RD и #WRподадим вывод R/#W МП (на вход #RD – через инвертор);

·  на вход сброса RESET подключим через инвертор вывод #RESET генератора MC6875;

·  установим все каналы в режим 0;

·  канал Aнастроим на прием данных, B – на передачу (управляющее слово 10011000);

·  по мере надобности будем устанавливать/сбрасывать отдельные биты канала C.

3.  Программирование периферийной БИС

          Программирование периферийных БИС, как правило, начинается сразу же после включения питания МПС или после подачи сигнала сброса, выполнением  программы начальной инициализации. Все программируемые периферийные БИС имеют в пространстве портов ввода-вывода  свои порты, доступ к которым осуществляется по командам IN < адрес порта> или  OUT < адрес порта>. Обращение к периферийным БИС со стороны МП может быть реализовано или с помощью аппаратного прерывания или с помощью программного опроса регистров состояния периферийных БИС.