Jump to content

    
Sign in to follow this  
artymen

Отладка cortex-m3 в gdb через j-link

Recommended Posts

Столкнулся с такой неожиданной проблемой: при отладке программы с freertos на LPC1768 (cortex m3) под gdb (yagarto toolchain) через j-link (gdb server) отладчик останавливается безо всякой на то причины на инструкции SVC 0 в коде фриртоса (в функции vPortStartFirstTask), как будто breakpoint сработал. Делаю resume, но он зацикливается на этой инструкции.

Отлаживаю во флеше. В конфигурации отладки в Eclipse прописаны команды инициализации:

monitor endian little
monitor flash device = LPC1768
monitor flash download = 1
monitor flash breakpoints = 1
monitor speed 1000
monitor reg r13 = (0x00000000)
monitor reg pc = (0x00000004)

Ну и разумеется опции Reset and Delay и Halt включены. Set breakpoint at: main и Resume.

Запускается нормально, на main останавливается, продолжаю, и вскоре останавливается на vPortStartFirstTask.

Причем я забил на свой код, попробовал отладить стандартный пример CORTEX_LPC1768_GCC_RedSuite из FreeRTOS 6.1 (но не в redsuite, а yagarto опять-таки). То же самое. Однако всякие IARовские примеры отлаживаются нормально.

Кто сталкивался ? В чем тут может быть дело ?

Share this post


Link to post
Share on other sites

Все, разобрался ! Как всегда, все банально - проц не сбрасывался в начале отладки. :krapula: Опции "Reset and Delay" и "Halt", оказывается, не работают, собаки. Это баг/фича в "C/C++

GDB Hardware Debugging" (version 7.0.0.201009241320) feature в Eclipse CDT. Нужно вручную прописывать команду "monitor reset 0", что собствено и делается во всех gdbinit-скриптах. А я сдуру решил, что это избыточно (ведь в среде есть эти опции), что и привело к потере времени :cranky:

Причем обидно, что я все время смотрел окно сообщений gdb сервера и не замечал, что привычное сообщение типа "Resetting target" нигде не мелькает.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this