Hi, I have created a project with Keil 5.15 The simply blink app works. Now I want to play with softdevice.
The only problem is... no matter what I do, my hex file always is being flashed at 0x0 Even though I updated the IROM settings in Keil.
This means, If I flash softdevice and then try to flash the application I get error.
Please help me to debug this ? If you need more detail, please let me know.
==============EDIT=====================
Here is the scatter file
As mentioned now I checked the option use memory layout from the target...
Here is scatter file.
LR_IROM1 0x00016000 0x00029000 { ; load region size_region
ER_IROM1 0x00016000 0x00029000 { ; load address = execution address
*.o (RESET, +First)
*(InRoot$$Sections)
main.o (+RO)
RTT_Syscalls_KEIL.o (+RO)
SEGGER_RTT.o (+RO)
SEGGER_RTT_printf.o (+RO)
nrf_delay.o (+RO)
pstorage.o (+RO)
arm_startup_nrf51.o (+RO)
system_nrf51.o (+RO)
.ANY (+RO)
}
RW_IRAM1 0x20000000 0x00004000 { ; RW data
main.o (+ZI)
.ANY (+RW +ZI)
}
}
But now I'm getting these warnings :
.\Objects\M0.sct(10): warning: L6329W: Pattern RTT_Syscalls_KEIL.o(RO) only matches removed unused sections.
.\Objects\M0.sct(11): warning: L6329W: Pattern SEGGER_RTT.o(RO) only matches removed unused sections.
.\Objects\M0.sct(12): warning: L6329W: Pattern SEGGER_RTT_printf.o(RO) only matches removed unused sections.
.\Objects\M0.sct(20): warning: L6314W: No section matches pattern main.o(ZI).
And the application doesn't even run...
I can confirm the application is now flashed at 0x16000. I have checked it with JMem and viewed the memory.
But the application is not running. I have even programmed the softdevice version s110_nrf51822_7.0.0_softdevice.hex