<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: How to add a sleep function and wait for interrupt to wake? in NXP Designs</title>
    <link>https://community.nxp.com/t5/NXP-Designs/How-to-add-a-sleep-function-and-wait-for-interrupt-to-wake/m-p/1015343#M306</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Omar,&lt;/P&gt;&lt;P&gt;Thanks for your response and help.  I see the line __WFI() defines.&lt;/P&gt;&lt;P&gt;I have to stay in Kinetis SDK because it is complicated when you move all the projects with a bootloader from Kinetis to MCUXpressor.&lt;/P&gt;&lt;P&gt;The original project already has interrupt LPUART1, I just need to put the chip  into sleep and it wakes up by the Modbus LPUART1.&lt;/P&gt;&lt;P&gt;I follow the  AN4503 tried sleep function and VLPR and VLPS functions. All of them won’t work, except the VLPS mode does put it into deep sleep but could not wake up. It seems the line asm(“WFI”) disabled LPUART1 even at sleep().&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Albert Zhou&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Sr. Electronics Engineer&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Sensorex&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;p:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;+1 714 230 2768&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;a:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;11751 Markon Drive, Garden Grove, CA 92841&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;w:&lt;/P&gt;&lt;P&gt;e:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="www.sensorex.com&amp;lt;http://t.sidekickopen05.com/s1t/c/5/f18dQhb0S7lM8dDMPbW2n0x6l2B9nMJN7t5X-Ff4Yc8W4WJpMP7dWWcgW6ND00211fj5b0?t=http%3A%2F%2Fwww.sensorex.com%2F&amp;amp;si=7000000000014733&amp;amp;pi=ca5a45ef-58ca-4f28-9010-24a9c3d147a2&amp;gt;" target="test_blank"&gt;www.sensorex.com&amp;lt;http://t.sidekickopen05.com/s1t/c/5/f18dQhb0S7lM8dDMPbW2n0x6l2B9nMJN7t5X-Ff4Yc8W4WJpMP7dWWcgW6ND00211fj5b0?t=http%3A%2F%2Fwww.sensorex.com%2F&amp;amp;si=7000000000014733&amp;amp;pi=ca5a45ef-58ca-4f28-9010-24a9c3d147a2&amp;gt;&lt;/A&gt;;&lt;/P&gt;&lt;P&gt;albert.zhou@sensorex.com&amp;lt;mailto:albert.zhou@sensorex.com&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;https://www.facebook.com/Sensorex&amp;gt;   &amp;lt;http://t.sidekickopen05.com/s1t/c/5/f18dQhb0S7lM8dDMPbW2n0x6l2B9nMJN7t5X-Ff4Yc8W4WJpMP7dWWcgW6ND00211fj5b0?t=https%3A%2F%2Ftwitter.com%2FSensorexInc&amp;amp;si=7000000000014733&amp;amp;pi=ca5a45ef-58ca-4f28-9010-24a9c3d147a2&amp;gt;    &amp;lt;http://t.sidekickopen05.com/s1t/c/5/f18dQhb0S7lM8dDMPbW2n0x6l2B9nMJN7t5X-Ff4Yc8W4WJpMP7dWWcgW6ND00211fj5b0?t=https%3A%2F%2Fwww.linkedin.com%2Fcompany-beta%2F1768298%2F&amp;amp;si=7000000000014733&amp;amp;pi=ca5a45ef-58ca-4f28-9010-24a9c3d147a2&amp;gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sat, 14 Dec 2019 00:43:26 GMT</pubDate>
    <dc:creator>albert_zhou</dc:creator>
    <dc:date>2019-12-14T00:43:26Z</dc:date>
    <item>
      <title>How to add a sleep function and wait for interrupt to wake?</title>
      <link>https://community.nxp.com/t5/NXP-Designs/How-to-add-a-sleep-function-and-wait-for-interrupt-to-wake/m-p/1015341#M304</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I try to add a sleep function to reduce the MKL27Z644 power current. Code as below:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&lt;STRONG&gt;void sleep(void);&lt;/STRONG&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;main()&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;initial();&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;EM&gt;SMC-&amp;gt;PMPRORT =-1;&amp;nbsp;&lt;/EM&gt;&lt;/STRONG&gt; &amp;nbsp; &amp;nbsp; //added for sleep mode&lt;/P&gt;&lt;P&gt;while(1)&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;processing();&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&lt;STRONG&gt;sleep();&amp;nbsp;&lt;/STRONG&gt; &amp;nbsp; &amp;nbsp; &lt;/EM&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; //enter sleep for LPUART interrupt to wake up into rum mode.&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;void sleep(void)&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;SCB-&amp;gt;SCR &amp;amp;=~SCB_SCR_SLEEPDEEP_MASK;&lt;/P&gt;&lt;P&gt;SMC-&amp;gt;PMCTRL = BIT6;&amp;nbsp; &amp;nbsp;//RUNM VLPR;&lt;/P&gt;&lt;P&gt;_enable_irq();&lt;/P&gt;&lt;P&gt;//asm("WFI");&lt;/P&gt;&lt;P&gt;_ISB();&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;It is not work at all. I don't know how to make this to work. I could not add the line 'asm("WFI") that disables LPUART interrupt.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 05 Dec 2019 22:41:07 GMT</pubDate>
      <guid>https://community.nxp.com/t5/NXP-Designs/How-to-add-a-sleep-function-and-wait-for-interrupt-to-wake/m-p/1015341#M304</guid>
      <dc:creator>albert_zhou</dc:creator>
      <dc:date>2019-12-05T22:41:07Z</dc:date>
    </item>
    <item>
      <title>Re: How to add a sleep function and wait for interrupt to wake?</title>
      <link>https://community.nxp.com/t5/NXP-Designs/How-to-add-a-sleep-function-and-wait-for-interrupt-to-wake/m-p/1015342#M305</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello &lt;A _jive_internal="true" class="" data-content-finding="Community" data-userid="322465" data-username="albert.zhou@sensorex.com" href="https://community.nxp.com/people/albert.zhou@sensorex.com"&gt;Albert Zhou&lt;/A&gt; &lt;/P&gt;&lt;P&gt;I suggest you to refer to the sdk examples to implement sleep function &lt;A href="https://mcuxpresso.nxp.com/en/welcome" title="https://mcuxpresso.nxp.com/en/welcome"&gt;Welcome | MCUXpresso SDK Builder&lt;/A&gt;. &lt;/P&gt;&lt;P&gt;To add the WFI line please refer to this definition on the sdk example:&lt;/P&gt;&lt;P style="margin: 0in; font-family: Calibri; font-size: 11.0pt;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="pastedImage_3.png"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/96745i5889D35C2C05322A/image-size/large?v=v2&amp;amp;px=999" role="button" title="pastedImage_3.png" alt="pastedImage_3.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P style="margin: 0in; font-family: Calibri; font-size: 11.0pt;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;For more detailed information about power management, please refer to this application note: &lt;A href="https://www.nxp.com/docs/en/application-note/AN4503.pdf"&gt;https://www.nxp.com/docs/en/application-note/AN4503.pdf&lt;/A&gt;&lt;/P&gt;&lt;P&gt;Also note that in order to enter into a power mode is important to implement a wakeup routine.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Let me know if this is helpful. If you have more specific questions do not hesitate to ask me.&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;Omar&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 13 Dec 2019 19:06:30 GMT</pubDate>
      <guid>https://community.nxp.com/t5/NXP-Designs/How-to-add-a-sleep-function-and-wait-for-interrupt-to-wake/m-p/1015342#M305</guid>
      <dc:creator>Omar_Anguiano</dc:creator>
      <dc:date>2019-12-13T19:06:30Z</dc:date>
    </item>
    <item>
      <title>Re: How to add a sleep function and wait for interrupt to wake?</title>
      <link>https://community.nxp.com/t5/NXP-Designs/How-to-add-a-sleep-function-and-wait-for-interrupt-to-wake/m-p/1015343#M306</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Omar,&lt;/P&gt;&lt;P&gt;Thanks for your response and help.  I see the line __WFI() defines.&lt;/P&gt;&lt;P&gt;I have to stay in Kinetis SDK because it is complicated when you move all the projects with a bootloader from Kinetis to MCUXpressor.&lt;/P&gt;&lt;P&gt;The original project already has interrupt LPUART1, I just need to put the chip  into sleep and it wakes up by the Modbus LPUART1.&lt;/P&gt;&lt;P&gt;I follow the  AN4503 tried sleep function and VLPR and VLPS functions. All of them won’t work, except the VLPS mode does put it into deep sleep but could not wake up. It seems the line asm(“WFI”) disabled LPUART1 even at sleep().&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Albert Zhou&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Sr. Electronics Engineer&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Sensorex&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;p:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;+1 714 230 2768&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;a:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;11751 Markon Drive, Garden Grove, CA 92841&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;w:&lt;/P&gt;&lt;P&gt;e:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="www.sensorex.com&amp;lt;http://t.sidekickopen05.com/s1t/c/5/f18dQhb0S7lM8dDMPbW2n0x6l2B9nMJN7t5X-Ff4Yc8W4WJpMP7dWWcgW6ND00211fj5b0?t=http%3A%2F%2Fwww.sensorex.com%2F&amp;amp;si=7000000000014733&amp;amp;pi=ca5a45ef-58ca-4f28-9010-24a9c3d147a2&amp;gt;" target="test_blank"&gt;www.sensorex.com&amp;lt;http://t.sidekickopen05.com/s1t/c/5/f18dQhb0S7lM8dDMPbW2n0x6l2B9nMJN7t5X-Ff4Yc8W4WJpMP7dWWcgW6ND00211fj5b0?t=http%3A%2F%2Fwww.sensorex.com%2F&amp;amp;si=7000000000014733&amp;amp;pi=ca5a45ef-58ca-4f28-9010-24a9c3d147a2&amp;gt;&lt;/A&gt;;&lt;/P&gt;&lt;P&gt;albert.zhou@sensorex.com&amp;lt;mailto:albert.zhou@sensorex.com&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;https://www.facebook.com/Sensorex&amp;gt;   &amp;lt;http://t.sidekickopen05.com/s1t/c/5/f18dQhb0S7lM8dDMPbW2n0x6l2B9nMJN7t5X-Ff4Yc8W4WJpMP7dWWcgW6ND00211fj5b0?t=https%3A%2F%2Ftwitter.com%2FSensorexInc&amp;amp;si=7000000000014733&amp;amp;pi=ca5a45ef-58ca-4f28-9010-24a9c3d147a2&amp;gt;    &amp;lt;http://t.sidekickopen05.com/s1t/c/5/f18dQhb0S7lM8dDMPbW2n0x6l2B9nMJN7t5X-Ff4Yc8W4WJpMP7dWWcgW6ND00211fj5b0?t=https%3A%2F%2Fwww.linkedin.com%2Fcompany-beta%2F1768298%2F&amp;amp;si=7000000000014733&amp;amp;pi=ca5a45ef-58ca-4f28-9010-24a9c3d147a2&amp;gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 14 Dec 2019 00:43:26 GMT</pubDate>
      <guid>https://community.nxp.com/t5/NXP-Designs/How-to-add-a-sleep-function-and-wait-for-interrupt-to-wake/m-p/1015343#M306</guid>
      <dc:creator>albert_zhou</dc:creator>
      <dc:date>2019-12-14T00:43:26Z</dc:date>
    </item>
  </channel>
</rss>

