Проектирование микроконтроллера на микропроцессоре 8086

Автор: Пользователь скрыл имя, 06 Июня 2013 в 12:54, курсовая работа

Описание работы

Задачей данного курсового проекта является изучение принципов проектирования систем микропроцессорного управления промышленными процессами. В результате выполнения проекта, мы должны спроектировать микроконтроллер на микропроцессорном управлении для организации автоматического управления промышленным процессом. Сама автоматизация в рамках курсового проекта заключается в отслеживании изменения одного параметра промышленного процесса и выполнении некоторых действий в ответ на это изменение.

Содержание

Введение 4
1. Функциональное проектирование 6
1.1. Анализ исходных данных 6
1.2. Выбор и обоснование структуры микроконтроллера 7
1.3. Обобщенный алгоритм функционирования 10
2. Структурное проектирование 12
2.1. Разработка алгоритма программного обеспечения 12
2.2. Реализация программного обеспечения на языке ассемблера 14
2.3. Проектирование структуры блоков микроконтроллера 17
2.3.1. Проектирование структуры блока памяти 18
2.3.2. Проектирование структуры блока ввода данных 22
2.3.3. Проектирование структуры блока индикации 25
2.3.4. Программное управление устройствами ввода – вывода 31
2.3.5. Проектирование блока центрального процессора 32
3. Схемотехническое проектирование 38
Заключение 43
Список используемой литературы 44

Работа содержит 1 файл

Пояснительная записка.doc

— 417.00 Кб (Скачать)

Функционирование блока  индикации иллюстрируется логическими диаграммами, приведенными на рис. 2 14.


 

 

 

 

 

 

 

 

 

 

 

 

Рис. 2.14. Логические диаграммы  сигналов при выводе данных в блок индикации

 

В такте Т1 процессор формирует адрес порта  вывода информации (командная или  данные), который в такте Т2 по спаду сигнала ALE защелкивается на шине адреса системного интерфейса микроконтроллера. В тактах Т2 – Т4 блоком центрального процессора вырабатывается управляющий сигнал IOW=0, указывающий блоку индикации на необходимость приема информации. Сразу же после формирования адреса порта вывода в такте Т2, на линиях D7…D0 шины данных системного интерфейса микроконтроллера появляются данные, предназначенные для записи в блок. Данные остаются действительны до середины такта Т4 и сопровождаются сигналом IOW=0, который используется в качестве строба для записи данных в устройство. После установления IOW=1 такт Т4 заканчивается как и в цикле чтения.

Следует отметить, что в цикле чтения сигнал IOW становиться активным раньше и имеет большую длительность, чем IOR и MEMR в цикле чтения.

 

 

      1. Программное управление устройствами ввода – вывода

 

Сопряженные регистры КР580ВА86, образующие устройство ввода данных, занимают в адресном пространстве ввода-вывода микропроцессора 1 порт ввода-вывода. Причем, как видно  из рис. 2.8, регистры никак не связаны с линиями адреса шины данных системного интерфейса микроконтроллера и выбираются только при помощи управляющего сигнала блока центрального процессора IOR, т.е. при наличии факта чтения данных из внешнего устройства (команда микропроцессора IN). Отсюда следует, что порт ввода может иметь любой из 65536 возможных, адрес.

БИС КР580ВВ79, на базе которой построен блок индикации, занимает в адресном пространстве ввода-вывода микропроцессора 2 порта вывода. БИС  сопрягается с младшим байтом шины данных системного интерфейса микроконтроллера (см. рис. 2.12). Управление адресным входом А0 осуществляется по линии А1 шины адреса системного интерфейса микроконтроллера.

Выборка кристалла  осуществляется при одном наличии  факта записи данных во внешнее устройство (команда микропроцессора OUT ). Отсюда следует, что на адреса портов вывода накладывается только одно условие: бит D1 адреса командного порта равен 1, адреса порта вывода данных равен 0.

Основываясь на выше сказанном, выбираем следующие  адреса портов ввода-вывода (табл.2.3).

Таблица 2.3.

Управляющие выходы блока центрального процессора

Линия А1 шины адреса системного интерфейса микроконтроллера

Действие

Адрес порта

IOR

IOW

0

1

"

Происходит  чтение данных из блока ввода

0000h

1

0

0

Происходит запись данных в БИС КР580ВВ79

0000h

1

0

1

Происходит  запись команды в БИС КР580ВВ79

0002h


 

 

      1. Проектирование структуры блока центрального процессора

 

В однопроцессорных микроЭВМ и микроконтроллерах микропроцессор К1810ВМ86 обычно работает в минимальном режиме (вход MN/MX = 1).

