<?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>When enter low power mode,what&amp;#39;s the difference between wfi,and wfi sev wfi</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/47170/when-enter-low-power-mode-what-s-the-difference-between-wfi-and-wfi-sev-wfi</link><description>I&amp;#39;m using the code below to enter lp mode;waiting for rtc wake up interrupt to wake up the mcu; 
 Now I need the app_timer module to do more things ,so I add app_timer lib ,the app timer works good, 
 but I notice when the timer wakes up,the mcu can&amp;#39;t</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 14 May 2019 11:29:10 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/47170/when-enter-low-power-mode-what-s-the-difference-between-wfi-and-wfi-sev-wfi" /><item><title>RE: When enter low power mode,what's the difference between wfi,and wfi sev wfi</title><link>https://devzone.nordicsemi.com/thread/186937?ContentTypeID=1</link><pubDate>Tue, 14 May 2019 11:29:10 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0e326344-3238-4113-a776-854d5e19722a</guid><dc:creator>Simonr</dc:creator><description>&lt;p&gt;Sure you can set the __SEV after __WFI, but I don&amp;#39;t think that will do what you want. Please see &lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/10424/nrf51422-won-t-sleep#post-id-58214"&gt;this post&lt;/a&gt; for an accurate explanation on WFE and SEV. And sorry, as my explanation was not correct.&lt;/p&gt;
&lt;p&gt;For the record, if __WFI by itself is sufficient for your application, I think it will be okay to stick with that.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Simon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: When enter low power mode,what's the difference between wfi,and wfi sev wfi</title><link>https://devzone.nordicsemi.com/thread/186881?ContentTypeID=1</link><pubDate>Tue, 14 May 2019 09:10:01 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:453baed3-6914-4bbb-af9c-04d5991f9555</guid><dc:creator>Pupil</dc:creator><description>&lt;p&gt;Thanks Simon !&lt;/p&gt;
&lt;p&gt;when using wait for event function,the mcu consumes too much power than __WFI.&lt;/p&gt;
&lt;p&gt;Why didn&amp;#39;t clear the internal event register consumes more power?&lt;/p&gt;
&lt;p&gt;Is there any other way to clear it?&lt;/p&gt;
&lt;p&gt;Can I move the __SEV function to the start of application,so&amp;nbsp; after interrupt wake the application,clear the register first,&lt;/p&gt;
&lt;p&gt;after doing the work,then go to __WFI.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Or like that:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;__WFI;              //Wait for interrupt
__SEV;              //Interrupt ocurred ,clear the regirster

//...                 //go to process application&lt;/pre&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: When enter low power mode,what's the difference between wfi,and wfi sev wfi</title><link>https://devzone.nordicsemi.com/thread/186587?ContentTypeID=1</link><pubDate>Mon, 13 May 2019 08:25:03 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5f9fceb3-d15a-4b8e-b6ba-4775c6611bfd</guid><dc:creator>Simonr</dc:creator><description>&lt;p&gt;Hi&lt;/p&gt;
&lt;p&gt;What happens is that the __SEV function clears the internal event register, which includes the timer you set, and is why the timer is not waking the application as you want. Not clearing the event register however, will consume more power than just going to sleep will. Also, the __WFI function is short for wait for interrupt, which means the application will sleep until an interrupt event occurs. You could use the __WFE function instead which wakes up on any event.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Simon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>