Микропроцессорная система и ее основные элементы

Разработка микропроцессорной системы на основе однокристального 8-разрядного микропроцессора КР580ВМ80А. Основные характеристики системы. Формирование сигнала выбора модуля. Структура памяти, организация ввода и вывода. Программное обеспечение системы.

Рубрика Коммуникации, связь, цифровые приборы и радиоэлектроника
Вид курсовая работа
Язык русский
Дата добавления 10.03.2015
Размер файла 422,5 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Оглавление

  • 1. Задание к курсовому проекту
  • 2. Общая структура системы
  • 3. Формирование сигнала выбора модуля
  • 4. Структура памяти
  • 5. Организация ввода/вывода
  • 5.1 Организация ПДП
  • 5.2 Организация программируемого интервального таймера
  • 5.3 Система прерываний
  • 5.4 Реализация аппаратных интерфейсов вычислительных систем
  • 6. Программное обеспечение
  • 6.1 Начальная инициализация системы
  • 6.2 Инициализация программируемых БИС
  • 6.2.1 Программируемый контроллер ПДП
  • 6.2.2 Программируемый интервальный таймер
  • 6.2.3 Программируемый адаптер последовательного интерфейса
  • 6.2.4 Программируемый контроллер прерываний
  • 6.3 Подпрограммы обработки прерываний
  • 7. Список используемой литературы
  • Приложение

1. Задание к курсовому проекту

В курсовом проекте необходимо разработать микропроцессорную систему (МПС) на основе однокристального 8-разрядного микропроцессора КР580ВМ80А. Основные характеристики системы заданы в таблице 1.

Таблица 1. Основные характеристики

1

Тип процессора

КР580ВМ80А

2

Объем памяти ОЗУ

32К

3

Тип и организация БИС ОЗУ

СОЗУ 32Кх8

4

Объем памяти ПЗУ

32 К

5

Тип и организация БИС ПЗУ

РПЗУ с УФ 8Кх8

6

Контроль на паритет ОЗУ, контрольная сумма ПЗУ

Нет

7

Контроллер ДОЗУ

Нет

8

Количество цифровых входов

8-разрядный порт ППИ, режим 0

9

Количество цифровых выходов

8 БР

10

Аппаратная реализация системы прерывания

3 БИС КПР

11

Порядок обслуживания прерываний

Фиксированный

12

Канал ПДП

КПДП

13

Последовательный канал

2 БИС ПСА

14

Таймер/счетчик

есть

Способы обмена (организация ВВ)

Программный ввод-вывод, ПДП, режим прерываний

Тип интерфейса

RS-232C

Контроль на паритет

есть

Характеристики аналогового канала

8-разрядный АЦП

2. Общая структура системы

Микропроцессорная система (МПС) представляет собой совокупность узлов, реализующих различные функции, связанные между собой шинами адреса, данных, управления, посредством которых происходит обмен информацией. В такой системе выделяются следующие основные элементы:

Блок процессора;

Схема начальной установки и формирования сигналов выбора устройств

устройство памяти для хранения программ и массивов данных, включающее в себя ОЗУ и ПЗУ;

устройства ввода - вывода, служащие для обмена информацией с ВУ.

для формирования временных интервалов используется программируемый интервальный таймер.

Центральным процессорным элементом является микропроцессор КР580ВМ80А.

Функциональное назначение выводов МП следующее:

А0 - А15 Выходы для вывода 16 разрядов адреса

GND Общий

D0 - D7 Вход. /выход. Двунаправленная шина данных.

RESET Вход. Установка в начальное состояние.

HOLD Вход запроса ПДП.

INT Вход запроса прерывания.

С1, С2 Вход тактовых сигналов.

INTE Выход разрешения прерываний.

DBIN Выход приема информации.

WR Выход выдачи информации.

SYNС Выходной сигнал синхронизации.

HLDA Выход. Подтверждение запроса ПДП.

RDY Вход. Сигнал готовность.

Интерфейс однокристального МП не обеспечивает его непосредственного соединения с системной магистралью. Для построения законченного модуля ЦП требуются дополнительные схемы: генератор тактовых импульсов (DD3), системный контроллер (DD2), буферные регистры (DD6, DD7).

Обслуживание входов С1, С2, READY, RESET взяла на себя микросхема КР580ГФ28 генератора тактовых импульсов. Выходной сигнал SYNC вводит синхронизацию его работы.

Вывод INT используется для организации прерываний блоком приоритетных прерываний.

Контакты HOLD и HLDA служат для перевода системы в режим ПДП.

Сигналы DBIN, WR поступают на системный контроллер на микросхеме КР580ВК28 для формирования системных управляющих сигналов, таких как чтение из памяти (MEMR), запись в память (MEMW), ввод информации (I/OR), вывод информации (I/OW), подтверждение прерывания (INTA).

