<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://community.arm.com/utility/feedstylesheets/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/"><channel><title>LPC2148 software reset</title><link>https://community.arm.com/developer/tools-software/tools/f/keil-forum/20421/lpc2148-software-reset</link><description> Hi 
 
How can I make a software reset at LPC21xx family processors? 
 
thanks, 
joao </description><dc:language>en-US</dc:language><generator>Telligent Community 10</generator><item><title>RE: LPC2148 software reset</title><link>https://community.arm.com/thread/74197?ContentTypeID=1</link><pubDate>Tue, 18 Jul 2006 03:33:15 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:6cc39120-c4e2-4bf1-a794-0c8359c079cc</guid><dc:creator>joao martins</dc:creator><description>&lt;p&gt;using watchdog is a great idea! thanks.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: LPC2148 software reset</title><link>https://community.arm.com/thread/46399?ContentTypeID=1</link><pubDate>Mon, 17 Jul 2006 15:27:05 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:2c548ecc-fdb8-4a9e-9e9d-3b5546c51551</guid><dc:creator>Robert from Philips</dc:creator><description>&lt;p&gt;Hi,&lt;br /&gt;
&lt;br /&gt;
best way I know is using the watchdog timer.&lt;br /&gt;
Basically the procedure is like that:&lt;br /&gt;
After power on reset, during initializations you check a certain area in memory (SRAM) for a predefined key.&lt;br /&gt;
If you did not find it because after a power on reset this is supposed to be random, you decide that this was NOT a soft reset. No you initialize this area of memory with a value that indicates a &amp;quot;real watchdog reset&amp;quot;&lt;br /&gt;
Before you go into the softreset, you overwrite this word in memory with a value representing the &amp;quot;softreset&amp;quot;.&lt;br /&gt;
You will get a reset, and you will go back to the checking after reset.&lt;br /&gt;
In case this seems a little confusing, let me know and ask specific questions.&lt;br /&gt;
&lt;br /&gt;
Hope this helps, regards, Robert&lt;br /&gt;
&lt;br /&gt;
Reset&lt;br /&gt;
  |&lt;br /&gt;
check for magic value&lt;br /&gt;
  |&lt;br /&gt;
Does value represent predifined reset?&lt;br /&gt;
  |&lt;br /&gt;
If yes, it was a &amp;quot;real wdt&amp;quot; or a &amp;quot;softreset&amp;quot;&lt;br /&gt;
  |&lt;br /&gt;
If no, it was a power on reset&lt;br /&gt;
  |&lt;br /&gt;
Initialize for &amp;quot;real WDT reset&amp;quot;&lt;br /&gt;
  |&lt;br /&gt;
Before you go in to soft reset&lt;br /&gt;
initialize for soft reset&lt;br /&gt;
  |&lt;br /&gt;
set WDT to minimum and do not service it&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>