Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Записка_КП_Зданович.docx
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
1.93 Mб
Скачать

1 Структурная организация

Структура контроллера, содержащая блоки, которые должны входить в состав устройства согласно заданию, представлена на рисунке 1.

Рисунок 1 – Структурная схема контроллера

Согласно техническому заданию, ОМК должен содержать ПБ, ОЗУ, ПЗУ, параллельные порты, последовательный порт, 2 внешних прерывания.

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

Ввод данных осуществляется в последовательном формате. Для этого необходимо, чтобы микроконтроллер имел последовательный канал. Согласно техническому заданию, режим ввода должен быть асинхронным, программируемым. Данными характеристиками обладает универсальный асинхронный приёмопередатчик UART.

Для вывода данных в параллельном формате в 2 источника по прерыванию необходимо, чтобы контроллер имел как минимум 2 внешних запроса прерывания INT0 и INT1, а также параллельные порты.

2 Алгоритмы обработки и управления

Согласно полученному заданию, МПУ должно функционировать по следующему алгоритму:

  1. установка скорости передачи данных по последовательному каналу в зависимости от включенных тумблеров;

  2. ввод двоично-десятичных данных через последовательный канал, запись их в массив;

  3. преобразование двоично-десятичных данных в двоичный код;

  4. выборка максимального элемента из массива данных;

  5. вывод максимального элемента массива в приемник по запросу прерывания от него;

Общая блок-схема алгоритма работы МПУ представлена на рисунке 2. На схеме под обработкой массива понимается приведение его элементов, записанных в двоично-десятичном коде, к элементам в двоичном коде. Блок-схема обработки массива и нахождение максимального элемента представлена на рисунке 3. Здесь введены обозначения:

  • i – номер элемента массива

  • tmp – число для записи промежуточных результатов

  • max – искомый максимальный элемент массива

Блок-схема преобразования двоично-десятичного двухбайтового числа к двоичному числу представлена на рисунке 4. Здесь каждые 4 бита двоично-десятичного числа записаны в своей ячейке массива.

Блок-схема обработки прерываний представлена на рисунке 5.

Рисунок 2 – Общая блок-схема алгоритма работы МПУ

Рисунок 3 – Блок-схема обработки массива и нахождения максимального элемента

Рисунок 4 – Блок-схема преобразования двоично-десятичных чисел к двоичным

Рисунок 5 – Блок-схема обработки прерываний

3 Выбор элементной базы

3.1 Выбор омк

Выбранный в соответствии с техническим заданием ОМК должен обладать функциональной полнотой, чтобы минимизировать число внешних компонентов, необходимых для реализации требуемого МПУ, иметь минимальное количество неиспользуемых линий ввода-вывода, минимальные энергопотребление и стоимость [2].

Исходя из технического задания и структурной схемы, требуется подобрать ОМК, в состав которого входят следующие элементы:

  • ОЗУ;

  • ПЗУ;

  • контроллер прерываний;

  • 25 линий ввода-вывода (10 линий для подключения приемников, 1 линия для выбора приемника, 1 линия для ввода информации через последовательный канал, 1 линия для схемы сброса, 5 линий для задания скорости работы последовательного канала, 2 линии для внешних прерываний от приемников, 5 линий для индикации выбранной скорости работы последовательного канала).

Если учесть, что приемники получают информацию в определенный момент времени, то возможно подключение линий прерывания, линии ввода последовательной информации вместе с линиями для подключения приемников. Тогда всем вышеперечисленным требованиям удовлетворяет микроконтроллер ATmega8 семейства AVR фирмы Atmel, сочетающий в себе функциональность и небольшую стоимость. Отличительными особенностями данного ОМК являются: RISC-архитектура, выполнение большинства команд за один тактовый цикл, ОЗУ объемом 1 Кбайт, ПЗУ объемом 8 Кбайт, 23 линии ввода-вывода общего назначения, встроенный порт UART, внутренние и внешние источники прерываний [5].

Как правило, модель ATmega8 содержится во всех средствах компиляции и отладки, поэтому выбор этого ОМК позволит упростить процесс разработки программного обеспечения.

Таблица 1 - Распределение ресурсов ОМК:

Наименование вывода

Назначение

RESET

Сброс

INT0

Прерывание от приемника 2

INT1

Прерывание от приемника 1

PC0 – PC4

Линии задания скорости UART

PC5

Корректность ввода скорости

PB0 – PB7

Приемник 1

PD0 – PD7

Приемник 2

На рисунке 6 представлено графическое обозначение микроконтроллера ATmega8 в корпусе PDIP.

Рисунок 6 – Графическое обозначение микроконтроллера ATmega8