Принципиальная схема процессорного ядра системы включает МП, СК и ГТИ. Схемы включения этих микропроцессорных ИС типовые, их рекомендуют справочники и технические условия по применению. Связи между процессором, системным контроллером и генератором определены их функциональным назначением и для всех вариантов заданий будут одинаковыми.

В этой схеме с помощью дополнительных элементов задаются следующие условия работы. Во-первых, тактовая частота генератора задается внешним кварцевым резонатором ZQ1 (конденсатор С2 корректирующий, подавляющий высокочастотные составляющие). Во-вторых, предполагается, что внешние устройства и память при обмене данными с микропроцессором не требуют тактов ожидания, т.е. могут работать также быстро, как и процессор, поэтому вход готовности RDYIN генератора тактовых импульсов, а через него и микропроцессора, соединен с источником питания +5В.

Резистор R2 ограничивает входной ток. Цепочка С1, R1 - типовая схема формирования импульса сброса нулевого уровня при замыкании ключа S1. Диод VD1 предохраняет вход ИС генератора от паразитных отрицательных импульсов, возникающих при переключении S1.

Системный контроллер помимо управляющих сигналов формирует и системную шину данных. Формирование системных (магистральных) шин необходимо потому, что нагрузочная способность выходов микропроцессора мала (2-3 входа ТТЛ-элемента). С целью увеличения нагрузочной способности шины адреса, считая, что проблему с шиной данных решает системный контроллер, в схему дополнительно вводят буферы (регистры или шинные формирователи) адреса.

микропроцессор программный модуль память

3. Формирование сигнала выбора модуля

Для дешифрации портов ввода-вывода используется ИС дешифратора 4-х разрядного кода (линии А4-А7) в активный низкий уровень на одной из 16-и выходных линий. Разрешение дешифрации возможно при обращении МП к портам ввода/вывода (низкий уровень на линиях IOR, IOW), а также при отсутствии цикла ПДП (низкий уровень на линии AEN).

Назначение сигналов CS на выходах дешифратора ВУ приведены в таблице 2.

Таблица 2 "Назначение сигналов ВУ"

Устройство

Регистр устройства

Номер порта

Адресные линии

Сигнал выбора устройства

A7

A6

A5

A4

A3

A2

A1

A0

КПР1

ICW1, OCW1

00h

0

0

0

0

0

0

0

0

CSINT1

ICW2, OCW2, OCW3

01h

0

0

0

0

0

0

0

1

КПР2

ICW1, OCW1

10h

0

0

0

1

0

0

0

0

CSINT2

ICW2, OCW2, OCW3

11h

0

0

0

1

0

0

0

1

КПР3

ICW1, OCW1

20h

0

0

1

0

0

0

0

0

CSINT3

ICW2, OCW2, OCW3

21h

0

0

1

0

0

0

0

1

КПДП

Рг. адреса канал 0

30h

0

0

1

1

0

0

0

0

CSDMA

Рг. счетчика циклов канал 0

31h

0

0

1

1

0

0

0

1

Рг. адреса канал 1

32h

0

0

1

1

0

0

1

0

Рг. счетчика циклов канал 1

33h

0

0

1

1

0

0

1

1

Рг. адреса канал 2

34h

0

0

1

1

0

1

0

0

Рг. счетчика циклов канал 2

35h

0

0

1

1

0

1

0

1

Рг. адреса канал 3

36h

0

0

1

1

0

1

1

0

Рг. счетчика циклов канал 3

37h

0

0

1

1

0

1

1

1

Рг. управляющего слова

38h

0

0

1

1

1

0

0

0

Таймер-счетчик

Канал 0

40h

0

1

0

0

0

0

0

0

CSPIT

Канал 1

41h

0

1

0

0

0

0

0

1

Канал 2

42h

0

1

0

0

0

0

1

0

Регистр управляющего слова

43h

0

1

0

0

0

0

1

1

УСАПП1

Регистр данных

50h

0

1

0

1

0

0

0

0

CSPCA1

Регистр управляющего слова

51h

0

1

0

1

0

0

0

1

УСАПП2

Регистр данных

60h

0

1

1

0

0

0

0

0

CSPCA2

Регистр управляющего слова

61h

0

1

1

0

0

0

0

1

ППИ

Порт А

70h

0

1

1

1

0

0

0

0

CSPPI

Порт В

71h

0

1

1

1

0

0

0

1

Порт С

72h

0

1

1

1

0

0

1

0

Регистр управляющего слова

73h

0

1

1

1

0

0

1

1

АЦП

Регистр данных АЦП

80h

1

0

0

0

0

0

0

0

CSAD

4. Структура памяти

Проектирование подсистемы памяти следует начинать с сопоставления объемов заданной памяти и размеров адресного пространства, прямо доступного из микропроцессора КР580ВМ80А. Объем этого адресного пространства определяется разрядностью программного счетчика, оно фиксировано и равно 64К. Если объем физически реализуемой памяти не превышает 64К, то дополнительных схемных решений для расширения адресного пространства не потребуется. Кроме того, следует учесть, что в задании часто указаны и адресные диапазоны, в которых должны быть размещены оперативная и постоянная память. Карта распределения памяти приведена на рисунке 3.

