Можно вручную модифицировать содержимое памяти, редактируя значения в окне 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 ? | | ПРОГРАММАТОР | | ПРОЕКТЫ | | СТАТЬИ | | ССЫЛКИ | | КАРТА САЙТА |