В первую очередь, к микропроцессору подключается генератор тактовых импульсов КР1810ГФ84 (рис.2.15). Он предназначен для управления центральным процессором К1810ВМ86 и периферийными устройствами, а так же для синхронизации сигналов READY с тактовыми сигналами центрального процессора. Генератор тактовых импульсов включает в себя схемы формирования тактовых импульсов (CLK, PCLK), сигнала сброса (RESET) и сигнала готовности (READY).


 

 

 

 

 

 

 

 

 

Рис. 2.15. УГО БИС КР1810ГФ84

 

Сигналы CLK, PCLK могут формироваться из колебаний основной частоты кварцевого резонатора, подключаемого к входам Х1, Х2 (см. рис. 2.15), или третьей гармоники кварцевого резонатора, выделяемой LC-фильтром или от внешнего генератора.

Вход F/C предназначен для выбора режима функционирования генератора КР1810ГФ84. Заземляя этот вход, мы обеспечиваем формирование тактовых импульсов от внутреннего генератора.

Ко входу RES тактового генератора подключается RC-цепь, обеспечивающая формирование сигнала сброса.

 


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 2.16. УГО микропроцессора  К1810ВМ86

 

Входной сигнал READY микропроцессора К1810ВМ86 (рис. 2.16) используется для подтверждения готовности к обмену. Высокий уровень сигнала указывает на наличие данных на шине данных. Схема формирования этого сигнала в генераторе тактовых импульсов КР580ГФ84 имеет две пары идентичных сигналов RDY1, AEN1 и RDY2, AEN2, объединенных схемой ИЛИ. Так как в системе отсутствует необходимость в тактах ожидания, то необходимо обеспечить постоянное формирование сигнала READY. Для этого, входы генератора тактовых импульсов RDY1, AEN1, AEN2 заземляются, а на вход RDY2 подается высокий потенциал (см. рис. 2.18).

Таким образом, входы центрального процессора CLK, READY, RESET подключаются к выходам генератора тактовых импульсов CLK, READY, RESET соответственно (см. рис. 2.18).

При разработке блока центрального процессора возникают  следующие задачи:

  1. разделения (демультиплексирования) шины адреса/данных;
  2. буферирования шин адреса и шин данных;
  3. формирования системных управляющих сигналов для блоков памяти и внешних устройств.

Первая задача решается с помощью микросхем КР580ИР82, выполняющих  роль адресной защелки.

При проектировании блока памяти выяснено, что для  адресации памяти используется 8 адресных цепей шины адреса, а для адресации портов ввода-вывода используется только одна адресная линия А1. Так же, из результатов проектирования блоков микроконтроллера известно, что чтение данных из памяти и порта ввода производится исключительно словами, поэтому сигналы BHE и А0 для доступа к устройствам вообще не используются и их можно не запоминать. Исходя из этих рассуждений, приходим к выводу, что нам достаточно обеспечить запоминание только 8 разрядов адреса: А8 – А1. Разрядность шины адреса, таким образом, равняется 8 бит и, поэтому, для формирования шины адреса достаточно использовать только один регистр-защелку адреса КР580ИР82.

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

 

 


 

 

 

 

 

 

Рис. 2.17. УГО регистра-защелки КР580ИР82

 

Линии входных данных DI7 – DI0 регистра подключаем к выходам микропроцессора AD8 – AD1 соответственно (см. рис. 2.18).

Выходы регистра DO7 – DO0 образуют шину адреса системного интерфейса микроконтроллера A8 – A1 соответственно (см. рис. 2.18).

При сигнале  высокого уровня на входе STB регистра состояние входных линий DI7 – DI0 передается на выходные DO7 – DO0. Запоминание (защелкивание) осуществляется по срезу сигнала STB. Поэтому, вход STB регистра подключаем к выходу микропроцессора ALE (см. рис. 2.18).

Сигнал ОЕ управляет выходными буферами. При  ОЕ=0 буфер отпирается, при ОЕ=1 устанавливается  в z-состояние. Так как в микроконтроллере устройства прямого доступа к памяти не используются, то необходимо, чтобы выходные буфера были всегда открыты. Это обеспечивается заземлением входа OE регистра (см. рис. 2.18).

Вторая задача решается с помощью двунаправленных 8-битовых шинных формирователей К580ВА86 (см. рис. 2.7), которые усиливают сигналы системной шины данных.

Для буферирования 16-разрядной шины данных используются два шинных формирователя К580ВА86, входы ОЕ которых подключены к  выходу DEN центрального процессора К1810ВМ86, а входы Т – к выходу DT/R центрального процессора.

Третья задача может  быть решена с помощью комбинационных логических схем, которые формируют  требуемые управляющие сигналы  на основе сигналов RD, WR, M/IO, вырабатываемых микропроцессором. Так как используется адресное пространство ввода-вывода, изолированное от пространства памяти, то формируем следующие управляющие сигналы:


MEMR – чтение из ПЗУ. Низкий уровень сигнала указывает на выполнение цикла чтения из ПЗУ.


IOR     – чтение из внешнего устройства. Низкий уровень сигнала указывает на выполнение цикла чтения из внешнего устройства (из блока ввода).


IOW    – запись во внешнее устройство. Низкий уровень сигнала указывает на выполнение цикла записи в блок индикации.

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

Роль формирователей сигналов выступают элементы ИЛИ  и элементы НЕ (см. рис. 2.18), в качестве которых выбраны микросхемы К555ЛЛ1 и К555ЛН1. К тому же, нужно отметить, что указанные логические элементы не только формируют управляющие сигналы, но и являются их усилителями.

 

 




 





 


 




 

 



 

 

 



 

 

 

 

 


 

 

Рис. 2.18 Функциональная схема  блока центрального процессора

 

 

  1. СХЕМОТЕХНИЧЕСКОЕ ПРОЕКТИРОВАНИЕ

 

 

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

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

Таблица 3.1.

Тип БИС

Назначение

Технология

К1810ВМ86

Центральный процессор

n-МДП

К1810ГФ84

Генератор тактовых сигналов

ТТЛШ

К580ВВ79

Контроллер  клавиатуры и индикации

ТТЛШ

К580ИР82

Регистр-защелка

ТТЛШ

К580ВА86 /87

Шинный формирователь

ТТЛШ

К555ИД7

Двоично-десятичный дешифратор

ТТЛ

К555ЛЛ1

Логический  элемент ИЛИ

ТТЛ

К555ЛН1

Логический  элемент НЕ

ТТЛ

КР556РЕ11

Перепрограммируемое ПЗУ

ТТЛШ


 

Из табл. 3.1. видно, что  все используемые БИС изготовлены  по технологиям, совместимым с ТТЛ и, следовательно, все они имеют одинаковые электрические характеристики:

Входное напряжение логической единицы UIH , В >= 2.0

Входное напряжение логического нуля UIL , В <= 0.8

Выходное напряжение логической единицы UOH , В >= 2.4

Выходное напряжение логического  нуля UOL , В <= 0.45

Этот факт говорит  о том, что сопряжение схем можно  производить непосредственно, без  применения схем согласования, т.е. входы одной БИС подсоединять к выходам другой.

 

При проектировании блока  центрального процессора (см. п.2.3.4) отмечалось, что к входу RES генератора тактовых сигналов подключается RC-цепочка, которая формирует сигнал сброса автоматически при включении питания либо с помощью кнопки. Рассмотрим детально структуру этой схемы (рис. 3.1.) и принцип ее работы.


 

 

 

 

 

 

 

Рис. 3.1. Схема  формирования сигнала “Сброс”

 

Схема состоит  из резистора R, конденсатора C и кнопки B.

В момент включения  питания конденсатор С разряжен и происходит его зарядка –  и пока он не зарядится, на вход RES подается низкий потенциал, формирующий сигнал сброса. Длительность низкого уровня сигнала на входе RES (т.е. длительность переходного процесса) определяется величиной сопротивления R и емкостью конденсатора C. После того, как конденсатор зарядится, ток непосредственно через резистор R идет на вход RES генератора, поддерживая на нем высокий потенциал.

При выполнении сброса при помощи кнопки S (замыкание ключа S), происходит разрядка конденсатора на землю и сама цепь замыкается на землю и ток на вод RES не идет – формируется низкий потенциал и происходит сброс системы. При размыкании ключа S на входе RES высокий потенциал формируется с некоторой задержкой, которую создает процесс зарядки конденсатора.

Таким образом, емкость конденсатора C определяет продолжительность присутствия низкого уровня сигнала на входе RES тактового генератора при включении питания и после размыкания ключа S. Поэтому, емкость конденсатора С и сопротивление резистора R необходимо выбрать такими, чтобы обеспечить такую минимальную продолжительность присутствия низкого уровня напряжения на входе RES, чтобы тактовый генератор успел среагировать на него и сформировать сигнал сброса.

Исходя из этих соображений выбираем:

R= 4.3 кOм;

С=6.8 мкФ.

 

К входам Х1 и  Х2 тактового генератора подключаем цепь, состоящую из соединенных последовательно кварцевого резонатора и конденсатора (см. приложение 4). Конденсатор необходим для того, чтоб гарантировать запуск кварцевого резонатора на основной частоте, а не на высших гармониках. Емкость конденсатора выбираем равной 15пкФ.

Информация о работе Проектирование микроконтроллера на микропроцессоре 8086