Согласно заданию объем оперативной памяти 32 Кb, объем ПЗУ 32 Kb. Данный объем памяти необходимо отобразить в адресное пространство в 64Kb. Адресное пространство процессора разделено на две части по 32 Kb для каждого типа памяти. Линия А15 осуществляет выбор памяти, к которой происходит обращение (RAM или ROM).

Для реализации ПЗУ объёмом 32 Кбайт используется 4 микросхемы M2732AF1 с организацией 8К х 8.

Оперативное запоминающие устройство объёмом 32 Кбайта выполнено на одной микросхем3 i51256 S/L с организацией 32К x 8.

5. Организация ввода/вывода

5.1 Организация ПДП

ПДП используется при обмене данных между внешними устройствами и основной памятью. Для организации режима ПДП используется контроллер ПДП КР580ВТ57, регистр фиксации старшего байта адреса К580ИР82.

Основные возможности КПДП КР580ВТ57:

· Контроллер подключает 4 внешних устройства

· Независимо программируются 4 канала обмена

· Имеет фиксированные приоритеты обслуживания

· Размер передаваемых данных 16Кбайт

· Прямо доступно 64Кб памяти

Программно можно установить 3 режима: чтения, записи и верификации.

Контроллер построен по n-МДП технологии, имеет источник питания +5В. При программировании на входы RD и WR поступают сигналы IOR и IOW от системного контроллера. Линии A0-A3 используются для адресации внутренних регистров контроллера в режиме программирования и для выдачи соответствующих разрядов адреса в режиме ПДП.

При поступлении запроса на ПДП от внешнего устройства на вход контроллера, он выдает сигнал запроса HOLD, идущий к процессору. Процессор, получив этот запрос, переходит в режим ПДП, сообщая об этом сигналом HLDA. После этого, контроллер выдает на шину данных старшую часть адреса для области обмена и фиксирует ее в буферном регистре (КР580ИР82) сигналом ADSTB, после чего выдает сигнал AEN=1, который переводит выходы шинных формирователей в Z-состояние. Инверсный сигнал AEN (BUSEN) разрешает выдачу 8-и старших разрядов адреса буферным регистром на шину адреса. Далее контроллер работает в обычном режиме.

Программирование контроллеров ПДП осуществляется через порт с базовыми адресами 00h (линии A3-A0 отвечают за внутреннюю адресацию контроллера). Интерфейс с внешними устройствами представляет собой набор линий: запросов ПДП от внешнего устройства (DRQ0 - DRQ3) и сигнала готовности от внешнего устройства (READY), сигналов подтверждения (DACK0-DACK3), выходного сигнала последнего цикла (ТС), сигнала 128 байта (MARC), сигналов IOW и IOR, а также шины данных (D0 - D7). Все эти линии выведены на разъем Х5.

5.2 Организация программируемого интервального таймера

В качестве системного таймера-счетчика используется программируемый интервальный таймер КР580ВИ53. Микросхема выполнена по n-МОП технологии и имеет единственный источник питания +5В.

В состав БИС входят три 16-разрядных вычитающих счетчика. Связь ПИТ с микропроцессором осуществляется через двунаправленную 8-разрядную шину данных под управлением сигналов A0, A1, CSPIT, IOR и IOW. Перед началом работы каждый счетчик должен быть инициализирован посылкой слова состояния. Каждое слово состояния, за исключением операции защелки, сопровождается 1-2 байтами данных начального состояния счетчика. После этого начинается счет.

Входы GATE1. GATE0 подключены к источнику питания +5В. Канал 0 ПИТ используется как генератор синхроимпульсов для УСАПП 1, канал 1 используется как генератор синхроимпульсов для УСАПП 2. Канал 2 может использоваться программистом для различных целей. Для этого выходы ПИТ GATE2 и OUT2 выведены на разъем XS1.

5.3 Система прерываний

Источники запросов прерываний IRQ0-IRQ5 заняты системой:

IRQ0

Запрос на прерывание от УСАПП по окончанию передачи

IRQ1

Запрос на прерывание от внешнего устройства

IRQ2

Запрос на прерывание от АЦП (конец преобразования)

IRQ5

Запрос на прерывание от УСАПП по окончанию приема

IRQ6

Запрос на прерывание от внешнего устройства

IRQ7

Запрос на прерывание от внешнего устройства

Обработчики прерываний хранятся в ПЗУ и могут быть вызваны соответствующими источниками запроса.

Временная диаграмма контроллера прерываний:

5.4 Реализация аппаратных интерфейсов вычислительных систем

