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

 
 
 
Reply to this topicStart new topic
> Как отлаживаться в Eclipse для АРМов?, Не могу состыковать Eclipse с arm-elf-insight
Гвоздик
сообщение Dec 6 2007, 14:27
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 153
Регистрация: 2-12-04
Из: Чебоксары
Пользователь №: 1 289



Здравствуйте, все! Задачка следующая: как скрестить Eclipse с отладчиком (все равно каким), чтобы прямо с меню Эклипса можно было отлаживаться по шагам? Код для АРМа, набранный в Эклипсе, компилируется с помощью мэйкфайла, подзываемого автоматически с Эклипса, все хорошо. Сижу в Сигвине, запускаю исполняемый файл в симуляторе Skyeye (skyeye -e hello -d). Если в другой консоли Сигвина запускать arm-elf-insight и скармливать ему исполняемый файл, то все в порядке, отладка идет хорошо. Однако, как сделать так, чтобы не нужно было открывать консоль Сигвина и отлаживаться сразу в Эклипсе?
Буду рад совету.
Go to the top of the page
 
+Quote Post
amw
сообщение Dec 6 2007, 15:40
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 601
Регистрация: 22-09-05
Из: Kharkov
Пользователь №: 8 847



А в eclipse отлажываться не пробовали?
Зачем еще insight - это просто графическая оболочка к gdb.
Как я понимаю CDT у Вас есть. Выбирайте debug и укажыте где у Вас gdb.


--------------------
- А мораль отсюда такова: всякому овощу свое время. Или, хочешь, я это сформулирую попроще: никогда не думай, что ты иная, чем могла бы быть иначе, чем будучи иной в тех случаях, когда иначе нельзя не быть.
© Lewis Carroll. Alice's adventures in wonderland.
Go to the top of the page
 
+Quote Post
klen
сообщение Dec 6 2007, 16:57
Сообщение #3


бессмертным стать можно тремя способами
*****

Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912



Цитата(amw @ Dec 6 2007, 18:40) *
А в eclipse отлажываться не пробовали?
Зачем еще insight - это просто графическая оболочка к gdb.
Как я понимаю CDT у Вас есть. Выбирайте debug и укажыте где у Вас gdb.


я отлаживаю платки через gdb+OpenOCD, не вылазя из Eclipse (СDT заменен на Zylin EmbeddedCDT). могу про это расказать подробно. Наверно к симулятору gdb цепляется также как и к JTAG серверу OpenOCD.
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Dec 6 2007, 18:52
Сообщение #4


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(klen @ Dec 6 2007, 18:57) *
могу про это расказать подробно.
Рассказывай. Первый вопрос - при запуске отладки требуется выполнить некоторые действия (ремап, иногда настройка pll и прочее). В процессе этих действий бывают нужны циклы и ветвления (ожидание установки/сброса бита, например). Как их организовать в скрипте gdb?


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
Гвоздик
сообщение Dec 7 2007, 06:06
Сообщение #5


Частый гость
**

Группа: Свой
Сообщений: 153
Регистрация: 2-12-04
Из: Чебоксары
Пользователь №: 1 289



В настройках Эклипса внешний отладчик я указывал (Project->Properties->Run/Debug settings->arm-elf-gdb и потом еще пробовал arm-elf-insight), почему-то пишет, что это не исполняемый файл (Program is not recornized executable). Мне ж еще ему скармливать симулятор нужно перед запуском отладчика, подсовываю ему скрипт отладчика тоже. Ошибка таже. Если для платформы х86 делать тоже самое, то все в порядке, а под АРМы не выходит. Кто как отлаживается с симуляторами в Эклипсе?
Go to the top of the page
 
+Quote Post
klen
сообщение Dec 7 2007, 13:58
Сообщение #6


бессмертным стать можно тремя способами
*****

Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912



Цитата(Сергей Борщ @ Dec 6 2007, 21:52) *
Рассказывай. Первый вопрос - при запуске отладки требуется выполнить некоторые действия (ремап, иногда настройка pll и прочее). В процессе этих действий бывают нужны циклы и ветвления (ожидание установки/сброса бита, например). Как их организовать в скрипте gdb?

у меня все както очень проще. я просто запускаю OOCD, указываю в качестве отладчика arm-elf-gdb,
прописываю ему команды которые чистят флеш, шьют, ресетят девайс:

Цитата
target remote localhost:3333
monitor poll
monitor arm7_9 dcc_downloads enable
monitor flash probe 0
monitor flash erase 0 0 7
monitor flash write 0x0 out/image.bin 0x0
monitor reset run
monitor soft_reset_halt
monitor arm7_9 force_hw_bkpts enable
symbol-file out/image.elf
thbreak main
continue


