Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Конспект МПТ.doc
Скачиваний:
10
Добавлен:
12.11.2019
Размер:
4.89 Mб
Скачать

8.7.4. Отладочный монитор

Отладочный монитор — специальная программа, загружаемая в память отлаживаемой системы. Она вынуждает процессор пользователя производить, кроме прикладной задачи, еще и отладочные функции.

  • • загрузку прикладных кодов пользователя в свободную от монитора память;

  • установку точек останова;

  • • запуск и останов загруженной программы в реальном времени;

  • • проход программы пользователя по шагам;

  • • просмотр, редактирование содержимого памяти и управляющих регистров.

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

Достоинством этого подхода являются очень малые затраты при сохранении возможности вести отладку в реальном времени.

Главный недостаток - отвлечение ресурсов микроконтроллера на отладочные и связные процедуры (монитор занимает некоторый объем памяти, прерывания, последовательный канал).

Объем отвлекаемых ресурсов зависит от искусства разработчика монитора. В последнее время появились изделия, практически не занимающие аппаратных ресурсов процессора.

8.7.5. Эмуляторы пзу

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

Идея эмулятора ППЗУ очень проста. Коды управляющих программ контроллера, написанных и оттранслированных с помощью персонального компьютера, мы записываем в ОЗУ, которое затем включается в схему контроллера вместо ППЗУ. После этого проверяется работа контроллера в целом. В случае необходимости программы очень легко поменять и снова перезагрузить их в ОЗУ. Полностью отлаженные на реальной рабочей схеме контроллера программы записываются в ППЗУ. Таким образом, процесс отладки существенно упрощается.

Рис 8.5. Структурная схема эмулятора ПЗУ

Структура эмулятора (рисунок 8) помимо собственно микросхемы ОЗУ объемом 32 К х 8 содержит интерфейсную часть (ИЧ), 15-разрядный регистр адреса, 16-разрядный двухканальный мультиплексор адреса и сигнала выбора ОЗУ и два 8-разрядных буфера данных. Схема работает в одном из двух возможных режимов (сигнал РЕЖИМ): записи информации из компьютера в ОЗУ и эмуляция ППЗУ.

В режиме записи информации ОЗУ находится в состоянии записи, мультиплексор пропускает на свои выходы код адреса ОЗУ с регистра адреса, нижний (по схеме) буфер данных открыт и пропускает на входы данных ОЗУ данные с ИЧ, верхний (выходной) буфер данных закрыт. Для записи каждой ячейки ОЗУ сначала в регистр адреса по сигналам ЗА1 и ЗА2 записывается адрес этой ячейки, а затем в нее производится запись данных по сигналу ЗД.

В режиме эмуляции ОЗУ переводится в режим чтения, мультиплексор пропускает адрес и сигнал CS с отлаживаемого контроллера, нижний буфер данных закрыт, а верхний (выходной) передает данные из ОЗУ на отлаживаемый контроллер. То есть ОЗУ выступает в качестве ППЗУ.

Сопряжение эмулятора с компьютером можно осуществлять различными способами: через ISA, через Centronics и даже через RS-232С (так как протокол обмена предельно прост, и скорость обмена с компьютером абсолютно некритична). Стоит отметить, что для отладки самой схемы эмулятора весьма полезной оказывается возможность проверки правильности информации, записанной в ОЗУ. Для реализации этого режима требуется использовать двунаправленный буфер данных для обмена с ИЧ. Но схема эмулятора при этом несколько усложнится, и протокол обмена с ней уже не будет настолько простым.

Ранние эмуляторы ПЗУ позволяли только загружать программу, запускать ее и останавливать, используя общий сброс Затем появились усложненные модели с аппаратной выработкой сигналов трассировки на осциллограф по достижении определенного адреса Эмулируемая память в таких изделиях была доступна для просмотра и модификации но очень важный контроль за внутренними управляющими регистрами микроконтроллера был до недавнего времени невозможен.