Разрабатываемая схема содержит последовательный канал интерфейс RS-232С. Этот интерфейс построен на базе микросхемы КР580ВВ51. Эта микросхема предназначена для аппаратной реализации последовательного канала связи между процессором и внешним устройством (ВУ), способным поддерживать протокол обмена данными в последовательном коде с УСАПП.

Микросхема КР580ВВ51 принимает параллельный код от микропроцессора, преобразует его в последовательный поток данных с присоединением служебными битами и передает его в линию связи, а также выполняет обратное преобразование: принимает последовательный поток данных из линии связи и преобразует его в параллельный 8-разрядный код, одновременно выполняя ряд функций по контролю над правильностью приема данных. Программирование БИС позволяет выбирать один из режимов работы: синхронный или асинхронный, а также установить скорость передачи/приема, контроль на чётность (нечетность) и другие параметры работы.

В разрабатываемой микропроцессорной системе УСАПП программируется на асинхронный режим со скоростью передачи 1: 1, длиной символа 8 бит, с контролем на четность и числом стоп-битов, равным 2.

Назначение сигналов интерфейса RS-232 приведено в таблице:

Сигнал

N контакта

Направление

Назначение

CD

1

вход

Обнаружение несущего сигнала

RxD

2

вход

Данные, принимаемые компьютером в последовательном коде (логика отрицательная)

TxD

3

выход

Данные, передаваемые компьютером в последовательном коде (логика отрицательная)

DTR

4

выход

Готовность терминала

SG

5

-

Общий сигнал

DSR

6

вход

Готовность данных к передаче

RTS

7

выход

Сигнал запроса передачи

CTS

8

вход

Готовность внешнего устройства к приему

RI

9

вход

Индикатор вызова

Все сигналы RS-232 передаются специально выбранными двухполярными уровнями, обеспечивающими высокую помехоустойчивость связи.

5.5 Организация аналоговых каналов

Система имеет два 8-и разрядных АЦП, организованных на базе микросхем 12-и разрядного АЦП К572ПВ1, операционного усилителя К553УД2 (DA1), 8-и разрядного буферного регистра КР580ИР82.

АЦП - устройство, предназначенное для преобразования непрерывных, аналоговых сигналов в цифровой код. Связь с МП, как и для многих типов ВУ, осуществляется в режимах программного ввода-вывода или прерываний. Данные считываются с АЦП после завершения цикла преобразования. При организации режима обмена данными через АЦП, как правило, для преобразователя в системе выделяется несколько адресов. С каждым из адресов при управлении работой АЦП программным способом связана определенная операция: запуск АЦП, чтение данных или признаков и т.п.

На Рисунке 7 приведена схема включения 8 - разрядного АЦП. Для управления буферными регистрами введен дополнительный дешифратор, управляемый сигналами CSADC с основного дешифратора внешних устройств и IOR с выхода системного контроллера, а также адресной линией АB0. Дешифратор позволяет получить два дополнительных адреса для буферных регистров и требуется в тех случаях, когда у основного дешифратора ВУ нет свободных выходов (адресов) для выбора буферных регистров АЦП.

Запуск АЦП производится из программы при выполнении команды OUT port. В адресной части команды указывается адрес АЦП, назначенный устройству при составлении таблицы адресов ВУ. Внешний сигнал запуска АЦП по входу STB формируется схемой 2И-НЕ, на входы которой подаются сигналы CSADC (от дешифратора ВУ) и IOW (от системного контроллера). На вход тактовых импульсов STB преобразователя подаются синхроимпульсы микропроцессорной системы, которые формируются, например, программируемым интервальным таймером.

Следует отметить только, что частота синхроимпульсов не должна превышать максимально допустимое значение, установленное для выбранного типа АЦП.

Рисунок 7 - Схема включения 8 - разрядного АЦП.

6. Программное обеспечение

6.1 Начальная инициализация системы

Программа в ПЗУ рассчитана на то, что после сброса системы выполнение начинается с адреса 0000h. Программа инициализирует все устройства системы на установки, описанные ниже, устанавливает отображение первой страницы в окно ОЗУ (нулевая страница всегда отображена в память), устанавливает таблицу прерываний, вершину стека и инициализирует системные переменные. Инициализация заканчивается переходом на адрес С000h.

Адрес

Метка

Мнемокод

Комментарий

0000

JUMP Start

Перейти к командам инициализации

0350

Start:

DI

Запретить прерывания

0351

LXI SP, 87FFh

Загрузить вершину стека

0354

MVI A,00h

Задаем страницу ОЗУ

0356

OUT A, 00h

0358

CALL Test_ROM

Вызвать процедуру тестирования ПЗУ

035B

CALL Test_RAM

Вызвать процедуру проверки ОЗУ

035E

CALL Init

Вызвать процедуру инициализации контроллеров

0362

CALL Polling

Вызвать подпрограмму обмена данными в режиме программного ввода/вывода

0365

EI

6.2 Инициализация программируемых БИС

0016

Init:

CALL DMA_INIT

Вызвать процедуру инициализации КПДП