если вам нужно чтото более сложно, например как Вы говорите ремап, наверно достаточно просто застопить, дать команды поменять значения по адресу, потом отпустить проц. я плохо понял Вашу проблему и почему она проблема.
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Dec 7 2007, 14:39
Сообщение #7


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(klen @ Dec 7 2007, 15:58) *
я плохо понял Вашу проблему и почему она проблема.
Алгоритм ремапа на SAM7 такой: считать слово из начала ОЗУ, изменить его, посмотреть, изменилось ли содержимое по нулевому адресу, и если не изменилось, записать значение в регистр ремапа. После чего восстановить запоротое значение в начале ОЗУ. У них нельзя включить или выключить ремап как на LPC, а можно только переключить. И нельзя никаким образом узнать - включен ли ремап, кроме как поменять значение в ОЗУ и посмотреть, изменилось ли его отражение. Еще вопрос - где найти описание команд GDB и их параметров? Пробовал через MT-Link дебажить, часть команд из примеров от OpenOCD не пошла.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
klen
сообщение Dec 8 2007, 10:30
Сообщение #8


бессмертным стать можно тремя способами
*****

Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912



про GDB написано http://sourceware.org/gdb/documentation

OOCD команды с точки зрения GDB не более чем "monitor COMMAND". он их просто талкает через TCP серверу OOCD и принимает без анализа реплику сервера. Ну я так это все понимаю. GDB понятия не имеет что такое OOCD
Go to the top of the page
 
+Quote Post
123730
сообщение Dec 22 2007, 11:51
Сообщение #9





Группа: Новичок
Сообщений: 10
Регистрация: 20-12-07
Пользователь №: 33 477



Подскажите плиз: OpenOCD c SamIce что разве не работает? 07.gif

Цитата(123730 @ Dec 22 2007, 14:41) *
Подскажите плиз: OpenOCD c SamIce что разве не работает? 07.gif


Есть ещо прога J-Flash от segger но она платная. Мож у каво кряк имеется. Очень нужно научицца "нормально прошивать" AT91SAM7 без САМБЫ. Как это лучше сделать мож есть ещо варианты?
Go to the top of the page
 
+Quote Post
Vitaliy_ARM
сообщение Dec 25 2007, 10:10
Сообщение #10


Знающий
****

Группа: Свой
Сообщений: 509
Регистрация: 19-07-07
Из: г. Таганрог
Пользователь №: 29 246



Цитата(123730 @ Dec 22 2007, 14:51) *
Подскажите плиз: OpenOCD c SamIce что разве не работает? 07.gif
Есть ещо прога J-Flash от segger но она платная. Мож у каво кряк имеется. Очень нужно научицца "нормально прошивать" AT91SAM7 без САМБЫ. Как это лучше сделать мож есть ещо варианты?


C J-link"ком пробовал, работает только с ограничениями.

Цитата(123730 @ Dec 22 2007, 14:51) *
Подскажите плиз: OpenOCD c SamIce что разве не работает? 07.gif
Есть ещо прога J-Flash от segger но она платная. Мож у каво кряк имеется. Очень нужно научицца "нормально прошивать" AT91SAM7 без САМБЫ. Как это лучше сделать мож есть ещо варианты?


Wiggler нормально прошивает и дрова под OpenOCD есть. Я сам его прошивал, замечаний не было.

Сообщение отредактировал Vitaliy_ARM - Dec 25 2007, 10:08


--------------------
Умные речи подобны строкам, напечатанным курсивом. К. Прутков
Go to the top of the page
 
+Quote Post
kna
сообщение Jan 25 2008, 12:11
Сообщение #11





Группа: Новичок
Сообщений: 13
Регистрация: 12-07-07
Пользователь №: 29 070



Наверное не вовремя но у меня вот такая проблема.

Скачал amontec, установил все по мануалу jlunch взял хедер для своей lpc2294 из kail и импортировал проект с миганием лампочки. И нифига не собирается зараза. Пишет следующее

make -k clean
MAKE Version 5.2 Copyright © 1987, 1998 Inprise Corp.
Incorrect command line argument: -k

Как его отучить от -k ?
Go to the top of the page
 
+Quote Post
klen
сообщение Jan 25 2008, 14:36
Сообщение #12


бессмертным стать можно тремя способами
*****

Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912



Цитата(kna @ Jan 25 2008, 15:11) *
Наверное не вовремя но у меня вот такая проблема.

Скачал amontec, установил все по мануалу jlunch взял хедер для своей lpc2294 из kail и импортировал проект с миганием лампочки. И нифига не собирается зараза. Пишет следующее

make -k clean
MAKE Version 5.2 Copyright © 1987, 1998 Inprise Corp.
Incorrect command line argument: -k

Как его отучить от -k ?


smile.gif ну черным по белому написано 1998 Inprise Corp.
это значит что у вас стоит С++Builder или Delphi. Идите в его корень/bin и переименуте файл make.exe
Go to the top of the page
 
+Quote Post

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

 


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


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