<?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: LPC54102 lpcxpressor54102_power_manager_lpc Example in LPC Microcontrollers</title>
    <link>https://community.nxp.com/t5/LPC-Microcontrollers/LPC54102-lpcxpressor54102-power-manager-lpc-Example/m-p/1576721#M51173</link>
    <description>&lt;P&gt;The STARTERSET register is set in EnableDeepSleepIRQ():&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;void EnableDeepSleepIRQ(IRQn_Type interrupt)
{
    uint32_t intNumber = (uint32_t)interrupt;

    uint32_t index = 0;

    while (intNumber &amp;gt;= 32u)
    {
        index++;
        intNumber -= 32u;
    }

    SYSCON-&amp;gt;STARTERSET[index] = 1u &amp;lt;&amp;lt; intNumber;
    EnableIRQ(interrupt); /* also enable interrupt at NVIC */
}&lt;/LI-CODE&gt;</description>
    <pubDate>Tue, 03 Jan 2023 21:23:10 GMT</pubDate>
    <dc:creator>JBM</dc:creator>
    <dc:date>2023-01-03T21:23:10Z</dc:date>
    <item>
      <title>LPC54102 lpcxpressor54102_power_manager_lpc Example</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/LPC54102-lpcxpressor54102-power-manager-lpc-Example/m-p/1576147#M51156</link>
      <description>&lt;P&gt;I am trying to figure out why my custom board doesn't wake up and I was looking at the&amp;nbsp;lpcxpressor54102_power_manager_lpc example.&amp;nbsp;&lt;/P&gt;&lt;P&gt;Part of the example is the API_InitWakeupPin() function that has this code:&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;    /* Configure the Input Mux block and connect the trigger source to PinInt channle. */
    INPUTMUX_Init(INPUTMUX);
    INPUTMUX_AttachSignal(INPUTMUX, kPINT_PinInt0, APP_USER_WAKEUP_KEY_INPUTMUX_SEL); /* Using channel 0. */
    INPUTMUX_Deinit(INPUTMUX); /* Turnoff clock to inputmux to save power. Clock is only needed to make changes */

    /* Enable wakeup for PinInt0. */
    SYSCON-&amp;gt;STARTERSET[0] |= APP_SYSCON_STARTER_MASK; /* GPIO pin interrupt 0 wake-up. */

    /* Configure the interrupt for SW pin. */
    PINT_Init(PINT);
    PINT_PinInterruptConfig(PINT, kPINT_PinInt0, kPINT_PinIntEnableFallEdge, pint_intr_callback);
    PINT_EnableCallback(PINT); /* Enable callbacks for PINT */

    EnableDeepSleepIRQ(PIN_INT0_IRQn);&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Granted, I haven't been able to get it to work yet, but the line with SYSCON-&amp;gt;STARTERSET[0] does not appear to be correct to me. &amp;nbsp;APP_SYSCON_STARTER_MASK is 0x4U which would cause a reserved bit in STARTERSET[0] to be set. &amp;nbsp;&lt;/P&gt;&lt;P&gt;The EnableDeepSleepIRQ() function called at the end of the code sets the STARTERSET[0] PINT0 bit and enables the Int0 interrupt which does appear to be correct.&amp;nbsp;&lt;/P&gt;&lt;P&gt;Is this an error in the example code? &amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 02 Jan 2023 17:36:38 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/LPC54102-lpcxpressor54102-power-manager-lpc-Example/m-p/1576147#M51156</guid>
      <dc:creator>JBM</dc:creator>
      <dc:date>2023-01-02T17:36:38Z</dc:date>
    </item>
    <item>
      <title>Re: LPC54102 lpcxpressor54102_power_manager_lpc Example</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/LPC54102-lpcxpressor54102-power-manager-lpc-Example/m-p/1576295#M51164</link>
      <description>&lt;P&gt;Hi, James,&lt;/P&gt;