0019

CALL PIT_INIT

Вызвать процедуру инициализации ПИТ

001C

CALL PCA_INIT

Вызвать процедуру инициализации УСАПП

001F

CALL PPI_INIT

Вызвать процедуру инициализации ППИ

0022

CALL KPR_INIT

Вызвать процедуру инициализации КПР

0025

MVI H, 98

Инициализация счетчиков памяти для

0027

MVI L, 02

для вывода данных ЦАП1 и ЦАП2

MVI L, 02

0029

SHLD 9800

002B

MVI H, A0

002C

SHLD A000

0020

RET

6.2.1 Программируемый контроллер ПДП

Контроллер ПДП имеет четыре канала, каждый из которых содержит 16-битный регистр адреса, 14-битный счетчик и 2-битный регистр режима канала.

Формат регистра режима.

D7

D6

D5

D4

D3

D2

D1

D0

AL

TCS

EW

RP

EN3

EN2

EN1

EN0

EN3. EN0 -

разрешение работы каналов 0.3

RP -

задает приоритет обслуживания каналов, RP = 1 - циклический приоритет, RP = 0 - фиксированный приоритет

EW -

бит расширенной записи

TCS -

бит задания режима КС-счета, TCS = 0 - нормальное завершение режима ПДП, TCS = 1 - после завершения режима ПДП по обслуживанию канала i соответствующий бит ENi сбрасывается в 0

AL -

бит установки режима автозагрузки. AL = 1 - автоматически устанавливаются параметры режима канала 2 из параметров режима канала 3

Формат регистра состояния контроллера

D7

D6

D5

D4

D3

D2

D1

D0

-

-

-

OF

TC3

TC2

TC1

TC0

TC3. TC0 -

окончание счета каналов 0.3

OF -

бит модификации для режима автозагрузки

Начальная инициализация контроллера ПДП

Адрес

Метка

Мнемокод

Комментарий

0030

DMA_INIT:

MVI A, 00h

Записать 00h в аккумулятор

0032

OUT 60h

Запретить работу всех каналов КПДП

0034

MVI A, low_addr_0

В А - младший байт начального адреса канала 0

0036

OUT 61h

Записать его в ПДП

0038

MVI A, hi_addr_0

В А - старший байт начального адреса канала 0

003A

OUT 61h

Записать его в ПДП

003C

MVI A, low_count_0

В А - младший байт счетчика адреса канала 0

003E

OUT 62h

Записать его в ПДП

0040

MVI A, hi_count_0

В А - старший байт счетчика адреса канала 0

0042

OUT 62h

Записать его в ПДП

Аналогично для канала 1, 2 и 3

0074

MVI A, 0Fh

Записать в А инструкцию режима КПДП

0076

OUT 60h

Установить режим КПДП

0078

RET

Направление и другие параметры обмена в режиме прямого доступа к памяти задаются программой пользователя и могут изменяться ею в любое время.

6.2.2 Программируемый интервальный таймер

Программируемый интервальный таймер содержит три таймера-счетчика, каждый из которых может быть запрограммирован в один из шести режимов работы:

Режим 0 - Прерывание по окончанию счета.

Режим 1 - Генератор одиночного импульса.

Режим 2 - Генератор прямоугольных импульсов.

Режим 3 - Генератор меандра.

Режим 4 - Одиночный программно-стробируемый сигнал.

Режим 5 - Одиночный аппаратно-стробируемый сигнал.

Формат управляющего слова

D7

D6

D5

D4

D3

D2

D1

D0

SC1

SC0

RL1

RL0

M2

M1

M0

BCD

BCD -

BCD = 0 - двоичный счет, BCD = 1 - двоично-десятичный счет

M2. M0 -

номер режима

RL1. RL0 -

тип операции: 00 - защелкивание, 01 - чтение/запись только младшего байта, 10 - чтение/запись только старшего байта, 11 - чтение/запись сначала младшего, затем старшего байтов

SC1. SC0 -

номер канала: 00 - счетчик 0, 01 - счетчик 1, 10 - счетчик 2, 11 - запрещенная комбинация

Канал 0 и 1 используются как генератор частоты для ПСА. Он программируется в режим 2. Зададим на канале 0 частоту 4800, а на канале 1 - 9600. Коэффициенты счета получим равные 416 и 208

Адрес

Метка

Мнемокод

Комментарий

0080

PIT_INIT:

MVI A, 34h

В РУС - канал 0, режим 0, двоичный счет, задание

0082

OUT 33h

и младшего и старшего байтов

0086

MVI A, A0h

Запись мл. байта коэффициента пересчета

0088

OUT 30h

в канал 0

008A

MVI A, 01h

Запись ст. байта коэффициента пересчета

008C

OUT 30h

в канал 0

008E

MVI A, 54h

В РУС - канал 1, режим 2, двоичный счет, задание

0090

OUT 33h

только младшего байта

0092

MVI A, D0h

