Предыдущая Следующая

ГЛАВА 30

ОТЛАДКА ПРИЛОЖЕНИЙ В ЦЕЛЕВОЙ СИСТЕМЕ

Входящий в состав IDE IAR Embedded Workbench отладчик IAR C-SPY Debugger, наряду с отладкой в режиме симуляции, может быть использован для отладки непосредственно в «железе», т. е. в составе целевой системы. Блок-схема, демонстрирующая общую структуру отладчика IAR C-SPY Debugger и способы его взаимодействия с целевой системой, изображена на Рис. 30.1. Целевая система может состоять из аппаратных средств оценочной (эволюционной) платы или аппаратных средств конкретного пользовательского устройства. Целевая система может также полностью или частично моделироваться программным обеспечением. Для каждого отдельного типа целевой системы может использоваться специализированный драйвер C-SPY.

В рамках данной книги, будет рассматриваться вариант отладки в целевой системе, при котором пользовательская прикладная программа выполняется в SRAM микроконтроллера (в нашем случае — микроконтроллера LPC2000). Для загрузки программы в SRAM и ее корректного выполнения необходимо соблюдение двух основных условий.

1. Использование соответствующего командного файла компоновщика. Например, для микроконтроллера LPC2129 следует использовать файл LPC2129_ SRAM.xcl, о котором шла речь в предыдущей главе. На Рис. 30.2, для проекта на базе микроконтроллера LPC2129, приведен пример страницы Config компоновщика XLINK с заданным командным файлом компоновщика.

2. Корректная инициализация специального регистра МЕММАР, который управляет переотображением в адресном пространстве памяти векторов прерываний LPC2000. Для выполнения программы в SRAM, регистр МЕММАР должен быть инициализирован значением 2.

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

30.1. Аппаратные средства отладчика C-SPY

Как правило, отладчик IAR C-SPYсостоит из общей части, которая обеспечивает основной набор операций отладки, и драйвера (драйверов). Драйвер C-SPYобеспечивает сопряжение с целевой системой и управление ею. Драйвер C-SPY имеет пользовательский интерфейс в виде специального меню, окон и диалоговых окон, отображающих определенные функции целевой пользовательской системы.

На момент написания этой книги, отладчик IAR C-SPY Debugger был доступен со следующими драйверами:

• драйвер симулятора;

• драйвер RDI (удаленный интерфейс отладки);

• драйвер J-Link JTAG-интерфейса;

• драйвер Macraigor JTAG-интерфейса;

• драйвер отладочного монитора Angel;

• драйвер IAR ROM-монитора.

Если на компьютере установлены два и более драйвера C-SPY, можно производить переключение между ними, выбирая нужный драйвер внутри IAR Embedded Workbench (окно Options, категория Debugger, страница Setup, поле Driver).

Ввиду того, что объем этой книги не позволяет подробно рассказать обо всех типах драйверов IAR C-SPY, остановимся на описании наиболее распространенного драйвера JTAG-интерфейса Macraigor (по названию фирмы-производителя), с помощью которого в дальнейшем нами будет производиться отладка пользовательских приложений и их загрузка в память микроконтроллера LPC2000. Этот драйвер позволяет задавать некоторое ограниченное количество точек останова кода и контрольных точек данных, а также производить выполнение кода в реальном времени с обработкой прерываний. Драйвер Macraigor не занимает места в памяти микроконтроллера. В отличие от симулятора С-SPY, Macraigor не позволяет симулировать прерывания и вести счет программным циклам при выполнении кода, а также не дает возможности «охватывать» при отладке весь выполняемый код.


Предыдущая Следующая






Warning: include(./news.php) [function.include]: failed to open stream: No such file or directory in /var/www/picprof/data/www/picprof.com/book/book4_280.html on line 128

Warning: include(./news.php) [function.include]: failed to open stream: No such file or directory in /var/www/picprof/data/www/picprof.com/book/book4_280.html on line 128

Warning: include() [function.include]: Failed opening './news.php' for inclusion (include_path='.:/usr/share/pear:/usr/share/php') in /var/www/picprof/data/www/picprof.com/book/book4_280.html on line 128