<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>SDK 12.3.0 blinky example GCCARM on nrf51822</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/22029/sdk-12-3-0-blinky-example-gccarm-on-nrf51822</link><description>Hello, 
 Two years ago I develop a board with a nrf51822. Right now I&amp;#39;m trying to use the same board again. I installed the new SDK 12.3.0, GCC ARM, nrf command line tools and JLink to setup the development environment on OSX. 
 I got no problems on</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 15 May 2017 20:55:36 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/22029/sdk-12-3-0-blinky-example-gccarm-on-nrf51822" /><item><title>RE: SDK 12.3.0 blinky example GCCARM on nrf51822</title><link>https://devzone.nordicsemi.com/thread/86444?ContentTypeID=1</link><pubDate>Mon, 15 May 2017 20:55:36 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5017bae2-e467-4d96-8df7-21e3e8bf0a79</guid><dc:creator>RK</dc:creator><description>&lt;p&gt;The gcc linker file puts the stack at the top of RAM so it grows down, this gives you the best chance of not corrupting your program memory if the stack gets too big. So if you give it the wrong amount of RAM, it puts the stack where there&amp;#39;s no memory.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: SDK 12.3.0 blinky example GCCARM on nrf51822</title><link>https://devzone.nordicsemi.com/thread/86443?ContentTypeID=1</link><pubDate>Mon, 15 May 2017 18:20:47 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e971aeae-ef97-466f-b309-347f25772030</guid><dc:creator>Jose Xavier</dc:creator><description>&lt;p&gt;Change the the RAM lenght to &lt;code&gt;RAM (rwx) : ORIGIN = 0x20000000, LENGTH = 0x4000&lt;/code&gt; instead of 0x8000. For some reason I thought the error will only happen if I use enough RAM to exceed the value 0x20004000 during execution.&lt;/p&gt;
