реклама на сайте
подробности

 
 
> ARM-USB-OCD
segment
сообщение Mar 27 2009, 20:22
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 352
Регистрация: 10-08-06
Из: Санкт-Петербург
Пользователь №: 19 471



Собсно есть ARM-USB-OCD, есть макетка от Олимекса с LPC2129. Пытаюсь дебажить, точнее залить во флеш программу, но не выходит crying.gif
Запускаю openOCD с обычным cfg, он видит JTAG, все ок тут.
Открываю свойства проекта в IAR, выбираю GDB Server, localhost, ставлю чтобы Verify after download, и нажимаю залить и отладить. В итоге ошибка что не верный выходной файл проекта - мол
Код
Fri Mar 27 23:21:40 2009: ELF/DWARF Error: Unknown


В пункте Build converter выбираю Intel Extended и генерю hex, но он видимо идет не как основной и дебагер его не цепляет.. помогите, я наверно чтото не так делаю
Go to the top of the page
 
+Quote Post
2 страниц V   1 2 >  
Start new topic
Ответов (1 - 19)
KRS
сообщение Mar 27 2009, 20:42
Сообщение #2


Профессионал
*****

Группа: Модераторы
Сообщений: 1 951
Регистрация: 27-08-04
Из: Санкт-Петербург
Пользователь №: 555



в IAR flash loader берет файлы simple code (IAR ровский формат). Надо что бы он генерировался

причем этот файл должен быть в дополнение к обычному для IAR (elf для 5ки),
но насколько я помню в 5ке по умолчанию настроено все что бы симплкод генерировался...

Сообщение отредактировал KRS - Mar 27 2009, 20:45
Go to the top of the page
 
+Quote Post
segment
сообщение Mar 27 2009, 21:15
Сообщение #3


Местный
***

Группа: Участник
Сообщений: 352
Регистрация: 10-08-06
Из: Санкт-Петербург
Пользователь №: 19 471



просто по умолчанию всегда генерируется файл( его имя указывается в Linker ) к примеру project.out и рядом с ним разные форматы которые я могу настроить в Build Conventer.. собсно а как подменить то файлы? чего мне делать то теперь?

Или все это решается покупкой J-Link ?
Go to the top of the page
 
+Quote Post
KRS
сообщение Mar 27 2009, 23:29
Сообщение #4


Профессионал
*****

Группа: Модераторы
Сообщений: 1 951
Регистрация: 27-08-04
Из: Санкт-Петербург
Пользователь №: 555



Цитата(Сега @ Mar 28 2009, 00:15) *
просто по умолчанию всегда генерируется файл( его имя указывается в Linker ) к примеру project.out и рядом с ним разные форматы которые я могу настроить в Build Conventer..

правильно!
у IAR flashloader - это специальная прога, которая используя фичи IARовского отладчика с компа счтитывает файл и шьет его. Т.е. запрос и парсирование файла осуществляется в АРМ.
Файл нужен в формате IAR Simple code.
Создайте чистый проект, в настройках по умолчанию для дебаг будут нужные параметры, что бы получить simple code.
я отлаживал разными отладчиками, все ок!
Go to the top of the page
 
+Quote Post
segment
сообщение Mar 28 2009, 13:14
Сообщение #5


Местный
***

Группа: Участник
Сообщений: 352
Регистрация: 10-08-06
Из: Санкт-Петербург
Пользователь №: 19 471



Как я отлаживаю сейчас, после пары половых актов с отладчиком и заменой паленого кварца изза которого я мучался в недоумении в течение нескольких дней:
- загружаю программу через lpc21isp.exe
- запускаю openOCD
- Run without downloading

Всетаки не смог понять почему не хочет грузить через жтаг.. сделал новый чистый проект - посмотрел настройки - сделал такие же, не катит..
Конечно по сути я быстро гружу софтину, но вот каждый раз запускать заного openOCD бесит.. хелп
Go to the top of the page
 
+Quote Post
KRS
сообщение Mar 28 2009, 21:08
Сообщение #6


Профессионал
*****

Группа: Модераторы
Сообщений: 1 951
Регистрация: 27-08-04
Из: Санкт-Петербург
Пользователь №: 555



А какая ошибка то?
FlashLoader загружается? он уже ошибку выдает?
Вы лог дебагера вставте сюда.
Go to the top of the page
 
+Quote Post
segment
сообщение Mar 28 2009, 21:30
Сообщение #7


Местный
***

Группа: Участник
Сообщений: 352
Регистрация: 10-08-06
Из: Санкт-Петербург
Пользователь №: 19 471



