This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

[nRF52838] [Softdevice S332 v5.0.00] [SDK 14.2.0] Problems with gcc_startup_nrf52.S

Hi everyone,

I'm working in an application for a wearable device and I recently have a problem debugging it with Ozone Debugger from SEGGER Microcontroller Systems.

I'm using SDK 14.2 with nRF52832 DK and the softdevice S332 v5.0.0. Also I'm using GCC 4.9.3 and CMake 3.5.1. I'm compiling the application in RelWithDebInfo, I can't compile in Debug because I have no more space in FLASH, but in RelWithDebInfo can. The problem is when I open Ozone V2.56d from SEGGER and I try to run the application appear the file gcc_startup_nrf52.S and stops the execution of the debugging at this section in te file

    ldr r1, =__etext
    ldr r2, =__data_start__
    ldr r3, =__bss_start__

    subs r3, r2
    ble .L_loop1_done

.L_loop1:
    subs r3, #4
    ldr r0, [r1,r3]
    str r0, [r2,r3]
    bgt .L_loop1

.L_loop1_done:

In the first line at the end of text section. I don't know what is going on...when I run the program into the prototype it runs succesfully but when I try to debug the application with Ozone, it is imposible, always crash.

This are my TEXT and BSS section in the memory map

.text           0x000000000002d000    0x362bc
 *(.isr_vector)
 .isr_vector    0x000000000002d000      0x200 CMakeFiles/tgband.elf.dir/sdk/components/toolchain/gcc/gcc_startup_nrf52.S.obj
                0x000000000002d000                __isr_vector
 *(.text*)
 .text          0x000000000002d200       0xa4 /usr/lib/gcc/arm-none-eabi/4.9.3/armv7e-m/fpu/crtbegin.o
 .text          0x000000000002d2a4       0x68 /usr/lib/gcc/arm-none-eabi/4.9.3/../../../arm-none-eabi/lib/armv7e-m/fpu/crt0.o
                0x000000000002d2a4                _start
                0x000000000002d2a4                _mainCRTStartup

.data           0x0000000020003070      0x95c load address 0x0000000000064fe8
                0x0000000020003070                __data_start__ = .
 *(vtable)
 *(.data*)

.bss            0x00000000200039e0     0x62b0 load address 0x0000000000065958
                0x00000000200039e0                . = ALIGN (0x4)
                0x00000000200039e0                __bss_start__ = .
 *(.bss*)

I hope someone here could help to understand where is the problem,

thank you for the attention.

Best regards

Related