Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Motorola HC11DESC_R.DOC
Скачиваний:
2
Добавлен:
15.08.2019
Размер:
1.4 Mб
Скачать

Система разработки

Практически каждый микроконтроллер любой фирмы сопровождается некоторой аппаратно-программной поддержкой. Микроконтроллер MC68HC11E9 не является исключением. В данном практикуме используется так называемая Evaluation board, что можно перевести как система для опробирования или система для макетирования. В методических пособиях будет использовать­ся термин "Система Разработки" (СР), так как, на наш взгляд, он более точно отражает назначение этой системы.

Аппаратная часть СР представляет собой печатную плату размером примерно 80x170 мм. Около половины платы занимает собственно микроконтроллер MC68HC11E9 и некоторое его окружение - система питания, цепи формирования сигнала сброса, формирователь уровней RS232, разъемы расширения и т.д.

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

Для создания рабочего места кроме СР необходим компьютер типа IBM PC или Macintosh и любая из программ - эмуляторов терминала, например Microsoft Kermit. Компьютер (в данных лабораторных работах - IBM PC совместимый) соединяется с СР посредством стандартного интерфейса RS232.

В состав программного обеспечения входят прошитый в ПЗУ микро­контроллера отладочный монитор BUFFALO, позволяю­щий произвести загрузку и отладку программного обеспечения, и кросс-ассемблер для разработки этого программного обеспече­ния.

Монитор buffalo

В ПЗУ микроконтроллера зашита программа монитора BUFFALO (Bit User's Fast Friendly Aid to Logical Operation - небольшой быстрый дружественный помощник пользователя в логических операциях).

Монитор позволяет осуществлять:

· загрузку программного обеспечения с хост-компьютера

· запуск программы на исполнение

· просмотр и изменение регистров процессора

· просмотр и изменение содержимого памяти

· просмотр программы в дизассемблированном виде

· изменение программы с помощью встроенного строкового ассемблера

· пошаговое исполнение программы

· установку точек останова

Список команд монитора BUFFALO и детали их выполнения приведены в прил.3.

Также, монитор BUFFALO содержит ряд подпрограмм, значительно облегчающих разработку пользовательского программного обеспечения. Эти подпрограммы реализуют следующие функции:

· ввод/вывод символов и строк на терминал

· преобразование ASCII символов 0-9, A-F в цифры и наоборот

· разбор входных строк и выделение пробельных и раздели­тельных символов

Адреса и назначение подпрограмм монитора приведены в прил.4. Поскольку имеется исходный текст монитора, исполь­зуемые подпрограммы могут быть впоследствии добав­лены к разработанному программному обеспечению для работы на микроконтроллерах, не содержащих прошивку BUFFALO.

Поскольку для работы монитора необходима некоторая часть ОЗУ, размер памяти, доступной для пользовательского програм­много обеспечения несколько меньше, чем содержится в микро­контроллере. При наличии BUFFALO свободными остаются 328 байт ОЗУ и все ЭСПЗУ. Необходимо также отметить, что BUFFALO не поддерживает изменения адресов ОЗУ и регистров ввода/вывода и требует ОЗУ в адресном пространстве $0000-$01FF, а регистры ввода/вывода - по адресам $1000-$103F.

Карта памяти приведена в табл.5.

Таблица 6. Карта памяти монитора BUFFALO.

Адреса

Назначение

$0000-$0047

Доступно пользователю. По умолчанию, BUFFALO устанавливает содержимое указателя стека пользовательской програм­мы равным $47.

$0048-$0065

Область стека BUFFALO.

$0066-$00C3

Область переменных BUFFALO.

$00C4-$00FF

Псевдо-векторы.

$0100-$01FF

Доступно пользователю.

$1000-$103F

Область регистров ввода/вывода.

Как описано выше, векторы прерываний процессора находятся в ПЗУ по адресам $FFD6-$FFFF. Монитор BUFFALO, прошитый в ПЗУ, направляет эти векторы в ОЗУ начиная с адреса $00C4 с шагом в 3 байта. Эту область называют областью псевдовекторов. Карта области псевдовекторов приведена в табл.7.

Если пользователь желает обрабаты­вать какое-либо прерыва­ние, он должен положить в соответ­ствующий псевдовектор команду перехода на свой обработчик. Например, если надо обрабатывать прерывания IRQ, необходимо проделать следующую последовательность действий:

1. Поместить код команды JMP ($7E) по адресу $00EE.

2. Поместить адрес пользовательского обработчика преры­ваний по адресам $00EF и $00F0.

Во время инициализации BUFFALO проверяет первый байт каждого псевдовектора. Обнаружение кода $7E означает, что соответ­ствующее прерывание будет обрабатываться пользо­ва­телем. В противном случае BUFFALO проделывает выше­описан­ную процедуру, устанавливая свой собственный обработ­чик. При возникновении не обрабатываемого пользо­вателем прерыва­ния внутренний обработчик BUFFALO остано­вит процес­сор командой STOP.

Таблица 8. Область псевдовекторов BUFFALO.

Источник прерывания

Вектор

Псевдовектор

SCI

$FFD6

$00C4

SPI

$FFD8

$00C7

Счетчик импульсов (событие)

$FFDA

$00CA

Счетчик импульсов (переполнение)

$FFDC

$00CD

Переполнение таймера

$FFDE

$00D0

IC4/OC5

$FFE0

$00D3

OC4

$FFE2

$00D6

OC3

$FFE4

$00D9

OC2

$FFE6

$00DC

OC1

$FFE8

$00DF

IC3

$FFEA

$00E2

IC2

$FFEC

$00E5

IC1

$FFEE

$00E8

Периодическое прерывание

$FFF0

$00EB

Параллельный ввод/вывод или IRQ

$FFF2

$00EE

XIRQ

$FFF4

$00F1

Программное прерывание

$FFF6

$00F4

Несуществующая команда

$FFF8

$00F7

COP Watchdog таймаут

$FFFA

$00FA

Исчезновение тактовой частоты

$FFFC

$00FD

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]