Запись коэффициента пересчета в канал 1

0094

OUT 31h

009E

RET

6.2.3 Программируемый адаптер последовательного интерфейса

Программирование программируемого адаптера последовательного интерфейса осуществляется в несколько этапов:

1. Инструкция управления с кодом 40h - программный сброс.

2. Инструкция режима - определяет основные параметры режима обмена данными.

3. Инструкция управления - определяет дополнительные условия, сопровождающие процесс обмена.

Формат инструкции режима

D7

D6

D5

D4

D3

D2

D1

D0

ST1

ST0

P1

P0

L1

L0

DR1

DR0

DR1. DR0 -

Режим работы: 00 - синхронный режим, 01 - асинхронный 1: 1, 10 - асинхронный 1: 16, 11 - асинхронный 1: 64

L1. L0 -

Длина символа: 00 - 5 бит, 01 - 6 бит, 10 - 7 бит, 11 - 8 бит.

P0 -

1 - разрешить контроль на паритет, 0 - запретить контроль на паритет

P1 -

1 - контроль на четность, 0 - контроль на нечетность

ST1. ST0 -

Число стоп-бит в асинхронном режиме: 00 - запрещенная комбинация, 01 - 1 стоп-бит, 10 - 1,5 стоп-бита, 11 - 2 стоп-бита

Формат инструкции управления

D7

D6

D5

D4

D3

D2

D1

D0

EH

IR

RTS

ER

SBRK

RxE

DTR

TxE

TxE -

Бит разрешения работы передатчика

DTR -

Управление выходом DTR

RxE -

Бит разрешения работы приемника

SBRK -

0 - нормальный режим работы - при отсутствии передачи на выходе передатчика 1, 1 - при отсутствии передачи на выходе передатчика 0

ER -

Бит сброса триггеров ошибок: 1 - сбросить триггер ошибок, 0 - сохранить триггер ошибок

RTS -

Управление выходом RTS

IR -

Установка программного сброса

EH -

Устанавливается в синхронном режиме работы: 1 - поиск синхроимпульсов, 0 - поиска синхроимпульсов нет

В разрабатываемой микропроцессорной системе ПСА программируется на асинхронный режим со скоростью передачи 1: 1, длиной символа 8 бит, с контролем на четность, числом стоп-битов, равным 2.

Адрес

Метка

Мнемокод

Комментарий

0100

PCA_INIT:

DI

Запретить прерывания

0101

MVI A, 40h

Программный сброс контроллера

0103

OUT 41h

0105

OUT 51h

0107

MVI A, FDh

Запись в ПСА инструкции режима

0109

010B

OUT 41h

OUT 51h

010D

MVI A,17h

Запись в ПСА инструкции управления

010F

0111

OUT 41h

OUT 51h

0113

MVI H, A8

Инициализация счетчиков памяти для

0115

MVI L, 02

Ввода и вывода информации контроллеров

0117

SHLD A800

011A

MVI H, B0

011С

SHLD B000

011F

MVI H, B8

0121

SHLD B800

0124

MVI H, C0

0126

SHLD C000

0129

EI

Разрешить прерывания

0130

RET

6.2.4 Программируемый контроллер прерываний

Перечень прерываний, обслуживаемых контроллером, имеет вид:

Номер прерывания

Устройство, от которого поступает запрос на прерывание

IRQ0

IRDRAM

Запрос на ошибку ОЗУ

IRQ1

IRT1

Запрос на прерывание от УСАПП по окончанию передачи

IRQ2

IRR1

Запрос на прерывание от УСАПП по окончанию приема

IRQ3

IRT2

Запрос на прерывание от УСАПП по окончанию передачи

IRQ4

IRR2

Запрос на прерывание от УСАПП по окончанию приема

IRQ6, IRQ5, IRQ7

Запрос на прерывание от внешнего устройства

При инициализации контроллера задаются расположение таблицы прерываний, размер одной ячейки в таблице прерываний, количество контроллеров прерываний в системе. При программировании примем, что в системе один контроллер прерываний, размер одной ячейки в таблице прерываний 4 байта и таблица прерываний расположена по адресам 0140h - 015Fh. Таблица прерываний имеет вид:

Адрес

Метка

Мнемокод

Комментарий

0140

JMP IRDRAM

Переход на обработчик прерывания IRQ0

0144

JMP IRT1

Переход на обработчик прерывания IRQ1

0148

JMP IRR1

Переход на обработчик прерывания IRQ2

014C

JMP IRT2

Переход на обработчик прерывания IRQ3

0150

JMP IRR2

Переход на обработчик прерывания IRQ4

0154

JMP IRQ5

Переход на обработчик прерывания IRQ5

0158

JMP IRQ6

Переход на обработчик прерывания IRQ6

015C

JMP IRQ7

Переход на обработчик прерывания IRQ7

Программирование контроллера выполняется последовательностью управляющих слов двух типов: командами инициализации ICW и командами управления OCW.

