Выбрать главу

Табл. 3.4. Описание аппаратных команд модуля отладки BDM

Другая часть команд отладки исполняется под управлением программы монитора отладки, которая хранится в ПЗУ модуля BDM. Это ПЗУ располагается в общем адресном пространстве МК по адресам 0xFF00…0xFFFF. Память блока BDM доступна только в режиме отладки. В рабочем режиме ячейки памяти с этими адресами используются для других целей, в частности для размещения векторов прерываний. Перечень команд, исполняемых монитором отладки, представлен в табл. 3.5.

Имя команды Код операции Данные Описание GO 08 — Исполнять прикладную программу 10 ТRAСЕ1 — Выполнить одну команду прикладной программы и вернуться в монитор отладки 18 TAGGO — Разрешить режим отладки и вернуться к исполнению прикладной программы WRITE_NEXT 42 16 бит данных (ввод) X=X+2. Записать следующее слово по 0,X WRITE_PC 43 16 бит данных (ввод) Записать данные в счетчик команд WRITE_D 44 16 бит данных (ввод) Записать данные в аккумулятор D WRITE_X 45 16 бит данных (ввод) Записать данные в регистр X WRITE_Y 46 16 бит данных (ввод) Записать данные в регистр Y WRITE_SP 47 16 бит данных (ввод) Записать данные в указатель стека READ_NEXT 62 16 бит данных (вывод) X=X+2. Читать следующее слово по 0,X READ_PC 63 16 бит данных (вывод) Читать счетчик команд READ_D 64 16 бит данных (вывод) Читать аккумулятор D READ_X 65 16 бит данных (вывод) Читать регистр X READ_Y 66 16 бит данных (вывод) Читать регистр Y READ_SP 67 16 бит данных (вывод) Читать указатель стека 

Табл. 3.5. Команды отладки, исполняемые монитором BDM

Для того, чтобы использование команд монитора отладки стало возможным, необходимо сначала установить бит ENBDM в регистре состояния STATUS (0xFF01), а затем выполнить команду BACKGROUND. Формат регистра состояния STATUS представлен на рис. 3.6.

Рис. 3.6. Формат регистра состояния модуля отладки ВDМ

Запись бита разрешения работы монитора отладки ENBDM осуществляется командой ENABLE_FIRMWARE из перечня аппаратных команд BDM (табл. 3.3). Отметим, что если МК 68HC12B32 сконфигурирован для работы в однокристальном режиме, то во время сброса бит ENBDM устанавливается в 1. Аппаратная команда отладки BACKGROUND также передается из персонального компьютера. Эта команда переводит МК в режим работы под управлением монитора отладки, когда центральный процессор на время прекращает выполнение основной программы и реализует команды монитора отладки. Для выполнения команд монитора отладки модуль BDM анализирует состояние внутренних магистралей МК. Если команда монитора требует для реализации только один машинный цикл, то работа прикладной программы не нарушается. Если же монитору необходимо несколько циклов, то работа процессора приостанавливается до завершения выполнения отладочной команды.