<?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: LPC43XX frequently switching BASE_M4_CLK in LPC Microcontrollers</title>
    <link>https://community.nxp.com/t5/LPC-Microcontrollers/LPC43XX-frequently-switching-BASE-M4-CLK/m-p/554964#M14861</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by wmues on Fri Jun 12 02:20:15 MST 2015&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Have you checked to use the WFI instruction to put the CPU into sleep mode?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 15 Jun 2016 18:39:17 GMT</pubDate>
    <dc:creator>lpcware</dc:creator>
    <dc:date>2016-06-15T18:39:17Z</dc:date>
    <item>
      <title>LPC43XX frequently switching BASE_M4_CLK</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/LPC43XX-frequently-switching-BASE-M4-CLK/m-p/554963#M14860</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by kollesok on Thu Jun 11 06:26:25 MST 2015&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hello,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I wonder if it's ok to periodically switch BASE_M4_CLK between frequency ranges (low - medium - high). My task is not to save as much power as possible, but to reduce the overall heat dissipated by the MCU.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I have developed a High-Speed USB peripheral device with LPC4323, it periodically does an intensive work at a maximum core frequency 204MHz, the rest of the time it just waits for incoming data.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;It's a waste to leave the core at that fequency all the time, I have made some measurements, my device consume about 170 mA while waiting. If I reduce the&amp;nbsp; BASE_M4_CLK down to 48 MHz, the current drops down to 80 mA. &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I am not concerned about the efficiency, it's the heat that bothers me, the MCU is really hot when working constantly ay 204MHz.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;So, the idea is to have the BASE_M4_CLK at 48MHz while the device is idle and step up to 204 MHz on starting the calculations. But, these transitions might be quite frequent, let's say once every 5 seconds.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Has anyone done anything like that? Are there any pitfalls, unstable behavior of the core or some other implications?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thank you.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 18:39:16 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/LPC43XX-frequently-switching-BASE-M4-CLK/m-p/554963#M14860</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T18:39:16Z</dc:date>
    </item>
    <item>
      <title>Re: LPC43XX frequently switching BASE_M4_CLK</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/LPC43XX-frequently-switching-BASE-M4-CLK/m-p/554964#M14861</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by wmues on Fri Jun 12 02:20:15 MST 2015&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Have you checked to use the WFI instruction to put the CPU into sleep mode?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 18:39:17 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/LPC43XX-frequently-switching-BASE-M4-CLK/m-p/554964#M14861</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T18:39:17Z</dc:date>
    </item>
    <item>
      <title>Re: LPC43XX frequently switching BASE_M4_CLK</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/LPC43XX-frequently-switching-BASE-M4-CLK/m-p/554965#M14862</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by kollesok on Fri Jun 12 04:44:29 MST 2015&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Yes I have, but it doesn't help much.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;The MCU waits for transactions in a loop like this:&lt;/SPAN&gt;&lt;BR /&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD bgcolor="#cacaca"&gt; &lt;PRE&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; while (1) {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; __asm volatile ("wfi");
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pollUSB();
&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&lt;/PRE&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Putting a core into sleep saves about 20mA, there are periodic USB status events all the time, so the core is actually busy processing non-critical stuff.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;My point is to use the highest BASE_M4_CLK frequency only when it's really necessary. The BASE_M4_CLK is not just for M4 core, but also for the APB peripheral blocks #0 and #2.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 18:39:18 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/LPC43XX-frequently-switching-BASE-M4-CLK/m-p/554965#M14862</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T18:39:18Z</dc:date>
    </item>
  </channel>
</rss>