Лог openOCD
Код
Open On-Chip Debugger (2008-06-19 19:00) svn: 717
URL: http://svn.berlios.de/svnroot/repos/openocd/trunk
Info:    options.c:50 configuration_output_handler(): jtag_speed: 3, 3
Info:    options.c:50 configuration_output_handler(): Open On-Chip Debugger (2008-06-19 19:00) svn: 717
Info:    jtag.c:1389 jtag_examine_chain(): JTAG device found: 0x4f1f0f0f (Manufacturer: 0x787, Part: 0xf1f0, Version: 0x4)
Info:    jtag.c:1389 jtag_examine_chain(): JTAG device found: 0x4f1f0f0f (Manufacturer: 0x787, Part: 0xf1f0, Version: 0x4)

А лог дебагера
Код
Sun Mar 29 00:28:09 2009: ELF/DWARF Error: Unknown
Sun Mar 29 00:28:09 2009: 0 bytes verified (0.00 Kbytes/sec)
Sun Mar 29 00:28:09 2009: Failed to load debugee: G:\Work\IAR\Debug\Exe\project.out


Если ставлю галку " Use flash loader(s) " в настройках Debuger->Download, а потом жму Download and run то IAR чото виснет, отрубаю ARM-USB-OCD - после этого IAR очухивается ну и само собой говорит что error просто, типа отрубили..
Go to the top of the page
 
+Quote Post
KRS
сообщение Mar 28 2009, 21:35
Сообщение #8


Профессионал
*****

Группа: Модераторы
Сообщений: 1 951
Регистрация: 27-08-04
Из: Санкт-Петербург
Пользователь №: 555



А что лог дебагера всего 3 строчки?
( у меня сейчас IAR нет под рукой, могу только в понедельник посмотреть живьем)
но насколько я помню там побольше всего должно быть.
Flash Loader туда много чего пишет, что он стартанул например....

А у вас с настройках flashloader включен? конфигурация для LPC2129
там еще в параметрах flashloader нужно частоту кварца указатьв khz
(но если 12 Mhz кварц и так работает)
Go to the top of the page
 
+Quote Post
segment
сообщение Mar 28 2009, 21:42
Сообщение #9


Местный
***

Группа: Участник
Сообщений: 352
Регистрация: 10-08-06
Из: Санкт-Петербург
Пользователь №: 19 471



Я настройки частоты вообще не увидел.. вот то что есть

а, вот, если поставить так как на скриншоте то лог
Код
Sun Mar 29 00:40:02 2009: Loaded macro file: C:\Program Files\IAR Systems\Embedded Workbench 5.4 Evaluation\arm\config\flashloader\NXP\LPC21xx22xx.mac
Sun Mar 29 00:40:03 2009: 2048 bytes downloaded and verified (3.21 Kbytes/sec)
Sun Mar 29 00:40:03 2009: Loaded debugee: C:\Program Files\IAR Systems\Embedded Workbench 5.4 Evaluation\arm\config\flashloader\NXP\FlashLayout2RAM16K.out
Sun Mar 29 00:40:03 2009: Target reset

Эскизы прикрепленных изображений
Прикрепленное изображение
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
KRS
сообщение Mar 28 2009, 23:13
Сообщение #10


Профессионал
*****

Группа: Модераторы
Сообщений: 1 951
Регистрация: 27-08-04
Из: Санкт-Петербург
Пользователь №: 555



Цитата(Сега @ Mar 29 2009, 01:42) *
Я настройки частоты вообще не увидел.. вот то что есть

А частота это параметр бутлоадера
там где ,,,,default - это парамтеры бутлоадера, насколько я помню там надо дописать, что то типа clock_freq=xxx ( но точно не помню), обычно и так шьет.
Судя по логу у вас IAR все прошивает!! А дебагер не стартует потому что ему файл не нравится уже основной!

Хотя нет, опять лог дебагера не полный, там должно быть больше строк!
Код
Sun Mar 29 00:40:03 2009: 2048 bytes downloaded and verified (3.21 Kbytes/sec)

вот эта строчка странная к чему она относится не понятно,
вот если бы она после загрузки flashloaderа стояла...

Сообщение отредактировал KRS - Mar 28 2009, 23:24
Go to the top of the page
 
+Quote Post
segment
сообщение Mar 29 2009, 08:23
Сообщение #11


Местный
***

Группа: Участник
Сообщений: 352
Регистрация: 10-08-06
Из: Санкт-Петербург
Пользователь №: 19 471



То что 2048 прошивает - это фигня какаято, у меня размер всегда меняется и в тот момент был 9кб, так что неизвестно что и куда он заливает...