&lt;p&gt;So the uC start using the RAM from the higher address?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: SDK 12.3.0 blinky example GCCARM on nrf51822</title><link>https://devzone.nordicsemi.com/thread/86442?ContentTypeID=1</link><pubDate>Mon, 15 May 2017 08:01:58 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3b9212e3-fffb-4e64-985d-ebdc016e34e3</guid><dc:creator>Jose Xavier</dc:creator><description>&lt;p&gt;I&amp;#39;m indeed using a xxAA variant. I&amp;#39;ll try it tonight, thank you :)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: SDK 12.3.0 blinky example GCCARM on nrf51822</title><link>https://devzone.nordicsemi.com/thread/86441?ContentTypeID=1</link><pubDate>Mon, 15 May 2017 07:31:30 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3bd86456-a3be-4b9e-844c-bcd07651855e</guid><dc:creator>RK</dc:creator><description>&lt;p&gt;A pretty good hint in the register dump that that&amp;#39;s the case is&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;msp            0x20007fe0   536903648
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;That probably means the MSP was set to 0x20008000. The first attempted push onto the stack would have failed as it wouldn&amp;#39;t be able to write, so the hardfault has been called which has then attempted to push the register on the stack and so the MSP now says 0x20007fe0.&lt;/p&gt;
&lt;p&gt;If you actually go and look at the contents of memory at the MSP, which you&amp;#39;d usually do to work out where you came from, you&amp;#39;ll probably find it&amp;#39;s either unreadable or all 0xffffffff&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: SDK 12.3.0 blinky example GCCARM on nrf51822</title><link>https://devzone.nordicsemi.com/thread/86440?ContentTypeID=1</link><pubDate>Mon, 15 May 2017 07:24:40 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:365e81fd-ec25-42e2-91f8-ff5309a83107</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;It looks like you are using the xxAA or xxAB variant of the 51 which has 16K of RAM, whereas the new SDK examples are configured for the xxAC with 32K of RAM (&lt;a href="http://infocenter.nordicsemi.com/topic/com.nordic.infocenter.nrf51/dita/nrf51/compatibility_matrix/nRF51822_ic_revision_overview.html?cp=3_0_1"&gt;IC overview&lt;/a&gt;). If that&amp;#39;s the case you will need to adjust RAM size in your linker configuration .&lt;/p&gt;
&lt;p&gt;Example of a typical memory layout for the nRF51x22_xxAC (256/32) variant:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;MEMORY
{
 /*FLASH and RAM ORIGIN depends on softdevice series and version. Check SD release                                 notes for appropriate values. Set ORIGIN to 0x0 and 0x20000000 for examples that do not run on top of softdevice stack or similar */
  FLASH (rx) : ORIGIN = 0x1B000, LENGTH = 0x25000 
  RAM (rwx) :  ORIGIN = 0x20002000, LENGTH = 0x6000
}
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;And the same for  nRF51x22_xxAA (256/16). Note that RAM ORIGIN + LENGTH must not exceed 0x20004000:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;MEMORY
{
  FLASH (rx) : ORIGIN = 0x1B000, LENGTH = 0x25000
  RAM (rwx) :  ORIGIN = 0x20002000, LENGTH = 0x2000
}
&lt;/code&gt;&lt;/pre&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: SDK 12.3.0 blinky example GCCARM on nrf51822</title><link>https://devzone.nordicsemi.com/thread/86439?ContentTypeID=1</link><pubDate>Mon, 15 May 2017 01:20:39 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f5effd08-cf6a-4a71-be3d-53236ffe5ebc</guid><dc:creator>Nguyen Hoan Hoang</dc:creator><description>&lt;p&gt;First thing to check is the ld script to make sure that the program mapping starts at 0 using the blank linker script.  second thing to check is that the startup code is in the project.  Both linker script and startup code has to go in pair.  ie if you use the one from the SDK, you need to use the LD script from the SDK.  If you use my startup then you need to use my LD script.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: SDK 12.3.0 blinky example GCCARM on nrf51822</title><link>https://devzone.nordicsemi.com/thread/86438?ContentTypeID=1</link><pubDate>Sun, 14 May 2017 21:22:22 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:266bc042-8583-4b95-82c6-07aae03e61ee</guid><dc:creator>Jose Xavier</dc:creator><description>&lt;p&gt;I thought the same but I don&amp;#39;t know to much about startup code and linker script to solve it :( I&amp;#39;ll try to look into your example and find the difference. I&amp;#39;m not using a softdevice.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: SDK 12.3.0 blinky example GCCARM on nrf51822</title><link>https://devzone.nordicsemi.com/thread/86436?ContentTypeID=1</link><pubDate>Sun, 14 May 2017 21:21:05 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:854b626e-ef49-42b7-ad59-9339ec6cada2</guid><dc:creator>Jose Xavier</dc:creator><description>&lt;p&gt;Without softdevice I think since I doesn&amp;#39;t compile the softdevice neither merge the the hex.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: SDK 12.3.0 blinky example GCCARM on nrf51822</title><link>https://devzone.nordicsemi.com/thread/86435?ContentTypeID=1</link><pubDate>Sun, 14 May 2017 21:16:53 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ed450355-9c76-4b8e-8046-9e9d3993169e</guid><dc:creator>Daniel Wang</dc:creator><description>&lt;p&gt;is this blinky with or without the softdevice?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: SDK 12.3.0 blinky example GCCARM on nrf51822</title><link>https://devzone.nordicsemi.com/thread/86437?ContentTypeID=1</link><pubDate>Sun, 14 May 2017 18:17:44 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1e11abec-d38c-4224-814d-f94444bc0a9c</guid><dc:creator>Nguyen Hoan Hoang</dc:creator><description>&lt;p&gt;Seems like statup code or linker script.  If you use Softdevice, you&amp;#39;ll need to adjust the correct size.  You can try my &lt;a href="http://embeddedsoftdev.blogspot.ca/p/ehal-nrf51.html"&gt;Eclipse GCC setup&lt;/a&gt; if all else failed.  I do all my development on OSX with Eclipse GCC.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>