Скачиваний:
144
Добавлен:
21.02.2014
Размер:
1.47 Mб
Скачать

2.2 Режимы работы.

Всего существует четыре режима работы микроконтроллера MC68HC11E9: однокристальный, расширенный, а также специальные режимы загрузки и теста. В таблице 2-1 показано, каким образом выбираются эти режимы.

2.2.1 Однокристальный режим.

В однокристальном режиме микроконтроллер работает без использования внешних шин адреса и данных. Порты A и B и выводы STRA и STRB функционируют как вводы/выводы общего назначения и сигналы квитирования (Более подробная информация представлена в главе 4. Параллельный ввод/вывод).

2.2.2 Расширенный режим.

В расширенном режиме работы микроконтроллер MC68HC11E9 способен адресовать пространство объемом в 64 Кбайта. Все это адресное пространство включает в себя те же участки памяти, что и в однокристальном режиме, плюс внешние память и периферию. Адресация производится с помощью портов B и C, а также управляющих сигналов AS и R/W/. На рисунке 2-4 показан рекомендуемый вариант демультиплексирования младшего байта адреса и данных передающихся по порту C. Адрес и сигналы R/W/ и AS действуют на протяжении всех циклов шин, включая доступ и ко внутренним участкам памяти.

Рисунок 2-4. Демультиплексирование адреса и данных.

2.3 Специальный режим загрузки.

Данный режим позволяет произвести загрузку программы во встроенное ОЗУ по последовательному асинхронному интерфейсу и запустить программу на выполнение. Программа загрузчика находится в 192-байтовом участке ПЗУ в ячейках $BF40-$BFFF. Этот участок ПЗУ становится доступным только в специальном режиме загрузки. Программа загрузчика использует последовательный интерфейс связи SCI для загрузки во внутреннее ОЗУ программы длиной вплоть до 512 байт по адресам ОЗУ $0000-$01FF. После загрузки последнего байта управление автоматически передается по адресу $0000.

Соединение микроконтроллера следует производить через порт SCI. После сброса SCI работает с тактовой частотой E/16, что, например, означает скорость обмена 7812 бод для тактовой частоты E = 2 МГц. Если установлен бит защиты данных, то передатчик SCI выводит значение $FF. В этом случае также происходит очистка содержимого ЭСППЗУ. При неудачной попытке очистки ЭСППЗУ снова выводится значение $FF и попытка очистить ЭСППЗУ повторяется. После успешного стирания содержимого ЭСППЗУ происходит запись во все ячейки ОЗУ значения $FF и очищается регистр CONFIG. Потом процесс продолжается, как если бы режим защиты данных не был установлен.

Примечание

Если не выбран режим защиты данных, то код проверки и очистки ЭСППЗУ не включается в ПЗУ стартового загрузчика.

Если режим сокрытия данных не установлен или описанная выше последовательность очистки удачно завершилась, передатчик SCI выводит символ останова. Для нормального использования программы стартового загрузчика пользователь должен послать значение $FF приемнику SCI на частое E/16 (7182 бода для частоты 2 МГц) или частоте E/104 (1200 бод для частоты 2 МГц).

Примечание

Это значение $FF, в отличие от остальных передаваемых данных, не отображается эхом через передатчик SCI.

Далее пользователь должен передать не более 512 байт, которые будут размещены в ОЗУ, начиная с адреса $0000. Эти символы эхом отображаются передатчиком. После завершения загрузки, программа загрузчика осуществляет переход по адресу $0000, после чего, естественно, начинается выполнение загруженного кода. Программа-загрузчик прекращает загрузку кодов после загрузки 512 байт или в том случае, когда линия приема данных остается свободной в течение по меньшей мере четырех циклов приема.

Если используется вывод передатчика SCI, то, так как выводы порта D сконфигурированы для работы по операции ИЛИ, требуется внешний нагрузочный резистор.

В специальном режиме загрузки вектора прерываний отображаются на ОЗУ, как показано в таблице 2-3. Это позволяет использовать эти прерывания с помощью таблицы преходов. Например, для использования прерывания SWI пользователь должен поместить в ОЗУ по адресам $00F4, $00F5 и $00F6 команду перехода. При возникновении прерывания SWI вектор (который находится в ПЗУ загрузчика) передает управление на ячейку памяти ОЗУ с адресом $00F4, где в свою очередь команда JMP осуществляет переход на подпрограмму обработки прерывания. Программа, выполняющая функции защиты длиннее основного загрузчика, поэтому варианты поставки с сокрытием данных могут не иметь заполненной таблицы псевдовекторов.

Адрес

Вектор

$00C4

SCI

$00C7

SPI

$00CA

Входной фронт счетчика импульсов

$00CD

Переполнение счетчика импульсов

$00D0

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

$00D3

Выходное сравнение 5 таймера

$00D6

Выходное сравнение 4 таймера

$00D9

Выходное сравнение 3 таймера

$00DC

Выходное сравнение 2 таймера

$00DF

Выходное сравнение 1 таймера

$00E2

Входной захват 3 таймера

$00E5

Входной захват 2 таймера

$00E8

Входной захват 1 таймера

$00EB

Прерывания реального времени

$00EE

IRQ

$00F1

XIRQ

$00F4

SWI

$00F7

Неверный код команды

$00FA

Сброс системы слежения

$00FD

Сброс тактового монитора

$BF40(старт)

Сброс

Таблица 2-3. Вектора прерываний режима загрузки.

Соседние файлы в папке МС68НС11Е9