У кого есть ARM-USB-OCD под рукой и IAR - прошу, проверьте или скажите по пунктам как прошивать( во флеш и в рам ), очень нужно, я уже все перепробовал!
Go to the top of the page
 
+Quote Post
KRS
сообщение Mar 29 2009, 08:49
Сообщение #12


Профессионал
*****

Группа: Модераторы
Сообщений: 1 951
Регистрация: 27-08-04
Из: Санкт-Петербург
Пользователь №: 555



IAR еще сам загрузчик ( FLashLoader) грузит, он может и занимает 2 кб, но почему запись в логе раньше.
Хотя судя по следующей строке, что загружен FlashLoader (Loaded) это относится к нему.
В общем судя пол логу сам FlashLoader у вас загружен и проверен!
Но почему на этом лог обрывается непонятно.

Вам надо посмотреть макро файл флеш лоадера
C:\Program Files\IAR Systems\Embedded Workbench 5.4 Evaluation\arm\config\flashloader\NXP\LPC21xx22xx.mac

мне, когда я шил через wiggler приходилось это файл менять ( я отключал запись в регистры, отключение pll и т.д. но шить можно было только после hardware reset, но это и так делалось).
Go to the top of the page
 
+Quote Post
segment
сообщение Mar 29 2009, 08:52
Сообщение #13


Местный
***

Группа: Участник
Сообщений: 352
Регистрация: 10-08-06
Из: Санкт-Петербург
Пользователь №: 19 471



Вот он.. что с ним не так?
Код
execUserFlashInit()
{  
    // Disable the PLL.
    __writeMemory32(0x00000000, 0xE01FC080, "Memory"); // PLLCON = 0
    // Qualify the PLL change.
    __writeMemory32(0x000000AA, 0xE01FC08C, "Memory"); // PLLFEED = 0xAA
    __writeMemory32(0x00000055, 0xE01FC08C, "Memory"); // PLLFEED = 0x55

    // Make sure that the flash memory system is correctly setup.
    __writeMemory32(0x00000000, 0xE01FC000, "Memory"); // MAMCR = 0
    __writeMemory32(0x00000007, 0xE01FC004, "Memory"); // MAMTIM = 7
    __writeMemory32(0x00000002, 0xE01FC000, "Memory"); // MAMCR = 2

    // If the MAM values was wrong, a dummy read is necessary to get the flash memory in sync.
    __writeMemory32(0x00000001, 0xE01FC040, "Memory"); // MEMMAP = 1
    __readMemory32(0x00000000, "Memory");
}
Go to the top of the page
 
+Quote Post
KRS
сообщение Mar 29 2009, 09:23
Сообщение #14


Профессионал
*****

Группа: Модераторы
Сообщений: 1 951
Регистрация: 27-08-04
Из: Санкт-Петербург
Пользователь №: 555



А вы закомментируйте там все!
А лучше поставьте вывод сообщений в начале и в конце
типа
Код
    __message "-----START flash init";


    __message "-----END flash init";

тогда они должны в логе появится!
Go to the top of the page
 
+Quote Post
segment
сообщение Mar 29 2009, 16:46
Сообщение #15


Местный
***

Группа: Участник
Сообщений: 352
Регистрация: 10-08-06
Из: Санкт-Петербург
Пользователь №: 19 471



Так, вставил, вот лог. Ошибка выдается такаяже - что неверный формат project.out (см в скриншоте выше)
Код
Sun Mar 29 20:44:51 2009: Loaded macro file: C:\Program Files\IAR Systems\Embedded Workbench 5.4 Evaluation\arm\config\flashloader\NXP\LPC21xx22xx.mac
Sun Mar 29 20:44:51 2009: START flash init
Sun Mar 29 20:44:51 2009: END flash init
Sun Mar 29 20:44:51 2009: 2048 bytes downloaded and verified (3.21 Kbytes/sec)
Sun Mar 29 20:44:51 2009: Loaded debugee: C:\Program Files\IAR Systems\Embedded Workbench 5.4 Evaluation\arm\config\flashloader\NXP\FlashLayout2RAM16K.out
Sun Mar 29 20:44:51 2009: Target reset
Go to the top of the page
 
+Quote Post
segment
сообщение Mar 29 2009, 18:27
Сообщение #16


Местный
***

Группа: Участник
Сообщений: 352
Регистрация: 10-08-06
Из: Санкт-Петербург
Пользователь №: 19 471



Так, в каком то варианте у меня проскользнуло что все нормально загружено, но слетел при этом openocd. Тогда я понял что у меня старая версия ocd и скачал 0.1.0 версию, теперь понадежнее и не зависает.. пытаюсь добиться той конфигурации при которой у меня однажды залилась прога

