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

Посоветуйте gdbserver для STM32F4DISCOVERY

Для предыдущих STM раньше брал из Atollic. А с версии 3.1 сделали так что работает только с GDB из пакета Atollic. Там есть авторизация в начале сессии. С openocd отладка работает но ,что то не получается запись .elf во flash. В связи с этим есть несколько вопросов. Может кто нибудь поделиться gdbserver из Atollic 3.0.0? Как научить openocd перед запуском GDB писать .elf во flash? А может есть еще какие нибудь gdbserver для st-link/v2?

 

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


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

что то не получается запись .elf во flash.
Работаю с F10х, этот пишется. Пробовал F40x, тоже писался. А как пытаетесь писать, на что жалуется openocd?

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


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

А чем Вам приснопамятный CodeSourcery не угодил?

 

Буду пробовать.

 

Работаю с F10х, этот пишется. Пробовал F40x, тоже писался. А как пытаетесь писать, на что жалуется openocd?

 

Наверное при инициализации не делается halt. Может какой то скрипт надо выполнить? А может конфигурация openocd не та. Запускаю так: openocd-0.6.1.exe -f ..\scripts\interface\stlink-v2.cfg -f ..\scripts\target\stm32f4x_stlink.cfg

 

Open On-Chip Debugger 0.6.1 (2012-10-07-10:34)
Licensed under GNU GPL v2
For bug reports, read
        http://openocd.sourceforge.net/doc/doxygen/bugs.html
adapter speed: 1000 kHz
Info : clock speed 1000 kHz
Info : stm32f4x.cpu: hardware has 6 breakpoints, 4 watchpoints
Info : accepting 'gdb' connection from 3333
Info : device id = 0x10016413
Info : flash size = 1024kbytes
Warn : acknowledgment received, but no packet pending
undefined debug reason 6 - target needs reset
Error: Target not halted
Error: failed erasing sectors 0 to 4
Error: flash_erase returned -304

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


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

Может какой то скрипт надо выполнить?
Попробуйте такой:

source [find interface/stlink-v2.cfg]
source [find target/stm32f4x_stlink.cfg]

$_TARGETNAME configure -event gdb-flash-erase-start {
    halt
    #disable interrupts
    reg 19 1
    #save cached register value
    step
    #stop DMA
    mww 0x40020008 0x00000000
    mww 0x4002001C 0x00000000
    mww 0x40020030 0x00000000
    mww 0x40020044 0x00000000
    mww 0x40020058 0x00000000
    mww 0x4002006C 0x00000000
    mww 0x40020080 0x00000000
    mww 0x40020094 0x00000000
}

 

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


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

Спасибо заработало :)

Изменено пользователем IgorKossak
бездумное цитирование

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


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

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

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

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

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

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

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

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

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

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