Команды начальной установки ICW1 и ICW2 переводят БИС КПР в состояние готовности к обработке запросов прерываний. Инициализация контроллера начинается с записи в него команды ICW1. Формат команды ICW1:

A0

D7

D6

D5

D4

D3

D2

D1

D0

0

A7

A6

A5

1

0

ADI

SNGL

0

Разряд D1 (SNGL) программирует число контроллеров в системе. При D1=1 контроллер один, в противном случае - несколько (до 8), и для начальной установки необходима команда ICWЗ.

Разряд D2 (АDI) задает адресный интервал в таблице обработчика прерываний. Если D2=1, то интервал равен четырем, а при D2=0 - восьми.

Положение таблицы прерываний в адресном пространстве произвольно и задается при программировании в разрядах D7-D5 команды ICW1 и команды ICW2, содержащей старший байт адреса таблицы.

A0

D7

D6

D5

D4

D3

D2

D1

D0

1

A15

A14

A13

А12

А11

А10

А9

А8

Команды ICW1 и ICW2 сбрасывают в ноль все разряды IRR и IMR, устанавливают приоритеты для входов IRQ0. IRQ7 (IRQ0 - высший приоритет, IRQ7 - низший приоритет) и определяют начальный адрес подпрограммы, обслуживающей прерывания по входу IRQ0. Адреса обработчиков прерываний по входам IRQ1-IRQ7 автоматически задаются смещением (сдвигом) относительно начала таблицы.

Адрес

Метка

Мнемокод

Комментарий

0160

_INIT:

DI

Запретить прерывания

0161

MVI A, 56h

Инициализация КПР:

0163

OUT 10h

задать один КПР, ячейка таблицы

0165

MVI A,00000001b

прерываний 4 байта, адрес таблицы прерываний

0167

OUT 11h

равен 0140h

0169

MVI A, 10100000b

Установка циклического сдвига прерываний

016B

OUT 10h

016D

MVI A,00h

Разрешить все прерывания

016F

OUT 11h

0171

EI

Разрешить прерывания

0172

RET

Разрешение и запрещение прерываний может осуществляться программой пользователя по необходимости.

6.3 Подпрограммы обработки прерываний

По окончанию передачи данных от первого УСАПП вызывается обработчик прерывания IRT1.

Адрес

Метка

Мнемокод

Комментарий

01DD

IRT1:

DI

Запрет прерываний

01DF

PUSH PSW

01E0

LHLD A800h

Читаем след. для записи адрес

01E3

LDAX H

Заносим в аккумулятор байт для передачи

01E4

OUT 40h

Передаем новый байт в буфер УСАПП

01E6

INX H

Инкрементируем адрес

01E7

MVI A, AFh

Проверка на конец блока данных

01E9

CMP H

01EA

JNZ ENDIRT1

01ED

MVI A, FFh

01EF

CMP L

01F0

JNZ ENDIRT1

01F3

MOV H, A8h

Переходим в начало блока

01F5

MOV L, 02h

01F7

ENDIRT1

SHLD A800h

Сохраняем значение следующего адреса

01FA

MVI A, 20h

01FC

OUT A0h

01FE

POP PSW

01FF

EI

0200

RET

По окончанию приема данных от первого УСАПП вызывается обработчик прерывания IRR1.

Адрес

Метка

Мнемокод

Комментарий

0202

IRT1:

DI

Запрет прерываний

0203

PUSH PSW

0204

LHLD B800h

Читаем след. для записи адрес

0207

IN 40h

Читаем новый байт в буфер УСАПП

0209

STAX H

Сохраняем бит в памяти

020A

INX H

Инкрементируем адрес

020B

MVI A, ВFh

Проверка на конец блока данных

020D

CMP H

020E

JNZ ENDIRR1

0211

MVI A, FFh

0213

CMP L

0214

JNZ ENDIRR1

0217

MOV H, B8h

Переходим в начало блока

0219

MOV L, 02h

021B

ENDIRR1

SHLD B800h

Сохраняем значение следующего адреса

021E

MVI A, A0h

0220

OUT 10h

0222

POP PSW

0223

EI

0224

RET

По окончанию передачи данных от второго УСАПП вызывается обработчик прерывания IRT2.

Адрес

Метка

Мнемокод

Комментарий

0227

IRT2:

DI

Запрет прерываний

0228

PUSH PSW

0229

LHLD B000h

Читаем след. для записи адрес

022С

LDAX H

Заносим в аккумулятор байт для передачи

022D

OUT 50h

Передаем новый байт в буфер УСАПП

022F

INX H

Инкрементируем адрес

0230

MVI A, B7h

Проверка на конец блока данных

0232

CMP H

0232

JNZ ENDIRT2

0235

MVI A, FFh

0237

CMP L

0238

JNZ ENDIRT2

023A

MOV H, B0h

Переходим в начало блока

023C

MOV L, 02h