С новым openocd лог выглядит более логичным. Теперь ясно что трабла не в генерируемом коде а в том что принять пакет не может, что это может быть?
Код
Sun Mar 29 22:09:25 2009: Loaded macro file: C:\Program Files\IAR Systems\Embedded Workbench 5.4 Evaluation\arm\config\flashloader\NXP\LPC21xx22xx.mac
Sun Mar 29 22:09:25 2009: START flash init
Sun Mar 29 22:09:25 2009: END flash init
Sun Mar 29 22:09:34 2009: Fatal error: Failed to receive packet  

Session aborted!
Sun Mar 29 22:09:35 2009: Failed to load flash loader: C:\Program Files\IAR Systems\Embedded Workbench 5.4 Evaluation\arm\config\flashloader\NXP\FlashLayout2RAM16K.out


Спустя некоторое время вот такой лог я узрел
Код
Sun Mar 29 22:26:26 2009: 9264 bytes with download suppressed
Sun Mar 29 22:26:26 2009: Loaded debugee: G:\Work\IAR\Debug\Exe\project.out
Sun Mar 29 22:26:35 2009: Fatal error: Failed to receive packet  

Session aborted!
Sun Mar 29 22:27:08 2009: Target reset
Sun Mar 29 22:27:08 2009: Failed to load debugee: G:\Work\IAR\Debug\Exe\project.out


Сообщение отредактировал Сега - Mar 29 2009, 18:13
Go to the top of the page
 
+Quote Post
KRS
сообщение Mar 29 2009, 21:21
Сообщение #17


Профессионал
*****

Группа: Модераторы
Сообщений: 1 951
Регистрация: 27-08-04
Из: Санкт-Петербург
Пользователь №: 555



Вообще у IAR кривая поддержка GDB server! Там ошибки причем их не исправить у них в идеологии ошибки они не правильно понимают GDB протокол, например. И у них похоже прием и отправка данных в разных нитях происходит, что для полудуплексного протокола криво ( обычная ситуация когда они не могут понять на какую посылку пришел ответ). Я об этом говорю потому что я пытался прицепить GDB сервер к IAR. И модифицированный OpenOCD тоже, когда подключал кортекс по SWD. Например по идеологии GDB на приянтый пакет с начала идет подтверждение, а потом, если надо ответ с данными, так вот в IAR если будет задержка между подтверждением и пакетом крыша съезжает! (например они в разных пакетах TCP прийдут).
Да и вообще на сайте IAR написано что GDB сервер только для отладочной платы .... ( не помню точно какой) в общем работает криво!
Go to the top of the page
 
+Quote Post
segment
сообщение Mar 30 2009, 04:14
Сообщение #18


Местный
***

Группа: Участник
Сообщений: 352
Регистрация: 10-08-06
Из: Санкт-Петербург
Пользователь №: 19 471



Ясно. Ну я тогда продолжу работать вполне терпимым вариантом - lpc21isp -> openOCD -> Debug without downloading
Go to the top of the page
 
+Quote Post
KRS
сообщение Mar 30 2009, 07:47
Сообщение #19


Профессионал
*****

Группа: Модераторы
Сообщений: 1 951
Регистрация: 27-08-04
Из: Санкт-Петербург
Пользователь №: 555



А OpenOCD вроде можно настроить что бы он Flash шил. ( но это лучше в GNU/OpenSource спросить или посомтреть)

А вообще IAR отлично работает через RDI и с родным для нее JLINK ( но полноценного описания протокола нет, то что есть сильно обрезано).
Предлагаю просто собраться и написать аналог H-JTAG ( к сожалению он не open source ) для устройств на FTDI, а то принтерные порты умирают...


Я проверил у себя, для LPC2129 - примерно та же фигня! В общем не работает IAR нормально с GDB server. Но если пару дней поплясать с бубном, подправить OpenOcd... то... Но лучше RDI написать!

Сообщение отредактировал KRS - Mar 30 2009, 08:07
Go to the top of the page
 
+Quote Post
segment
сообщение Mar 30 2009, 16:38
Сообщение #20


Местный
***

Группа: Участник
Сообщений: 352
Регистрация: 10-08-06
Из: Санкт-Петербург
Пользователь №: 19 471



Ясно, пасиб что проверил! Да, написать можно, но наверно не раньше лета..
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 26th July 2025 - 18:51
Рейтинг@Mail.ru


Страница сгенерированна за 0.01535 секунд с 7
ELECTRONIX ©2004-2016