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

Segger Embedded Studio project does not run code without press reset button

Hi All,

I am using Keil and GCC but I want to migrate my projject to "Seggers Embedded Studio for ARM". After following the tutorial about migration, i have been able to import my project into Embedded Studio and upload the code using the "Build and Run" button. However, after uploading the firmware to the NRF51-DK board,  I must click on-board reset button to make my firmware working. This problem is not visible in KEIL and GCC. (When the code is starting correctlyi LED1 and LED2 is on and bluetooth advertisement is active.)

The my sample example is here.(https://github.com/srcnert/NRF51_Template_Segger_Keil_GCC). You must create a folder inside the SDK 12.3.0 folder and paste my template project inside this new folder to build my sample project.

What is the problem of the segger embedded studio and how can I get the code to automatically run without press reset button?

My second question is about RAM and ROM management. When i compile this sample project, i get following results,

Keil creates 41kB hex file. RAM size: 4008 byte ROM Size: 15052byte. (Program Size: Code=14448 RO-data=300 RW-data=304 ZI-data=3704 )

GCC creates 59kB hex file. RAM size: 1824 byte ROM Size: 21368byte. (Program Size: text=21204 data=164 bss=1660 dec=23028 ) 

Segger creates 89kB hex file. RAM size: 3.7kb ROM Size: 31,6kB. (The values in the memory usage section)

Is this number normal? For example, Ram size is a lot lower in the GCC compiler. Is this the expected behaviour? If not, how can i calculate correct ram and rom size?

Thanks.

 

Related