Перейти к содержанию
    

Вопрос по Eclipse 3.2.0

Подключаю в Eclipse отладчик OpenOCD в External Tools. На вкладке Main не могу записать конфиг файл в поле Arguments, так как поле неактивное. Подскажите, как его туда засунуть?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

На вкладке 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. Мне такой вариант показался удобнее запуска отдельного демона.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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' вписываете

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.

Что то я делаю не правильно?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Это типа "C:\Program Files\yagarto\bin\arm-elf-gdb.exe" или я не правильно понял?
У меня в path добавлено C:\Program Files\yagarto\bin, поэтому я пишу только "arm-elf-gdb".

Путь на OpenOCD я писал только в make файле, надо еще где то?
Надо бы его добавить в path. Чтобы не указывать каждый раз. Хотя - он у вас запустился, значит путь к нему нашелся.

Консоль выдает:

Remote communication error: No error.

Что то я делаю не правильно?

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Поставил в инициализации конфиги, теперь выдает так

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, виглер и платка самодельные, бинарник записывается и светодиоды мигают.

После запуска отладки перестают.

Может быть чего то не хватает на плате?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Поставил в инициализации конфиги, теперь выдает так
Красиво. Можете еще добавить
arm7_9 fast_memory_access enable
arm7_9 dcc_downloads enable

что то не так с in _vec_reset () ?
Скорее это просто библиотечная метка и для нее, соответственно, нет исходника.

У меня проект demo_at91sam7_blink_flash, виглер и платка самодельные, бинарник записывается и светодиоды мигают.

После запуска отладки перестают.

Может быть чего то не хватает на плате?

Конечно перестают. Вы же даете команду halt и оно переходит в пошаговую отладку. Нажмите иконку Resume - должно побежать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...