- •Лабораторный практикум «проектирование микропроцессорных систем»
- •Оглавление
- •Введение
- •Лабораторная работа 1 принципы работы битового процессора
- •Введение
- •1.1. Постановка задачи и варианты ее решения
- •1.2. Пример подготовки к выполнению лабораторной работы
- •Программа
- •1.3. Рекомендации по разработке и отладке программы на программно-логической модели
- •Назначение разрядов порта р1
- •1.4. Порядок отладки микропроцессорной системы на стенде
- •Соотношение контактов порта р4 и контактов плис
- •Варианты заданий
- •Варианты заданий
- •Лабораторная работа 2 микропроцессорная система для тестирования алу
- •Введение
- •2.1. Пример подготовки к выполнению лабораторной работы
- •2.2. Рекомендации по подключению внешних устройств к системной шине и порту р4 микроконтроллера Варианты подключения внешних устройств через системную шину
- •Варианты решения для двух источников данных
- •Варианты решения для четырёх источников данных
- •Варианты решения для четырёх приёмников данных
- •Подключение внешних устройств к порту р4
- •2.3. Последовательность и способы отладки микропроцессорной системы для тестирования алу
- •Текст программы обработки прерывания от клавиатуры
- •Оформление отчета о проделанной работе
- •Список литературы
- •115409, Москва, Каширское ш., 31
1.4. Порядок отладки микропроцессорной системы на стенде
Для отладки программы и проверки работы реального МК в составе УЛС следует создать в системе Xilinx проект соединения регистров и индикаторов на стенде с контактами порта Р4 через контакты ПЛИС.
Выходы порта Р4 соединяются с контактами ПЛИС, причем с теми же контактами, через которые могут выводиться сигналы на индикаторы А и В (табл. 1.3).
Таблица 1.3
Соотношение контактов порта р4 и контактов плис
Контакты порта Р4 |
Контакты ПЛИС |
Индикаторы стенда |
0 |
P14 |
A0 |
1 |
P9 |
A1 |
2 |
P6 |
A2 |
3 |
P3 |
A3 |
4 |
P39 |
B0 |
5 |
P36 |
B1 |
6 |
P27 |
B2 |
7 |
P24 |
B3 |
Для создания проекта кроме элементов из библиотеки Maket на схеме должны быть размещены обозначения выходных контактов ПЛИС – OPAD (для МК – это контакты порта Р4, по которым поступают входные сигналы), входных контактов ПЛИС – IPAD (для МК – это контакты порта Р4, на которые поступают выходные сигналы). Этим контактам присвоены соответствующие имена. Между контактами, источниками и приемниками сигналов на ПЛИС располагаются соответствующие буферные элементы – IBUF и OBUF. Эти элементы всегда используются для вывода из ПЛИС или ввода в ПЛИС однонаправленного сигнала (Pad – контактная площадка, которая подсоединена к контакту корпуса ПЛИС – Pin).
Если какой-то сигнал (контакт порта Р4) является для ПЛИС выходным (для МК – входным), то подключение выполняется следующим образом.
Из библиотеки элементов извлекается элемент OPAD необходимой разрядности. Этому контакту присваивается имя, номер контакта и тип (рис.1.16):
Reference – своё имя (возможно наименование сигнала или номер контакта порта Р4, например Р4_4);
Name – выбрать LOC;
Description – P39 (для контакта, связанного с контактом Р4.4).
Рис. 1.16. Окно редактирования элемента OPAD
Следует помнить, что состояние источника сигнала при этом одновременно будет отображаться на соответствующем светодиоде индикатора А или В.
Для случая, когда какой-то сигнал (контакт порта Р4) является для ПЛИС входным (для МК – выходным), из библиотеки элементов извлекается элемент IPAD и производятся действия, аналогичные как и для элемента OPAD.
Схема внешнего устройства – источника и приемника сигна- лов – показана на рис. 1.17.
Рис. 1.17. Схема источника и приемника сигналов – проект, загружаемый в ПЛИС
Сигнал, соответствующий выходной функции, и сигнал подтверждения подключены к индикатору С. Этого можно было бы и не делать, так как состояние сигнала на контакте Р4.7 отображается на светодиоде В3, а состояние сигнала на контакте Р4.6 – на светодиоде В2.
Проект должен быть сохранён на сетевом диске U компьютера.
Для отладки программы на УЛС необходимо соблюдать строгую последовательность действий.
1. Выполнить размещение проекта Xilinx на кристалле (Impleventation).
2. Загрузить проект в УЛС.
Тумблер СТ на лицевой панели УЛС должен находиться в положении ВЫКЛ. Монитор-отладчик УЛС должен быть в исходном состоянии, для этого необходимо нажать на кнопку RESET на лицевой панели УЛС.
Генератор импульсов ГОИ1 на стенде должен быть включен в непрерывном режиме. Для созданного проекта на ПЛИС в этом нет необходимости, но от этого генератора работает и МК, для которого необходим именно этот режим.
3. Загрузить пользовательскую программу в УЛС.
На рабочем столе Windows дважды щёлкнуть мышью на пиктограмме системы:
Откроется главное окно управляющей программы – MCS51 (рис. 1.18).
Рис. 1.18. Главное окно управляющей программы
По умолчанию при входе в систему открываются функциональные окна: программное окно (Program Window), окно памяти данных (Data Memory Window). Последнее в данной работе не требуется.
Открытие пользовательской программы доступно во вкладке меню «File», а также на панели быстрого доступа и с помощью «горячей клавиши».
Открытие программы и её отображение в программном окне осуществляется по файлу листинга – *.lst, однако код программы, загружаемый в МК, формируется из Hex-файла, в связи с чем необходимо проверить наличие Hex-файла в директории файла листинга!
Код выбранной программы отображается в программном окне (рис. 1.19).
Рис. 1.19. Программное окно с загруженным кодом пользовательской программы
Отладка и выполнение программы, загруженной в МК стенда с помощью управляющей программы MCS51, могут выполняться в трёх режимах: «Основной», «Останов в КТ» и «Трассировка». Основной режим используется в тех случаях, когда необходимо наблюдать только конечный результат работы программы и в этом случае программа должна непрерывно выполняться (быть зацикленной). Этот режим и необходим при выполнении лабораторной работы.
После открытия программы пользователю становятся доступны кнопки Load и Load+Go.
При выполнении функции Load код, представленный в программном окне, загружается в эмулятор постоянного запоминающего устройства (ПЗУ), по результатам загрузки выдаются системные сообщения, становится доступной кнопка Go, при выборе которой происходит запуск на исполнение пользовательской программы, предварительно загруженной в эмулятор ПЗУ.
При выполнении функции Load+Go выполняется загрузка и автоматический запуск пользовательской программы.
Касаясь рассматриваемого примера, программный код которого представлен на рис. 1.19, обратим внимание на присутствие в коде ожидания сигнала разрешения и его снятия. В основном режиме выполнение программы будет приостановлено до момента выдачи сигнала разрешения (в нашем примере на регистре УЛС, см. рис. 1.17). После получения сигнала разрешения выполнение программы автоматически продолжается.
При отладке микропроцессорной системы и демонстрации её работы преподавателю необходимо показать, что после задания набора переменных на регистре УЛС и последующего изменения уровней сигнала разрешения – активный/пассивный – на индикаторе отображаются правильные изменения сигнала подтверждения и верное значение логической функции. Так как содержимое внутренней памяти данных МК при работе на стенде недоступно, то работа с различными банками регистров на УЛС не проверяется.
Оформления отчёта по лабораторной работе не требуется.