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

nRF51822 & s110 - cannot stop & continue my peogram?

When my application is running on the nRF51822 (e.g. the hrs example from the sdk), I want to stop this application (e.g. at a breakpoint), investigate some memory and than continue the execution. But it looks, that it's not possible to continue the execution, isn't it?

I'm working on Linux with gcc 4.8.3 & gdb.

Also tried it with JLinkExe. Trying break & contitue with blinky works:

$ JLinkExe -Device nrf51822 -If SWD
SEGGER J-Link Commander V4.80d ('?' for help)
Compiled Jan 29 2014 14:30:26
Info: Device "NRF51822" selected (257 KB flash, 16 KB RAM).
DLL version V4.80d, compiled Jan 29 2014 14:30:23
Firmware: J-Link Lite-Cortex-M V8 compiled Aug 29 2012 15:24:23
Hardware: V8.00
S/N: 518004593
Feature(s): GDB
VTarget = 3.287V
Info: Found SWD-DP with ID 0x0BB11477
Info: Found Cortex-M0 r0p0, Little endian.
Info: FPUnit: 4 code (BP) slots and 0 literal slots
Found 1 JTAG device, Total IRLen = 4:
Cortex-M0 identified.
Target interface speed: 100 kHz
J-Link>h
PC = 0001432E, CycleCnt = 00000000
R0 = 000000C8, R1 = 00000724, R2 = 00000001, R3 = 00000198
R4 = 50000000, R5 = 0000050C, R6 = 00000200, R7 = 00000100
R8 = FFFFFFFF, R9 = FFFFFFFF, R10= 1FFF4000, R11= 00000000
R12= 00000008
SP(R13)= 20003FE0, MSP= 20003FE0, PSP= FFFFFFFC, R14(LR) = 000142F9
XPSR = 21000000: APSR = nzCvq, EPSR = 01000000, IPSR = 000 (NoException)
CFBP = 00000000, CONTROL = 00, FAULTMASK = 00, BASEPRI = 00, PRIMASK = 00
J-Link>g

And trying break & contitue with hrs looks similar:

$ JLinkExe -Device nrf51822 -If SWD
SEGGER J-Link Commander V4.80d ('?' for help)
Compiled Jan 29 2014 14:30:26
Info: Device "NRF51822" selected (257 KB flash, 16 KB RAM).
DLL version V4.80d, compiled Jan 29 2014 14:30:23
Firmware: J-Link Lite-Cortex-M V8 compiled Aug 29 2012 15:24:23
Hardware: V8.00
S/N: 518004593
Feature(s): GDB
VTarget = 3.287V
Info: Found SWD-DP with ID 0x0BB11477
Info: Found Cortex-M0 r0p0, Little endian.
Info: FPUnit: 4 code (BP) slots and 0 literal slots
Found 1 JTAG device, Total IRLen = 4:
Cortex-M0 identified.
Target interface speed: 100 kHz
J-Link>h
PC = 0000FE3E, CycleCnt = 00000000
R0 = 200000EF, R1 = 0000007E, R2 = E000E200, R3 = 0000007E
R4 = 00008000, R5 = 200027E8, R6 = 00028000, R7 = 00000000
R8 = FFFFFFFF, R9 = FFFFFFFF, R10= 1FFF4000, R11= 00000000
R12= 00000008
SP(R13)= 20003F58, MSP= 20003F58, PSP= FFFFFFFC, R14(LR) = 0000016B
XPSR = 61000000: APSR = nZCvq, EPSR = 01000000, IPSR = 000 (NoException)
CFBP = 00000000, CONTROL = 00, FAULTMASK = 00, BASEPRI = 00, PRIMASK = 00
J-Link>g

But after continuing, my device is not longer visible as a ble peripheral. Seems that S110 has been dirturbed by my halt & continue?

Related