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

 
 
 
Reply to this topicStart new topic
> Вопрос по Eclipse 3.2.0
sealbi
сообщение Apr 16 2010, 08:39
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 15
Регистрация: 14-01-10
Пользователь №: 54 795



Подключаю в Eclipse отладчик OpenOCD в External Tools. На вкладке Main не могу записать конфиг файл в поле Arguments, так как поле неактивное. Подскажите, как его туда засунуть?
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Apr 16 2010, 12:54
Сообщение #2


Гуру
******

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



Цитата(sealbi @ Apr 16 2010, 10:54) *
На вкладке Main не могу записать конфиг файл в поле Arguments, так как поле неактивное. Подскажите, как его туда засунуть?

1)Ставите Zylin embedded CDT.
2)Debug->Debug configuretions->появился вариант Zylin embedded debug (Native)
3)Создаете производнуб от него конфигурацию, указываете на ее вкладках имя вашего gdb
4)Либо в папке проекта в файл .gdbinit, либо на вкладке Commands в поле 'Initialize commands' вписываете
Код
target remote | openocd --pipe
monitor reset init
load
s
Естественно, openocd должен быть доступен через path. Мне такой вариант показался удобнее запуска отдельного демона.


--------------------
На любой вопрос даю любой ответ
"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
sealbi
сообщение Apr 19 2010, 04:39
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 15
Регистрация: 14-01-10
Пользователь №: 54 795



1)Ставите Zylin embedded CDT.
2)Debug->Debug configuretions->появился вариант Zylin embedded debug (Native)
3)Создаете производнуб от него конфигурацию, указываете на ее вкладках имя вашего gdb

Это типа "C:\Program Files\yagarto\bin\arm-elf-gdb.exe" или я не правильно понял?

4)Либо в папке проекта в файл .gdbinit, либо на вкладке Commands в поле 'Initialize commands' вписываете[code]target remote |
Естественно, openocd должен быть доступен через path. Мне такой вариант показался удобнее запуска отдельного демона.

Путь на OpenOCD я писал только в make файле, надо еще где то?
Консоль выдает:
CODE
target remote | openocd --pipe
Open On-Chip Debugger 0.4.0 (2010-02-22-19:05)
Licensed under GNU GPL v2
For bug reports, read
http://openocd.berlios.de/doc/doxygen/bugs.html
Remote communication error: No error.
monitor reset init
"monitor" command not supported by this target.
load
You can't do that when your target is `exec'
s
The program is not being run.

Что то я делаю не правильно?
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Apr 19 2010, 06:13
Сообщение #4


Гуру
******

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



Цитата(sealbi @ Apr 19 2010, 07:54) *
Это типа "C:\Program Files\yagarto\bin\arm-elf-gdb.exe" или я не правильно понял?
У меня в path добавлено C:\Program Files\yagarto\bin, поэтому я пишу только "arm-elf-gdb".
Цитата(sealbi @ Apr 19 2010, 07:54) *
Путь на OpenOCD я писал только в make файле, надо еще где то?
Надо бы его добавить в path. Чтобы не указывать каждый раз. Хотя - он у вас запустился, значит путь к нему нашелся.
Цитата(sealbi @ Apr 19 2010, 07:54) *
Консоль выдает:
Код
Remote communication error: No error.

Что то я делаю не правильно?
OpenOCD как-то работает не так, как задумано. Можно предположить, что не может связаться с процессором. Тогда сначала запустите openocd из командной строки - он выдаст на экран более подробное описание своих проблем. Или добавьте ключ -d (target remote | openocd --pipe -d), тогда он создаст файл openocd.log в папке проекта и всю диагностику сольет туда. А дальше изучайте эту диагностику, боритесь, скиньте сюда - почитаем вместе.


--------------------
На любой вопрос даю любой ответ
"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
sealbi
сообщение Apr 19 2010, 09:07
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 15
Регистрация: 14-01-10
Пользователь №: 54 795



Поставил в инициализации конфиги, теперь выдает так
CODE
target remote | openocd --pipe -d -f interface/parport.cfg -f board/atmel_at91sam7s-ek.cfg
Open On-Chip Debugger 0.4.0 (2010-02-22-19:05)
Licensed under GNU GPL v2
For bug reports, read
http://openocd.berlios.de/doc/doxygen/bugs.html
0x00000000 in _vec_reset ()
monitor reset init
JTAG tap: at91sam7s256.cpu tap/device found: 0x3f0f0f0f (mfg: 0x787, part: 0xf0f0, ver: 0x3)
srst pulls trst - can not reset into halted mode. Issuing halt after reset.
target state: halted
target halted in ARM state due to debug-request, current mode: System
cpsr: 0x2000001f pc: 0x000003b8
requesting target halt and executing a soft reset
target state: halted
target halted in ARM state due to debug-request, current mode: Supervisor
cpsr: 0x200000d3 pc: 0x00000000
NOTE! DCC downloads have not been enabled, defaulting to slow memory writes. Type 'help dcc'.
NOTE! Severe performance degradation without fast memory access enabled. Type 'help fast'.
load
Loading section .text, size 0xe84 lma 0x0
Loading section .data, size 0x444 lma 0xe84
Loading section .eh_frame, size 0x184 lma 0x12c8
Start address 0x0, load size 5196
Transfer rate: 7 KB/sec, 1732 bytes/write.
s
Single stepping until exit from function _vec_reset,
which has no line number information.
stepi ignored. GDB will now fetch the register state from the target.

Program received signal SIGINT, Interrupt.
0x00000000 in _vec_reset ()

что то не так с in _vec_reset () ?
У меня проект demo_at91sam7_blink_flash, виглер и платка самодельные, бинарник записывается и светодиоды мигают.
После запуска отладки перестают.
Может быть чего то не хватает на плате?
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Apr 19 2010, 18:05
Сообщение #6


Гуру
******

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



Цитата(sealbi @ Apr 19 2010, 12:22) *
Поставил в инициализации конфиги, теперь выдает так
Красиво. Можете еще добавить
Код
arm7_9 fast_memory_access enable
arm7_9 dcc_downloads enable
Цитата(sealbi @ Apr 19 2010, 12:22) *
что то не так с in _vec_reset () ?
Скорее это просто библиотечная метка и для нее, соответственно, нет исходника.
Цитата(sealbi @ Apr 19 2010, 12:22) *
У меня проект demo_at91sam7_blink_flash, виглер и платка самодельные, бинарник записывается и светодиоды мигают.
После запуска отладки перестают.
Может быть чего то не хватает на плате?
Конечно перестают. Вы же даете команду halt и оно переходит в пошаговую отладку. Нажмите иконку Resume - должно побежать.


--------------------
На любой вопрос даю любой ответ
"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
sealbi
сообщение Apr 20 2010, 01:30
Сообщение #7


Участник
*

Группа: Участник
Сообщений: 15
Регистрация: 14-01-10
Пользователь №: 54 795



Спасибо за помощь, F8 - это то что мне не хватало!
Go to the top of the page
 
+Quote Post

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

 


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


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