<?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>Kinetis Microcontrollers中的主题 Re: lpuart wakeup vlps</title>
    <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/lpuart-wakeup-vlps/m-p/526692#M32763</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Evgeny&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Yes, the interrupt needs to be disabled as soon as the sleep mode has been exited from (before enabling global interrupts again). In the uTasker low power mode this is done with:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier,monospace; font-size: 12px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (IS_POWERED_UP(5, SIM_SCGC5_LPUART0) != 0) { &amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // if LPUART0 is enabled&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: courier new,courier,monospace; font-size: 12px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPUART0_BAUD &amp;amp;= ~LPUART_BAUD_RXEDGIE;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // &lt;SPAN style="color: #ff0000;"&gt;disable edge interrupt on RxD since we never want to handle the actual interrupt (used just for waking)&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: courier new,courier,monospace; font-size: 12px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Mark&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 25 Jul 2017 13:55:01 GMT</pubDate>
    <dc:creator>mjbcswitzerland</dc:creator>
    <dc:date>2017-07-25T13:55:01Z</dc:date>
    <item>
      <title>lpuart wakeup vlps</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/lpuart-wakeup-vlps/m-p/526687#M32758</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;BR /&gt;Hi.&amp;nbsp; It is unclear to me as to whether the lpuart can be used to wake-up from vlps mode.&amp;nbsp; I am using the MK22f512xxx MCU and in section 48.1.2.1 it states that "the LPUART will remain functional during Stop mode.&amp;nbsp; The LPUART can generate an interrupt to casue a wakeup from stop mode."&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;But, I thought that wakeup's must occur through LLWU sources (I don't think the LLWU has LPUART as a wake-up source).&amp;nbsp; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Can someone explain how I can enable the LPUART interrupt to wake from VLPS mode?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 30 Jun 2016 18:55:49 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/lpuart-wakeup-vlps/m-p/526687#M32758</guid>
      <dc:creator>mjg8t</dc:creator>
      <dc:date>2016-06-30T18:55:49Z</dc:date>
    </item>
    <item>
      <title>Re: lpuart wakeup vlps</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/lpuart-wakeup-vlps/m-p/526688#M32759</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;See &lt;A href="https://community.nxp.com/thread/327741"&gt;Using Kinetis Low Power Stop Modes with unrestricted UART operation - a report&lt;/A&gt; for details about waking from VLPS mode on standard UARTs (using asynch interrupt on RxD edge).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Since the LPUART can continue to be clocked from certain clock sources in VLPS it can also wake up due to any synchronous interrupts too (like Rx data ready), which means that the core will exit from VLPS whenever there is a LPUART interrupt and doesn't need to be woken by the LLWU a source (from VLPS).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Mark&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 30 Jun 2016 21:17:52 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/lpuart-wakeup-vlps/m-p/526688#M32759</guid>
      <dc:creator>mjbcswitzerland</dc:creator>
      <dc:date>2016-06-30T21:17:52Z</dc:date>
    </item>
    <item>
      <title>Re: lpuart wakeup vlps</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/lpuart-wakeup-vlps/m-p/526689#M32760</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hey Mark,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Do you happen to know if I can use LPUART to wake up the system even if i clock it using a disabled clock during VLPS?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Evgeny&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 24 Jul 2017 20:04:12 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/lpuart-wakeup-vlps/m-p/526689#M32760</guid>
      <dc:creator>evgenyerlihman</dc:creator>
      <dc:date>2017-07-24T20:04:12Z</dc:date>
    </item>
    <item>
      <title>Re: lpuart wakeup vlps</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/lpuart-wakeup-vlps/m-p/526690#M32761</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Evgeny&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The LPUART also has an "asynchronous" edge triggered interrupt on its Rx line that can be used to wake from VLPS when the LPUART is not clocked.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here is reference code from the uTasker project which is used to enable this when moving to low power mode:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier,monospace; font-size: 13px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (IS_POWERED_UP(5, SIM_SCGC5_LPUART0))&amp;nbsp; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // if LPUART0 is enabled&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: courier new,courier,monospace; font-size: 13px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPUART0_STAT |= LPUART_STAT_RXEDGIF;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // clear edge flag&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: courier new,courier,monospace; font-size: 13px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPUART0_BAUD |= LPUART_BAUD_RXEDGIE;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // enable wakeup on RxD falling edge&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: courier new,courier,monospace; font-size: 13px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ((LPUART0_STAT &amp;amp; LPUART_STAT_RAF) != 0) {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // if the receiver active flag is set it means that reception has already started so we don't enter stop mode&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: courier new,courier,monospace; font-size: 13px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SYSTEM_CONTROL_REGISTER &amp;amp;= ~SLEEPDEEP;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // use wait mode until the reception has completed&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: courier new,courier,monospace; font-size: 13px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: courier new,courier,monospace; font-size: 13px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Mark&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 24 Jul 2017 22:47:11 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/lpuart-wakeup-vlps/m-p/526690#M32761</guid>
      <dc:creator>mjbcswitzerland</dc:creator>
      <dc:date>2017-07-24T22:47:11Z</dc:date>
    </item>
    <item>
      <title>Re: lpuart wakeup vlps</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/lpuart-wakeup-vlps/m-p/526691#M32762</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hey Mark,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;From your experience, should i disable&amp;nbsp;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;LPUART_BAUD_RXEDGIE when the processor is awake in order to not receive a large amount of false interrupts, same as with regular UART?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;Thanks,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;Evgeny&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 25 Jul 2017 12:13:24 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/lpuart-wakeup-vlps/m-p/526691#M32762</guid>
      <dc:creator>evgenyerlihman</dc:creator>
      <dc:date>2017-07-25T12:13:24Z</dc:date>
    </item>
    <item>
      <title>Re: lpuart wakeup vlps</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/lpuart-wakeup-vlps/m-p/526692#M32763</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Evgeny&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Yes, the interrupt needs to be disabled as soon as the sleep mode has been exited from (before enabling global interrupts again). In the uTasker low power mode this is done with:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier,monospace; font-size: 12px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (IS_POWERED_UP(5, SIM_SCGC5_LPUART0) != 0) { &amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // if LPUART0 is enabled&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: courier new,courier,monospace; font-size: 12px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPUART0_BAUD &amp;amp;= ~LPUART_BAUD_RXEDGIE;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // &lt;SPAN style="color: #ff0000;"&gt;disable edge interrupt on RxD since we never want to handle the actual interrupt (used just for waking)&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: courier new,courier,monospace; font-size: 12px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Mark&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 25 Jul 2017 13:55:01 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/lpuart-wakeup-vlps/m-p/526692#M32763</guid>
      <dc:creator>mjbcswitzerland</dc:creator>
      <dc:date>2017-07-25T13:55:01Z</dc:date>
    </item>
  </channel>
</rss>

