Как отлаживать программу на C в IAR AVR Embedded Workbench 4.0 |
|
Написал microsin
|
10.03.2007 |
1. Запускаем IAR AVR Embedded Workbench, Project\Create New Project..., в Project templates выбираем С или C++ AVR Studio 4 compatible output, жмем OK.
2. Появится приглашение сохранить файл проекта. Создаем новую папку для проекта, например, 004, заходим в неё и сохраняем файл test04 (test04.ewp, лучше дать понятное имя, характеризующее проект).
3. Идем в Project\Options..., в Category\General Options, на закладке Target выбираем --cpu=tiny24, ATtiny24. В Category\Linker, на закладке Output выбираем Output format: debug (ubrof). В Category\Debugger на закладке Setup выбираем JTAGICE mkII. В Category\Debugger\JTAGICE mkII, на закладке JTAGICE mkII 1 выбираем тактовую частоту JTAG Port 100 KHz, Communication USB, Target Consistency Check - Verify All, жмем OK.
4. Добавляем в функцию main бесконечный цикл, пишем программу.
5. Выполняем Project\Debug. На предложение сохранить workspace указываем имя workspace (появится в папке 004 файл workspace.eww).
6. Проект откомпилируется и появится окно отладки.
|
Последнее обновление ( 22.07.2008 )
|
Комментарии
2009-05-0812:26:52 Спасибо за ответ.
2009-05-0716:31:52 Прошел все шаги описанные здесь и в итоге получил ругань IARa:
Building configuration: temp - Debug
Updating build tree
Linking
Error[e16]: Segment NEAR_N (size: 0×1 align: 0) is too long for segment definition. At least 0×1 more bytes needed. The problem occurred while processing the segment placement command
"-Z(DATA)NEAR_N=_..X_EXT_NV_BASE:+ _..X_EXT_NV_SIZE", where at the moment of placement the available memory ranges were "DATA:10ff1"
Error while running Linker
Total number of errors: 1
Total number of warnings: 0
Правда, я использую JTAGICE совместимый девайс - PLP002 (www.purelogic.ru), но AVRStudio 4.14 его видит и работает с ним. В чем мой прокол?
microsin: Здравствуйте, Дмитрий. Сегодня mail.ru что-то колбасит не по детски, так что извините, если письмо поздно до Вас дойдет. Почему у Вас так происходит - не знаю. Ответ надо искать в Интернете, а также попробовать поиграться с настройками проекта. Их там много, и они могут зависеть от типа пректа, который Вы создали. Если этот тип C\main, посмотрите закладки General Options -> Library Options, Heap Configuration, System, General Options -> C/C++ Compiler -> Optimizations и т. д. Короче, надо "танцевать с бубном" - менять настройки и пробовать, пробовать. Что-то Вы с настройками линкера и сегментами перемудрили. См. тут кажется Ваш случай - http://electronix.ru/forum/index.php?showtopic=30575&pid=240879&mode=threaded&start=#entry240879