023E

ENDIRT2

SHLD B000h

Сохраняем значение следующего адреса

0241

MVI A, А0h

0243

OUT 10h

0245

POP PSW

0246

EI

0247

RET

По окончанию приема данных от второго УСАПП вызывается обработчик прерывания IRR1.

Адрес

Метка

Мнемокод

Комментарий

024A

IRT1:

DI

Запрет прерываний

024B

PUSH PSW

024C

LHLD C000h

Читаем след. для записи адрес

024F

IN 50h

Читаем новый байт в буфер УСАПП

0251

STAX H

Сохраняем бит в памяти

0252

INX H

Инкрементируем адрес

0253

MVI A, C7h

Проверка на конец блока данных

0255

CMP H

0256

JNZ ENDIRR1

0259

MVI A, FFh

025B

CMP L

025C

JNZ ENDIRR1

025F

MOV H, C0h

Переходим в начало блока

0261

MOV L, 02h

0263

ENDIRR1

SHLD B800h

Сохраняем значение следующего адреса

0266

MVI A, A0h

0268

OUT 10h

026A

POP PSW

026B

EI

026C

RET

7. Список используемой литературы

1. Александров К.К., Кузьмина Е.Г. Электрические схемы и чертежи. - М.: Энергоатомиздат, 1990. - 288 с.

2. Зорин А.Ю. Условные графические изображения на электрических схемах / под. ред. А.И. Питолина. М.: Издательский дом МЭИ, 2007. - 74 с.

3. Гук М. Аппаратные интерфейсы ПК. Энциклопедия. - СПб.: Питер, 2003. - 528 с.

4. Ключев А.О., Ковязина Д.Р., Петров Е.В., Платунов А.Е. Интерфейсы периферийных устройств. - СПб.: СПбГУ ИТМО, 2010. - 290 с.

Приложение

Размещено на Allbest.ru


Подобные документы

  • Порядок и обоснование выбора микропроцессора, схема его подключения. Организация ввода-вывода и памяти микропроцессора. Разработка и апробация программного обеспечения на базе восьмиразрядного МП Z80. Методы повышения частоты работы микропроцессора.

    курсовая работа [735,7 K], добавлен 03.01.2010

  • Арифметико-логическое устройство микропроцессора: его структура и составные части, назначение, функции, основные технические характеристики. Организация системы ввода/вывода микро ЭВМ. Реальный режим работы микропроцессора, его значение и описание.

    контрольная работа [201,1 K], добавлен 12.02.2014

  • Разработка интерфейса и уточнённой структурной схемы, процессорного модуля, подсистем памяти и ввода/вывода, алгоритма программного обеспечения. Оценка памяти программ и данных. Структура адресного пространства. Организация клавиатуры и индикации.

    курсовая работа [2,4 M], добавлен 09.08.2015

  • Аппаратные принципы построения устройств микропроцессорной техники и приобретение практических навыков по разработке микропроцессорных систем. Техническая характеристика микропроцессора ATmega и анализ микросхемы памяти. Схема микропроцессорной системы.

    курсовая работа [1,6 M], добавлен 19.11.2011

  • Структура электропривода постоянного тока с микропроцессорным управлением. Процессорный и интерфейсный модули в составе микропроцессора. Отработка управляющих программ для реализации алгоритма управления. Особенности проектирования интерфейсного модуля.

    курсовая работа [446,8 K], добавлен 08.07.2014

  • Критерии эффективности и обоснование выбора базисных элементов для записи отсчетов от 16 аналоговых датчиков в область памяти. Функциональная схема компьютерной системы управления железнодорожным переездом. Алгоритм работы микропроцессорной системы.

    курсовая работа [1,4 M], добавлен 14.06.2016

  • Порядок описания и разработки структурной и функциональной схемы микропроцессорной системы на основе микроконтроллера К1816ВЕ31. Обоснование выбора элементов, разработка принципиальной схемы данной системы, программы инициализации основных компонентов.

    курсовая работа [260,4 K], добавлен 16.12.2010

  • Кустовая насосная станция как объект программного управления. Основные характеристики микросхем и режимы их работы. Разработка структурной и принципиальной схем микропроцессорной системы программного управления на основе микропроцессора К1821ВМ85.

    курсовая работа [124,1 K], добавлен 03.05.2012

  • Требования к разрабатываемой системе по слежению атмосферного давления. Применение 8-разрядного микроконтроллера ATmega128. Технические характеристики датчика давления BMP 180. Разработка принципиальной схемы микропроцессора, кодирование информации.

    курсовая работа [661,2 K], добавлен 23.10.2015

  • Разработка структурной и принципиальной схемы микропроцессора. Подключение шины адреса, данных и управления к соответствующим блокам на схеме. Формирование блока устройства памяти (ОЗУ и ПЗУ) и подключение его к шинам блока центрального процессора.

    контрольная работа [220,5 K], добавлен 08.07.2012

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.