&lt;PRE class="lia-code-sample  language-markup"&gt;&lt;CODE&gt;INPUTMUX_AttachSignal(INPUTMUX, kPINT_PinInt0, APP_USER_WAKEUP_KEY_INPUTMUX_SEL); /* Using channel 0. */&lt;/CODE&gt;&lt;/PRE&gt;
&lt;PRE class="lia-code-sample  language-markup"&gt;&lt;CODE&gt;SYSCON-&amp;gt;STARTERSET[0] |= APP_SYSCON_STARTER_MASK; /* GPIO pin interrupt 0 wake-up. */&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;For the above code, this is the definition:&lt;/P&gt;
&lt;P&gt;#define APP_USER_WAKEUP_KEY_INPUTMUX_SEL kINPUTMUX_GpioPort0Pin24ToPintsel&lt;/P&gt;
&lt;P&gt;In other words, the example uses PIO0_14 pin to trigger PINT0 pin interrupt via input_mux module.&lt;/P&gt;
&lt;P&gt;Pls check which pin you are using to trigger the PINT0 interrupt for your application. For example, if you use PIO0_1, you can use the code:&lt;/P&gt;
&lt;P&gt;INPUTMUX_AttachSignal(INPUTMUX, kPINT_PinInt0, kINPUTMUX_GpioPort0Pin1ToPintsel);&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;For the second line:&lt;/P&gt;
&lt;P&gt;#define APP_SYSCON_STARTER_MASK SYSCON_STARTER_PINT5_MASK&lt;/P&gt;
&lt;P&gt;SYSCON-&amp;gt;STARTERSET[0] |= APP_SYSCON_STARTER_MASK; /* GPIO pin interrupt 0 wake-up. */&lt;/P&gt;
&lt;P&gt;I suppose it is incorrect, the if you use PINT0 to wake-up from deep-sleep mode, pls try to use the line:&lt;/P&gt;
&lt;P&gt;SYSCON-&amp;gt;STARTERSET[0] |= SYSCON_STARTER_PINT0_MASK; or&lt;/P&gt;
&lt;P&gt;SYSCON-&amp;gt;STARTERSET[0] |= 0x20;&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="xiangjun_rong_0-1672719131891.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/205902i784870CF75945A0A/image-size/medium?v=v2&amp;amp;px=400" role="button" title="xiangjun_rong_0-1672719131891.png" alt="xiangjun_rong_0-1672719131891.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Hope it can help you&lt;/P&gt;
&lt;P&gt;BR&lt;/P&gt;
&lt;P&gt;XiangJun Rong&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;typedef enum _inputmux_connection_t&lt;BR /&gt;{&lt;BR /&gt;/*!&amp;lt; Frequency measure. */&lt;BR /&gt;kINPUTMUX_ClockInToFreqmeas = 0U + (FREQMEAS_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_Irc12MhzToFreqmeas = 1U + (FREQMEAS_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_WdtOscToFreqmeas = 2U + (FREQMEAS_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_32KhzOscToFreqmeas = 3U + (FREQMEAS_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_MainClkToFreqmeas = 4U + (FREQMEAS_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort0Pin4ToFreqmeas = 5U + (FREQMEAS_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort0Pin20ToFreqmeas = 6U + (FREQMEAS_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort0Pin24ToFreqmeas = 7U + (FREQMEAS_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort1Pin4ToFreqmeas = 8U + (FREQMEAS_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;/*!&amp;lt; Pin Interrupt. */&lt;BR /&gt;kINPUTMUX_GpioPort0Pin0ToPintsel = 0U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort0Pin1ToPintsel = 1U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort0Pin2ToPintsel = 2U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort0Pin3ToPintsel = 3U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort0Pin4ToPintsel = 4U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort0Pin5ToPintsel = 5U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort0Pin6ToPintsel = 6U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort0Pin7ToPintsel = 7U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort0Pin8ToPintsel = 8U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort0Pin9ToPintsel = 9U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort0Pin10ToPintsel = 10U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort0Pin11ToPintsel = 11U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort0Pin12ToPintsel = 12U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort0Pin13ToPintsel = 13U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort0Pin14ToPintsel = 14U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort0Pin15ToPintsel = 15U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort0Pin16ToPintsel = 16U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort0Pin17ToPintsel = 17U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort0Pin18ToPintsel = 18U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort0Pin19ToPintsel = 19U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort0Pin20ToPintsel = 20U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort0Pin21ToPintsel = 21U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort0Pin22ToPintsel = 22U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort0Pin23ToPintsel = 23U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort0Pin24ToPintsel = 24U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort0Pin25ToPintsel = 25U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort0Pin26ToPintsel = 26U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort0Pin27ToPintsel = 27U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort0Pin28ToPintsel = 28U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort0Pin29ToPintsel = 29U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort0Pin30ToPintsel = 30U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort0Pin31ToPintsel = 31U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort1Pin0ToPintsel = 32U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort1Pin1ToPintsel = 33U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort1Pin2ToPintsel = 34U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort1Pin3ToPintsel = 35U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort1Pin4ToPintsel = 36U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort1Pin5ToPintsel = 37U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort1Pin6ToPintsel = 38U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort1Pin7ToPintsel = 39U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort1Pin8ToPintsel = 40U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort1Pin9ToPintsel = 41U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort1Pin10ToPintsel = 42U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort1Pin11ToPintsel = 43U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort1Pin12ToPintsel = 44U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort1Pin13ToPintsel = 45U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort1Pin14ToPintsel = 46U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort1Pin15ToPintsel = 47U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort1Pin16ToPintsel = 48U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort1Pin17ToPintsel = 49U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort1Pin18ToPintsel = 50U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort1Pin19ToPintsel = 51U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort1Pin20ToPintsel = 52U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort1Pin21ToPintsel = 53U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort1Pin22ToPintsel = 54U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort1Pin23ToPintsel = 55U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort1Pin24ToPintsel = 56U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort1Pin25ToPintsel = 57U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort1Pin26ToPintsel = 58U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort1Pin27ToPintsel = 59U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort1Pin28ToPintsel = 60U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort1Pin29ToPintsel = 61U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort1Pin30ToPintsel = 62U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_GpioPort1Pin31ToPintsel = 63U + (PINTSEL_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;/*!&amp;lt; DMA ITRIG. */&lt;BR /&gt;kINPUTMUX_Adc0SeqaIrqToDma = 0U + (DMA_TRIG0_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_Adc0SeqbIrqToDma = 1U + (DMA_TRIG0_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_Sct0DmaReq0ToDma = 2U + (DMA_TRIG0_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_Sct0DmaReq1ToDma = 3U + (DMA_TRIG0_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_Ctimer32B0M0ToDma = 4U + (DMA_TRIG0_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_Ctimer32B0M1ToDma = 5U + (DMA_TRIG0_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_Ctimer32B1M0ToDma = 6U + (DMA_TRIG0_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_Ctimer32B2M0ToDma = 7U + (DMA_TRIG0_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_Ctimer32B2M1ToDma = 8U + (DMA_TRIG0_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_Ctimer32B3M0ToDma = 9U + (DMA_TRIG0_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_Ctimer32B4M0ToDma = 10U + (DMA_TRIG0_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_Ctimer32B4M1ToDma = 11U + (DMA_TRIG0_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_PinInt0ToDma = 12U + (DMA_TRIG0_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_PinInt1ToDma = 13U + (DMA_TRIG0_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_PinInt2ToDma = 14U + (DMA_TRIG0_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_PinInt3ToDma = 15U + (DMA_TRIG0_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_Otrig0ToDma = 16U + (DMA_TRIG0_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_Otrig1ToDma = 17U + (DMA_TRIG0_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_Otrig2ToDma = 18U + (DMA_TRIG0_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_Otrig3ToDma = 19U + (DMA_TRIG0_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;/*!&amp;lt; DMA OTRIG. */&lt;BR /&gt;kINPUTMUX_DmaUsart0RxTrigoutToTriginChannels = 0U + (DMA_OTRIG_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_DmaUsart0TxTrigoutToTriginChannels = 1U + (DMA_OTRIG_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_DmaUsart1RxTrigoutToTriginChannels = 2U + (DMA_OTRIG_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_DmaUsart1TxTrigoutToTriginChannels = 3U + (DMA_OTRIG_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_DmaUsart2RxTrigoutToTriginChannels = 4U + (DMA_OTRIG_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_DmaUsart2TxTrigoutToTriginChannels = 5U + (DMA_OTRIG_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_DmaUsart3RxTrigoutToTriginChannels = 6U + (DMA_OTRIG_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_DmaUsart3TxTrigoutToTriginChannels = 7U + (DMA_OTRIG_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_DmaSpi0RxTrigoutToTriginChannels = 8U + (DMA_OTRIG_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_DmaSpi0TxTrigoutToTriginChannels = 9U + (DMA_OTRIG_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_DmaSpi1RxTrigoutToTriginChannels = 10U + (DMA_OTRIG_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_DmaSpi1TxTrigoutToTriginChannels = 11U + (DMA_OTRIG_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_DmaI2c0SlaveTrigoutToTriginChannels = 12U + (DMA_OTRIG_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_DmaI2c0MasterTrigoutToTriginChannels = 13U + (DMA_OTRIG_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_DmaI2c1SlaveTrigoutToTriginChannels = 14U + (DMA_OTRIG_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_DmaI2c1MasterTrigoutToTriginChannels = 15U + (DMA_OTRIG_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_DmaI2c2SlaveTrigoutToTriginChannels = 16U + (DMA_OTRIG_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_DmaI2c2MasterTrigoutToTriginChannels = 17U + (DMA_OTRIG_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_DmaI2c0MonitorTrigoutToTriginChannels = 18U + (DMA_OTRIG_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_DmaI2c1MonitorTrigoutToTriginChannels = 19U + (DMA_OTRIG_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;kINPUTMUX_DmaI2c2MonitorTrigoutToTriginChannels = 20U + (DMA_OTRIG_PMUX_ID &amp;lt;&amp;lt; PMUX_SHIFT),&lt;BR /&gt;} inputmux_connection_t;&lt;/P&gt;</description>
      <pubDate>Tue, 03 Jan 2023 04:14:47 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/LPC54102-lpcxpressor54102-power-manager-lpc-Example/m-p/1576295#M51164</guid>
      <dc:creator>xiangjun_rong</dc:creator>
      <dc:date>2023-01-03T04:14:47Z</dc:date>
    </item>
    <item>
      <title>Re: LPC54102 lpcxpressor54102_power_manager_lpc Example</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/LPC54102-lpcxpressor54102-power-manager-lpc-Example/m-p/1576693#M51171</link>
      <description>&lt;P&gt;This is what I have:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;			/* Configure the Input Mux block and connect the trigger source to PinInt channel. */
			INPUTMUX_Init(INPUTMUX);
			INPUTMUX_AttachSignal(INPUTMUX, POWER_WAKEUP_DEST_PERIPHERAL, POWER_WAKEUP_KEY_INPUTMUX_SEL);
			INPUTMUX_Deinit(INPUTMUX); /* Turnoff clock to inputmux to save power. Clock is only needed to make changes */

	    PINT_Init(PINT);
	    PINT_PinInterruptConfig(PINT, POWER_WAKEUP_DEST_PERIPHERAL, kPINT_PinIntEnableFallEdge, power_manager_pint_intr_callback);
			PINT_EnableCallback(PINT);
			EnableDeepSleepIRQ(POWER_WAKEUP_KEY_INTERRUPT);&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The defines are:&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&lt;STRONG&gt;#define&lt;/STRONG&gt;&lt;/SPAN&gt; &lt;STRONG&gt;POWER_WAKEUP_DEST_PERIPHERAL&lt;/STRONG&gt;&lt;SPAN&gt; (kPINT_PinInt4)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&lt;STRONG&gt;#define&lt;/STRONG&gt;&lt;/SPAN&gt; &lt;SPAN&gt;&lt;STRONG&gt;POWER_WAKEUP_KEY_INPUTMUX_SEL&lt;/STRONG&gt;&lt;/SPAN&gt; (kINPUTMUX_GpioPort1Pin4ToPintsel)&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&lt;STRONG&gt;#define&lt;/STRONG&gt;&lt;/SPAN&gt; &lt;SPAN&gt;&lt;STRONG&gt;POWER_WAKEUP_KEY_INTERRUPT&lt;/STRONG&gt;&lt;/SPAN&gt; (PIN_INT4_IRQn)&lt;/P&gt;&lt;P&gt;So it looks to me like I should be using Port 1, pin 4 which is what the button is connected to (the button works when not sleeping). &amp;nbsp;The peripherals tool has the Port 1, pin 4 GPIO assigned to INT4 (pin 18).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 03 Jan 2023 23:56:28 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/LPC54102-lpcxpressor54102-power-manager-lpc-Example/m-p/1576693#M51171</guid>
      <dc:creator>JBM</dc:creator>
      <dc:date>2023-01-03T23:56:28Z</dc:date>
    </item>
    <item>
      <title>Re: LPC54102 lpcxpressor54102_power_manager_lpc Example</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/LPC54102-lpcxpressor54102-power-manager-lpc-Example/m-p/1576721#M51173</link>
      <description>&lt;P&gt;The STARTERSET register is set in EnableDeepSleepIRQ():&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;void EnableDeepSleepIRQ(IRQn_Type interrupt)
{
    uint32_t intNumber = (uint32_t)interrupt;

    uint32_t index = 0;

    while (intNumber &amp;gt;= 32u)
    {
        index++;
        intNumber -= 32u;
    }

    SYSCON-&amp;gt;STARTERSET[index] = 1u &amp;lt;&amp;lt; intNumber;
    EnableIRQ(interrupt); /* also enable interrupt at NVIC */
}&lt;/LI-CODE&gt;</description>
      <pubDate>Tue, 03 Jan 2023 21:23:10 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/LPC54102-lpcxpressor54102-power-manager-lpc-Example/m-p/1576721#M51173</guid>
      <dc:creator>JBM</dc:creator>
      <dc:date>2023-01-03T21:23:10Z</dc:date>
    </item>
    <item>
      <title>Re: LPC54102 lpcxpressor54102_power_manager_lpc Example</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/LPC54102-lpcxpressor54102-power-manager-lpc-Example/m-p/1576773#M51176</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;If you use the PIO1_4 as hardware button to trigger PINT4 interrupt, and use PINT4 module to wake-up the deep-sleep, I suggest you test in two steps.&lt;/P&gt;
&lt;P&gt;The first step is you can enter the PINT4 ISR after you press PIO1_4 button, in the case, the core works normally.&lt;/P&gt;
&lt;P&gt;After the first step works fine, you can take the second step, use the PINT4 to wake-up the core after the core enters deep-sleep.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Hope it can help you&lt;/P&gt;
&lt;P&gt;BR&lt;/P&gt;
&lt;P&gt;XiangJun Rong&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 04 Jan 2023 02:06:33 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/LPC54102-lpcxpressor54102-power-manager-lpc-Example/m-p/1576773#M51176</guid>
      <dc:creator>xiangjun_rong</dc:creator>
      <dc:date>2023-01-04T02:06:33Z</dc:date>
    </item>
    <item>
      <title>Re: LPC54102 lpcxpressor54102_power_manager_lpc Example</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/LPC54102-lpcxpressor54102-power-manager-lpc-Example/m-p/1576808#M51178</link>
      <description>&lt;P&gt;I already know the ISR for the GPIO works. &amp;nbsp;The button is working before it sleeps. &amp;nbsp;I'm getting interrupts on button push and release. &amp;nbsp;All of the PINT configurations above in my code are probably redundant since PINT is configured in peripherals.c.&amp;nbsp;&lt;/P&gt;&lt;P&gt;I commented them out and tried again, same result.&lt;/P&gt;&lt;P&gt;The second step doesn't work. &amp;nbsp;That's the problem.&lt;/P&gt;&lt;P&gt;I thought it might be crashing on wake (it may still be) so I used a spare GPIO on our board. &amp;nbsp;I set it high before sleeping and low immediately after returning from&amp;nbsp;POWER_EnterDeepSleep(). &amp;nbsp;The GPIO goes high and when I push the button again, it does not go low. &amp;nbsp;Current doesn't change either. &amp;nbsp;In my experience if it woke and crashed on an assertion (or something else) current would increase. &amp;nbsp;We're not seeing that.&lt;/P&gt;</description>
      <pubDate>Thu, 05 Jan 2023 00:48:09 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/LPC54102-lpcxpressor54102-power-manager-lpc-Example/m-p/1576808#M51178</guid>
      <dc:creator>JBM</dc:creator>
      <dc:date>2023-01-05T00:48:09Z</dc:date>
    </item>
    <item>
      <title>Re: LPC54102 lpcxpressor54102_power_manager_lpc Example</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/LPC54102-lpcxpressor54102-power-manager-lpc-Example/m-p/1577500#M51187</link>
      <description>&lt;P&gt;Just to add some more data. &amp;nbsp;These are what I think are the required registers immediately before calling POWER_EnterDeepSleep():&lt;/P&gt;&lt;P&gt;SYSCON&lt;SPAN&gt;-&amp;gt;&lt;/SPAN&gt;&lt;SPAN&gt;STARTER&lt;/SPAN&gt;&lt;SPAN&gt;[&lt;/SPAN&gt;&lt;SPAN&gt;0&lt;/SPAN&gt;&lt;SPAN&gt;] = 0x0&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;SYSCON&lt;SPAN&gt;-&amp;gt;&lt;/SPAN&gt;&lt;SPAN&gt;STARTER&lt;/SPAN&gt;&lt;SPAN&gt;[&lt;/SPAN&gt;&lt;SPAN&gt;1&lt;/SPAN&gt;&lt;SPAN&gt;] = 0x2&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;PINT&lt;SPAN&gt;-&amp;gt;&lt;/SPAN&gt;&lt;SPAN&gt;IENF = 0x1F&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;PINT&lt;SPAN&gt;-&amp;gt;&lt;/SPAN&gt;&lt;SPAN&gt;IENR = 0x1F&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;INPUTMUX&lt;SPAN&gt;-&amp;gt;&lt;/SPAN&gt;&lt;SPAN&gt;PINTSEL&lt;/SPAN&gt;&lt;SPAN&gt;[&lt;/SPAN&gt;&lt;SPAN&gt;0&lt;/SPAN&gt;&lt;SPAN&gt;] = 32&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;INPUTMUX&lt;SPAN&gt;-&amp;gt;&lt;/SPAN&gt;&lt;SPAN&gt;PINTSEL&lt;/SPAN&gt;&lt;SPAN&gt;[&lt;/SPAN&gt;&lt;SPAN&gt;1&lt;/SPAN&gt;&lt;SPAN&gt;] = 33&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;INPUTMUX&lt;SPAN&gt;-&amp;gt;&lt;/SPAN&gt;&lt;SPAN&gt;PINTSEL&lt;/SPAN&gt;&lt;SPAN&gt;[&lt;/SPAN&gt;&lt;SPAN&gt;2&lt;/SPAN&gt;&lt;SPAN&gt;] = 34&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;INPUTMUX&lt;SPAN&gt;-&amp;gt;&lt;/SPAN&gt;&lt;SPAN&gt;PINTSEL&lt;/SPAN&gt;&lt;SPAN&gt;[&lt;/SPAN&gt;&lt;SPAN&gt;3&lt;/SPAN&gt;&lt;SPAN&gt;] = 35&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;INPUTMUX&lt;SPAN&gt;-&amp;gt;&lt;/SPAN&gt;&lt;SPAN&gt;PINTSEL&lt;/SPAN&gt;&lt;SPAN&gt;[&lt;/SPAN&gt;&lt;SPAN&gt;4&lt;/SPAN&gt;&lt;SPAN&gt;] = 36&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;NVIC&lt;SPAN&gt;-&amp;gt;&lt;/SPAN&gt;&lt;SPAN&gt;ISER&lt;/SPAN&gt;&lt;SPAN&gt;[&lt;/SPAN&gt;&lt;SPAN&gt;0&lt;/SPAN&gt;&lt;SPAN&gt;] =&amp;nbsp;&lt;/SPAN&gt;0x32001e0&lt;/P&gt;&lt;P&gt;NVIC&lt;SPAN&gt;-&amp;gt;&lt;/SPAN&gt;&lt;SPAN&gt;ISER&lt;/SPAN&gt;&lt;SPAN&gt;[&lt;/SPAN&gt;&lt;SPAN&gt;1&lt;/SPAN&gt;&lt;SPAN&gt;] = 0x2&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Keep in mind that I have five buttons on this board, all with interrupts for rising or falling. &amp;nbsp;They all work. &amp;nbsp;I'm trying to wake on the button connected to pin 18 (Port 1, Pin 4). &amp;nbsp;So I see PINTSEL[4] set to 36 which looks correct. &amp;nbsp;STARTER[1] = 0x2 which corresponds to wake on PINT4. &amp;nbsp;STARTER[1] is 0x2 which corresponds to PINT4. &amp;nbsp;It looks like NVIC-&amp;gt;ISER[1] is also 0x2 which is PINT4.&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 05 Jan 2023 00:11:58 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/LPC54102-lpcxpressor54102-power-manager-lpc-Example/m-p/1577500#M51187</guid>
      <dc:creator>JBM</dc:creator>
      <dc:date>2023-01-05T00:11:58Z</dc:date>
    </item>
    <item>
      <title>Re: LPC54102 lpcxpressor54102_power_manager_lpc Example</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/LPC54102-lpcxpressor54102-power-manager-lpc-Example/m-p/1578182#M51204</link>
      <description>&lt;P&gt;For some odd reason I don't understand, I had to set the 12 MHz clock right before going to sleep. &amp;nbsp;It wakes up now.&lt;/P&gt;</description>
      <pubDate>Thu, 05 Jan 2023 22:19:37 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/LPC54102-lpcxpressor54102-power-manager-lpc-Example/m-p/1578182#M51204</guid>
      <dc:creator>JBM</dc:creator>
      <dc:date>2023-01-05T22:19:37Z</dc:date>
    </item>
  </channel>
</rss>

