- •Содержание
- •Введение
- •1 Анализ задачи
- •1Функциональная спецификация системы
- •2) Описание интерфейса между системой и пользователем.
- •1.2 Описание интерфейса между системой и пользователем
- •2 Предварительное проектирование системы
- •2.1 Разбиение системы на модули
- •2.3 Построение структурной схемы аппаратной части системы
- •3 Проектирование аппаратных средств системы
- •2.2 Соотношение между аппаратными и программными средствами
- •4 Проектирование программного обеспечения
- •Заключение
- •Список использованных источников
- •Приложение а
2.2 Соотношение между аппаратными и программными средствами
Связь между аппаратными и программными модулями системы устройства управления холодильником представлена на рисунке 4.
Связь между программными модулями и модулем микроконтроллера показана жирной стрелкой, так как программные модули реализуются как процедуры микроконтроллера. Поскольку входная информация передается через модуль интерфейса ввода под управлением программного входного модуля, связь между этими модулями показана пунктирной линией. Подобным же образом показана связь между программным выходным модулем и модулем интерфейса вывода.
Рисунок 4 – Связь между аппаратными и программными модулями
Входной и выходной модули необходимо поместить в программную часть. Они непосредственно считывают (или записывают) из портов (в порты) ввода (вывода) данные и анализируют их.
Модули инициализации проще всего выполнить при помощи программного обеспечения.
Все остальные модули отнесем к аппаратной части.
2.3 Построение структурной схемы аппаратной части системы
На основе функций, выполняемых системой, построим структурную схему аппаратной части системы. Процессорный модуль является ядром системы. В нем происходит обработка входной информации и генерация управляющих воздействий на все компоненты системы. В ПЗУ хранится исполняемая программа и подпрограммы для обработки прерываний. А в ОЗУ содержаться временные переменные. Также в отдельный блок можно выделить модуль генератора тактовых импульсов. Обмен данными между блоком центрального процессора и остальными блоками устройства управления осуществляется через порты.
Для подключения внешних устройств у микроконтроллера предусмотрено пять 8- разрядных портов.
В нашем случае, периферийными устройствами будут служить: кнопки, датчики, светодиодные индикаторы, зуммер, мотор охлаждения. Эти устройства подключаются к устройству ввода - вывода.
Структурная электрическая схема устройства приведена на чертеже БГУИ.100701.027 Э1.
3 Проектирование аппаратных средств системы
Основой аппаратной части является микроконтроллер МС68НС11А8.
В нашем случае микроконтроллер будет работать в однокристальном режиме, поэтому на вход MODA нужно подать логический '0', а на вход MODB логическую ‘1’.
Микроконтроллер адресует до 64 Кбайт памяти (адреса $0000-SFFFF), которые делятся на 16 страниц по 4 Кбайта. Полный объем памяти доступен в расширенном режиме, когда к выводам портов В и С подключается внешняя память. В нашем случае используется однокристальный режим работы, поэтому доступна только внутренняя память микроконтроллера: ПЗУ, РПЗУ, ОЗУ, а порты В и С служат для обмена данными с внешними устройствами. Две последние страницы адресного пространства (адреса $EOOO-$FFFF) занимает внутреннее масочное ПЗУ, содержимое которого программируется в процессе изготовления микроконтроллера по заказу пользователя. В ПЗУ будет содержаться наша программа. РПЗУ размещена по адресам SB600-5B7FF и в данном курсовом проекте не используется ОЗУ при начальной установке микроконтроллера (процедура RESET) занимает адресное пространство $0000-$00FF. Распределение адресного пространства памяти микроконтроллера показано на рисунке 5.
Рисунок 5 – Карта распределения адресного пространства
Служебные регистры определяют конфигурацию и режимы работы микроконтроллера. Содержимое регистра INIT (рисунок 6) определяет старшие четыре разряда адреса (номер страницы) размещения ОЗУ (биты RAM3-RAM0) и блока внутренних регистров (биты REG3-REG0). При начальной установке микроконтроллера биты данного регистра принимают значения RAM3-RAM0 = 0000 (обращение к странице 0), REG3-REG0 = 0001 (обращение к странице 1). В данном курсовом проекте значения, установленные после начальной установки изменяться не будут.
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
RA |
RA |
RA |
RA |
RE |
RE |
RE |
RE |
Рисунок 6 – Служебный регистр INIT (адрес $103D)
Регистр CONFIG определяет конфигурацию микроконтроллера, разрешая или запрещая использование внутренних ПЗУ, РПЗУ и блока контроля функционирования Регистр OPTION определяет функционирование отдельных блоков микроконтроллера. Содержимое регистров HPRIO, INIT, OPTION записывается непосредственно после начальной установки микроконтроллера и затем может быть только считано. Исключение составляют только разряды PSEL3-PSEL0 в регистре HPRIO и разряды ADPU, CSEL в регистре OPTION, которые могут изменяться в процессе работы микроконтроллера путем записи в эти регистры. Содержимое регистра ONFIG программируется таким же образом, как и содержимое внутреннего РПЗУ, и может изменяться только в процессе программирования. Этим обеспечивается его сохранение при отключении питания. Синхронизация микроконтроллера формируется следующей схемой (рисунок 7).
Рисунок 7 - Схема синхронизации микроконтроллера.
Резистор R1 имеет номинал 10 МОм , конденсаторы С1, С2 – номинал 24 пФ. ZQ - кварцевый резонатор (частота 4 МГц). Схема синхронизации подключается к выводам XTAL и EXTAL микроконтроллера. Длительность такта микроконтроллера Тс = 1/Ft определяется генератором тактовых импульсов (ГТИ). Частота следования тактовых импульсов Ft задается кварцевым резонатором. При этом частота F, в 4 раза меньше частоты внешнего резонатора или генератора Ft = Fg/4.
Так как микроконтроллер работает в рабочем режиме (однокристальном или расширенном), то в процессе начальной установки при включении питания или поступлении сигнала RESET# = 0 в программный счетчик PC загружаются два байта: старший байт РСН из ячейки памяти с адресом $FFFE, младший байт PCL - SFFFF. Эти байты являются адресом первой команды, выполняемой микроконтроллером после начальной установки. Так как микроконтроллер работает в однокристальном режиме, данные байты выбираются из внутреннего. При включении питания требуется время 4064Тс для запуска ГТИ и начального состояния регистров, после чего начинается нормальная работа микроконтроллера. Для начальной установки по сигналу RESET# его длительность должна быть не меньше 4ТС. В курсовом проекте для обмена данными с внешними устройствами используются параллельные порты A, В, С и E. Порт D не используется.
К контактам порта A (адрес $1000) подключены различные периферийные устройства. К 0-му контакту подключен датчик состояния двери. Когда дверь закрыта, датчик выдает напряжение, соответствующее логической единице. При открытии двери появляется логический нуль. К 3-му контакту подключен светодиод сигнализации, который загорается в случае, если дверь холодильника открыта в течение 4 минут. К 4-му контакту подключен светодиод сигнализации, который загорается в случае невозможности поддержания заданного температурного режима. К 5-му контакту подключен зуммер, который издает звук при сигнализации.
Порт В (регистр PORTB, адрес $1004) используется как 8-разрядный порт вывода данных. Т.к. в регистре управления PIOC установлено значение разряда HNDS = 1, то порт В работает в режиме нестробированного вывода, при котором не происходит формирование стробирующего сигнала на выходе STRB. На четыре первых выхода порта B подключены светодиоды для индикации выбранного температурного режима.
В данном проекте порт С ($1006) служит для ввода температуры с соответствующего датчика.
К порту E ($100A) подключены кнопки задания температурного режима.
В контроллере имеется встроенный таймер. Он реализован на базе 16-разрядного счетчика TCNT (адрес старшего байта $100Е, адрес младшего байта $100F). Этот счетчик запускается при начальной установке микроконтроллера, и после запуска его состояние может быть только считано, например командами LDD, LDX, LDY.
Функционирование таймера определяется 8-разрядными регистрами управления. В данном курсовом проекте таймер используется для периодической генерации запросов прерывания. Для разрешения генерации прерывания реального времени устанавливаем бит RTII регистра TMSK2 (адрес $1024) в 1.
Для прерываний используется специальный флаг RTIF в регистре TFLG2 (адрес $1025). Этот флаг принимает значение RTIF = 1 через заданное время Т = 8192TCKt, где величина коэффициента Кt определяется разрядами RTR1-RTR0 в регистре PACTL (адрес $1026). Сброс признака RTIF в состояние 0 производится путем записи соответствующего значения в регистр TFLG2.
Регистры TMSK2, TFLG2 и PACTL представлены на рисунке 10.
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|
TOI |
RTII |
PAOVI |
PAII |
0 |
0 |
PR1 |
PR0 |
TMSK2 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|
DDRA7 |
PAEN |
PAMOD |
PEDGE |
0 |
0 |
RTR1 |
RTR0 |
PACTL |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|
TOF |
RTIF |
PAOVF |
PAIF |
0 |
0 |
0 |
0 |
TFLG2 |
Рисунок 10 - Регистры TMSK2, TFLG2 и PACTL
Электрическая принципиальная схема устройства управления холодильником представлена на чертеже БГУИ.000701.027Э3.
