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

Можно вручную модифицировать содержимое памяти, редактируя значения в окне Memory. Для этого следует поместить курсор на ячейку памяти, подлежащую редактированию, и набрать с клавиатуры ее новое значение.

4. Закройте окно Memory.

25.4.9. Просмотр окна терминала ввода/вывода

При отладке приложения, может возникнуть необходимость отладки команд, использующих функции stdin и stdout, даже при отсутствии поддерживающих их аппаратных средств. C-SPY позволяет разработчику моделировать функции stdin и stdout, используя окно Terminal I/O.

Примечание. Окно Terminal I/O будет доступно в C-SPY только в том случае, если компоновка проекта производится с использованием опции вывода компоновщика With I/O emulation modules. Это означает, что некоторые подпрограммы нижнего уровня будут непосредственно связаны с функциями stdin и stdout окна Terminal I/O.

Просмотр терминала ввода/вывода осуществляется следующим образом: надо выбрать View>Terminal I/O, чтобы отобразить операции ввода/вывода, как показано на Рис. 25.24. Содержимое окна Terminal I/O зависит от того, как долго выполнялось приложение.

25.4.10. Завершение выполнения приложения

Чтобы завершить выполнение приложения, нужно выполнить следующие действия:

1. Выбрать Debug>Go. Альтернативно, можно нажать на кнопку Go на инструментальной панели. Это вызовет выполнение (симуляцию выполнения) приложения в реальном времени. Если управление больше не попадает на точки останова, C-SPY достигает конца приложения и производит выход из программы, о чем выдает сообщение в окне Debug Log, как показано на Рис. 25.25.

Процесс завершения приложения будет также отображен в окне Terminal I/O. Если необходимо снова запустить отлаживаемое приложение, следует выбрать в меню Debug>Reset, или «кликнуть» на кнопке Reset в инструментальной панели.

2. Для выхода из C-SPY следует выбрать Debug>Stop Debugging. Альтернативно, можно нажать на кнопку Stop Debugging на инструментальной панели. На экране отобразится рабочая область.

ГЛАВА 26

СОВМЕСТНОЕ ИСПОЛЬЗОВАНИЕ В ПРИЛОЖЕНИИ МОДУЛЕЙ НА С И НА АССЕМБЛЕРЕ

В некоторых проектах может возникнуть необходимость написать какие-то части исходного текста на языке ассемблера, в то время как остальные части написаны на языке С. IAR Embedded Wbrkbench предоставляет разработчику такую возможность. В указанных случаях, необходимо соблюдать определенные соглашении о вызовах, действующее при вызове модулей ассемблера из модулей С/С ++ или наоборот. Используя это соглашение, можно легко комбинировать исходные модули, написанные на С, с модулями, написанными на ассемблере. Указанные возможности применимы также и к проектам, содержащим исходные модули, написанные на встроенном С++ (Embedded С++).

26.1. Соглашение о вызовах

При записи ассемблерной подпрограммы, которая будет вызываться из подпрограммы на С, необходимо учитывать соглашение о вызовах, используемое компилятором. В качестве примера использования такого соглашения, ниже будет описана последовательность создания «скелетного» кода на С и разрешения компилятору генерировать из этого кода выходной файл на ассемблере.


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



НА ГЛАВНУЮ | ЧТО ТАКОЕ PIC ? | ПРОГРАММАТОР | ПРОЕКТЫ | СТАТЬИ | ССЫЛКИ | КАРТА САЙТА
Hosted by uCoz