Разработка алгоритма функционирования МК

 

НАЧАЛО
Установить в начальное состояние МПБ, БВВАД, БОИ (1)
Обнуление счетчика датчиков (2)
Прием аналогового сигнала датчика (3)
Вычисление заданной функции (4)
Формирование сигнала сигнала готовности (5)
Аналого-цифровое преобразование сигнала датчика (6)
Отображение заданной функции (7)
Последний датчик? (8)
Увеличить на 1 содержимое счетчика датчиков (9)

 


НЕТ ДА

 

 

Окончание работы? (10)

 


 

 

ОСТАНОВКА

 


Рисунок 2 – Блок схема

 

Разработка принципиальных электрических схем блоков

Микропроцессорный блок

Центральный процессорный модуль является основным блоком контроллера. Он обеспечивает управление и синхронизацию работы всего устройства, обеспечивает приём, выдачу, хранение и обработку данных, поступающих по системной шине.

В состав центрального процессорного модуля (ЦПМ) входят процессор КР1821ВМ85А (DD2), два буферных регистра КР580ИР82 (DD5, DD6), двунаправленный шинный формирователь КР580ВА86 (DD7), мультиплексор К555КП11 (DD8), внешний резонатор (ZQ, C1), схема формирования сброса (R1, C2, S).

Микропроцессор КР1821ВМ85А имеет совмещенные шину данных и шину адреса. Для разделения сигналов этих шин применяются буферные регистры. Появление в первом такте машинного цикла на шине А15-А8 старшего байта адреса, а на шине AD7-AD0 – младшего, стробируется сигналом процессора ALE, который используется для разрешения записи в регистры. При передаче по шине AD7-AD0 данных этот сигнал отсутствует. Таким образом, в регистрах будет записан адрес, а данные будут передаваться через шинный формирователь. К тому же, регистры и шинный формирователь выполняют функцию увеличения нагрузочной способности ЦПМ (32 мА/вывод).

Мультиплексор (DD5) преобразует сигналы процессора в сигналы чтения/записи памяти и внешних устройств – MEMR, MEMW, I/OR, I/OW.

Именно от выбора процессора зависит быстродействие системы в целом, точность обработки данных, а также удобство разработки программного обеспечения для всего контроллера. Оптимальным для разрабатываемого курсового проекта будет микропроцессор КР1821ВМ85А, преимуществами которого являются:

- низкая стоимость;

- ориентировка на работу в составе микроконтроллеров;

- программная совместимость с микропроцессором КР580ВМ80А;

- наличие одного источника питания +5В;

- наличие встроенного генератора тактовых импульсов;

- встроенный системный контроллер;

- встроенный контроллер прерывания.

Однако, наряду с перечисленными достоинствами, у КР1821ВМ85А имеются и некоторые недостатки:

- низкое быстродействие (длительность одного машинного такта ~0,5 мкс; время выполнения одной команды ~7-8 мкс);

- разрядность обрабатываемых данных 8 бит;

- отсутствие команды деления в имеющемся составе команд.

Для стабилизации частоты системного генератора к выводам Х1 и Х2 БИС КР1821ВМ85А подключают кварцевый резонатор с номинальной частотой 18500кГц. При этом длительность машинного такта будет равна 0,486 мкс. Конденсатор С2 – подстроечный и используется для регулировки частоты системного генератора в небольших пределах. Цепочка R1C1 служит для кратковременного формирования импульса с отрицательным передним фронтом длительностью не менее 1,5 мкс (3 машинных такта). При принятии постоянной времени цепочки R1C1 t = 10 мкс, R1 = 10 кОм, а С1 = 1000 пФ. Принцип работы формирования схемы сброса состоит в следующем. В нормальном состоянии С1 заряжен и вход БИС КР1821ВМ85А RESI через резистор R1 соединен с источником питания +5В, что держит на нем «логическую единицу». При замыкании переключателя S, конденсатор С1 разряжается на корпус. При размыкании переключателя начинается зарядка конденсатора, а вход RESI БИС КР1821ВМ85А оказывается при этом замкнутым на корпус, что соответствует состоянию «логического нуля». По окончанию зарядки, на входе RESI вновь устанавливается «логическая единица».

 

Блок памяти

Блоком памяти в проектируемом устройстве являются ПЗУ и ОЗУ. В первом хранятся коды программы, а во втором – вводимые, промежуточные и выводимые данные.

