<?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>watchdog reset interaction with NVMC page erase</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/14079/watchdog-reset-interaction-with-nvmc-page-erase</link><description>Per the nRF51822 product specification the NVMC ERASEPAGE operation takes up to 22.3 ms, about 730 ticks of a 32 KiHz clock. This is 365x the maximum delay between the watchdog TIMEOUT event and a system reset. 
 I expect that if an nRF51 loses power</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Thu, 26 May 2016 13:42:13 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/14079/watchdog-reset-interaction-with-nvmc-page-erase" /><item><title>RE: watchdog reset interaction with NVMC page erase</title><link>https://devzone.nordicsemi.com/thread/53824?ContentTypeID=1</link><pubDate>Thu, 26 May 2016 13:42:13 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:25f52900-c37b-4364-b108-3adf965ff490</guid><dc:creator>Stian R&amp;#248;ed Hafskjold</dc:creator><description>&lt;p&gt;The answer in the link you posted is correct in the sense that the WDT keeps counting during a flash erase/write, but if the TIMEOUT event is generated during flash operation, the watchdog reset itself will be delayed until it is finished. So it will never erase only part of the page.&lt;/p&gt;
&lt;p&gt;Also, if you have a WDT interrupt handler that looks something like this,&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;void WDT_IRQHandler(){
    NRF_NVMC-&amp;gt;ERASEPAGE = 0x3fc00;
    *((uint32_t*)0x0003FC00) = 0;
}
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;the ERASEPAGE will be completed, but then the chip will reset before the next line, so it never writes 0 to that address.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>