Аппаратным путем ячейкам памяти ПЗУ и ОЗУ можно присвоить любые адреса, начиная от 0 до 65535, но при этом надо учитывать то обстоятельство, что при включении питания и после сброса микропроцессор всегда начинает считывать код команды, расположенный в ячейке с адресом 0000H.

Для разделения области ПЗУ и ОЗУ необходимо дешифрировать верхние разряды адреса. После подачи сигнала сброса на процессор счётчик команд принимает значение 0, то есть выполнение программы начинается с адреса 0. Следовательно, область ПЗУ, в котором хранится код программы, должна начинаться с адреса 0. Тогда верхний адрес ПЗУ 2 Кбайт будет равен 2047 (07ffH), что соответствует двоичному 0000011111111111. Область ОЗУ начинается со следующих адресов. Нижний адрес ОЗУ в этом случае 2048 (0800H), то есть 0000100000000000. Верхняя граница в 2 Кбайт соответствует адресу 4095 (0fffH), то есть 0000111111111111. Как видно, для адресации к памяти используются только нижние 12 бит адреса А0-А11. При этом биты А15-А12 принимают значение 0 как для ПЗУ, так и для ОЗУ, а бит А11 принимает значение 0 для ПЗУ и 1 для ОЗУ. Это обстоятельство и применяется для построения дешифратора, разделяющего области ПЗУ и ОЗУ. Также учитывается, что при обращении к памяти, ЦПМ устанавливает в 0 сигналы MEMW или MEMR, обращение ПЗУ возможно только при чтении данных, но не при их записи. Сигналы с дешифратора имеют активный уровень 0 и подключены ко входам выборки кристалла CS и перевода выходов в Z-состояние OE микросхем ОЗУ и ПЗУ. Выводы микросхем объединены в общую шину данных соответствующими разрядами и подключаются к ЦПМ.

 

Таблица 1 – Карта памяти

Тип ЗУ ША А15 А14 А13 А12 А11 А10 А9 А8 А7 А6 А5 А4 А3 А2 А1 А0
ПЗУ 0000h
07FFh
ОЗУ 0800h
0FFFh

 

Микропроцессоры семейства К1821 адресуют пространство ЗУ объемом 1 Мбайт с байтовой и двухбайтовой организацией. Время цикла чтения/записи без использования тактов ожидания при частоте синхронизации 5 МГц составляет менее 600 нс, а время выборки порядка 160 нс. Запоминающие устройства микропроцессорных систем на базе БИС МП К1821ВМ85 имеют байтовую организацию и реализуются так же, как и ЗУ для систем на базе БИС КР580 и 8086А.

Поэтому, в качестве ПЗУ можно использовать БИС К573РФ5 (DD12). Это ПЗУ может быть реализовано на базе одной микросхемы памяти с ультрафиолетовым стиранием, имеющей организацию 2к*8 и имеет время выборки адреса 450 нс. ИМС имеет 11 адресных входов, 8 выходов данных, входы разрешения программирования WE, выборки кристалла CЕ, разрешения выходов ОЕ.

 

 

Назначение выводов микросхемы памяти и функциональная схема представлена на рисунке 6(а,б).

Рисунок 6 – Назначене выводов микросхемы памяти (а) и функциональная схема ПЗУ (б)

В качестве проектируемого ОЗУ выбираем статическое ОЗУ КР537РУ8 (DD18) объёмом 2 Кбайт. ОЗУ бывают статического и динамического типов. Так как объем оперативной памяти в проектируемом контроллере мал, то нет смысла применять в нем динамическое ОЗУ. А также применение ОЗУ статического типа позволяет решить задачу сохранения данных в памяти (в отличие от динамического ОЗУ статическое не требует циклов регенерации памяти). Это позволяет существенно упростить аппаратную часть контроллера. Для записи данных с входов D0-D7 в микросхему необходимо на входах А0-А9 установить требуемый адрес ячейки памяти, подать на входы CS и WR напряжение низкого уровня. Для чтения данных из памяти необходимо установить адрес ячейки, на вход CS подать напряжение низкого уровня, а на вход WR – высокого. Функциональное обозначение и назначение выводов данной микросхемы представлено на рисунке 7.

Рисунок 7 - Функциональное обозначение и назначение выводов

БИС КР537РУ8