<?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 CAN wakeup in VLPR in S32K</title>
    <link>https://community.nxp.com/t5/S32K/CAN-wakeup-in-VLPR/m-p/1002522#M5954</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;All,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I want to use Can wakeup functionality in VLPR mode with current consumption of less than 1mA for s32k116 MCU.&lt;/P&gt;&lt;P&gt;I am using PWM, LIN, CAN, Timer, Adc and digital pins for the project.&lt;/P&gt;&lt;P&gt;Can you please tell me the procedure for Can wakeup functionality in VLPR mode.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks and Regards,&lt;/P&gt;&lt;P&gt;Shinde Umesh&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sat, 22 Feb 2020 11:51:29 GMT</pubDate>
    <dc:creator>shindeu66</dc:creator>
    <dc:date>2020-02-22T11:51:29Z</dc:date>
    <item>
      <title>CAN wakeup in VLPR</title>
      <link>https://community.nxp.com/t5/S32K/CAN-wakeup-in-VLPR/m-p/1002522#M5954</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;All,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I want to use Can wakeup functionality in VLPR mode with current consumption of less than 1mA for s32k116 MCU.&lt;/P&gt;&lt;P&gt;I am using PWM, LIN, CAN, Timer, Adc and digital pins for the project.&lt;/P&gt;&lt;P&gt;Can you please tell me the procedure for Can wakeup functionality in VLPR mode.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks and Regards,&lt;/P&gt;&lt;P&gt;Shinde Umesh&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 22 Feb 2020 11:51:29 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/CAN-wakeup-in-VLPR/m-p/1002522#M5954</guid>
      <dc:creator>shindeu66</dc:creator>
      <dc:date>2020-02-22T11:51:29Z</dc:date>
    </item>
    <item>
      <title>Re: CAN wakeup in VLPR</title>
      <link>https://community.nxp.com/t5/S32K/CAN-wakeup-in-VLPR/m-p/1002523#M5955</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello &lt;A class="jx-jive-macro-user" href="https://community.nxp.com/people/shindeu66@gmail.com"&gt;shindeu66@gmail.com&lt;/A&gt;,&lt;BR /&gt;The VLPR mode is a RUN mode not a STOP mode.&lt;BR /&gt;And the FlexCAN module is fully functional in this mode.&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="pastedImage_1.png"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/99362i54FD4AC5A4B078C9/image-size/large?v=v2&amp;amp;px=999" role="button" title="pastedImage_1.png" alt="pastedImage_1.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&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/100101i36A5FEB74E16AFC9/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&gt;However, in VLPR, the max SYS_CLK frequency is 4MHz.&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="pastedImage_4.png"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/99658i641B927E8C1E96E3/image-size/large?v=v2&amp;amp;px=999" role="button" title="pastedImage_4.png" alt="pastedImage_4.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="pastedImage_5.png"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/99820iCA6B5FFEAB6EFBD6/image-size/large?v=v2&amp;amp;px=999" role="button" title="pastedImage_5.png" alt="pastedImage_5.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;Please note that the SIRC clock&amp;nbsp;is not very precise:&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="pastedImage_6.png"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/99946iBCD82858CAEC3A5C/image-size/large?v=v2&amp;amp;px=999" role="button" title="pastedImage_6.png" alt="pastedImage_6.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Also, the specified consumption of S32K116 in VLPR is &amp;gt;1mA.&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="pastedImage_7.png"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/100074i8A9CFC5F043953F4/image-size/large?v=v2&amp;amp;px=999" role="button" title="pastedImage_7.png" alt="pastedImage_7.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;Please refer to the S32K1xx_Power_Modes_Configuration.xlsx file attached to the&amp;nbsp;datasheet for information about use cases.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Daniel&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 26 Feb 2020 14:44:59 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/CAN-wakeup-in-VLPR/m-p/1002523#M5955</guid>
      <dc:creator>danielmartynek</dc:creator>
      <dc:date>2020-02-26T14:44:59Z</dc:date>
    </item>
    <item>
      <title>Re: CAN wakeup in VLPR</title>
      <link>https://community.nxp.com/t5/S32K/CAN-wakeup-in-VLPR/m-p/1002524#M5956</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;Mr. Daniel,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; I have followed the example and procedure to enter into the VLPS that, before entering into VLPS FIRC and SOSC should be off and only SIRC should be running and also I converted the CAN rx pin as normal gpio pin for detecting the interrupt but its not detecting.&lt;/P&gt;&lt;P&gt;Can you please tell me what I am missing or doing wrong configuration while entering to RUN to VLPS.&lt;/P&gt;&lt;P&gt;And also when I am directly entering into the VLPS still the application code is in RUN condition.&lt;/P&gt;&lt;P&gt;So I am first entering into VLPR and then VLPS from it.&lt;/P&gt;&lt;P&gt;Please give the solution.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;// Currently first entering into VLPR if some conditions are met.&lt;/P&gt;&lt;DIV&gt;void RUN_to_VLPR (void)&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp;INT8U mode;&lt;BR /&gt;&amp;nbsp;init_NVIC();&lt;BR /&gt;&amp;nbsp;mode = (SMC-&amp;gt;PMSTAT &amp;amp; SMC_PMSTAT_PMSTAT_MASK) &amp;gt;&amp;gt; SMC_PMSTAT_PMSTAT_SHIFT;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;if((mode != VLPR_MODE))&lt;BR /&gt;&amp;nbsp;{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;b_PWRModeChg = OFF;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;CAN0-&amp;gt;CTRL1&amp;nbsp;&amp;nbsp; = CAN_CTRL1_CLKSRC(0); // CAN clock is configured as system clock&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;SCG-&amp;gt;SOSCCSR = SCG_SOSCCSR_SOSCCMRE(0); // disabled SCOSC monitor&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;SCG-&amp;gt;FIRCCSR = SCG_FIRCCSR_FIRCEN(0); &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; // disable FIRC&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;SCG-&amp;gt;SOSCCSR = SCG_SOSCCSR_SOSCEN(0); &amp;nbsp; // disabled&amp;nbsp; SOSC&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;SMC-&amp;gt;PMPROT |= SMC_PMPROT_AVLP(1);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;if(SMC-&amp;gt;PMSTAT == RUN_MODE)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;PMC-&amp;gt;REGSC |= PMC_REGSC_BIASEN_MASK;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;SMC-&amp;gt;PMCTRL = SMC_PMCTRL_RUNM(2);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;while(SMC-&amp;gt;PMSTAT != 0x04);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;}&lt;BR /&gt;&amp;nbsp;&amp;nbsp;f_OP_PWRMode = Md_vlpr;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;RUN_to_VLPS();&lt;BR /&gt;&amp;nbsp;}&lt;BR /&gt;}&lt;/DIV&gt;&lt;DIV&gt;void RUN_to_VLPS (void)&lt;BR /&gt;{&lt;/DIV&gt;&lt;DIV&gt;//&amp;nbsp;DISABLE_INTERRUPTS();&amp;nbsp; // I think its not working&lt;BR /&gt;&amp;nbsp;INT8U mode;&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;// the below configuration is for configuring CANrx pin as gpio interrupt wakeup capable&lt;BR /&gt;&amp;nbsp;INT_SYS_EnableIRQ(PORT_IRQn);&lt;BR /&gt;&amp;nbsp;PINS_DRV_SetPinDirection(PTE, 4, GPIO_INPUT_DIRECTION);&lt;BR /&gt;&amp;nbsp;PINS_DRV_SetMuxModeSel(PORTE, 4, PORT_MUX_AS_GPIO);&lt;BR /&gt;&amp;nbsp;PINS_DRV_SetPinIntSel(PORTE, 4, PORT_INT_RISING_EDGE);;&lt;BR /&gt;&amp;nbsp;PINS_DRV_SetPullSel(PORTE, 4, PORT_INTERNAL_PULL_UP_ENABLED);&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;mode = (SMC-&amp;gt;PMSTAT &amp;amp; SMC_PMSTAT_PMSTAT_MASK) &amp;gt;&amp;gt; SMC_PMSTAT_PMSTAT_SHIFT;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; if(mode == VLPR_MODE)&lt;BR /&gt;&amp;nbsp; {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;init_SIRC();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;Goto_SIRC();&lt;BR /&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&amp;nbsp;S32_SCB -&amp;gt;SCR|=S32_SCB_SCR_SLEEPDEEP_MASK;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;SMC-&amp;gt;PMPROT |= SMC_PMPROT_AVLP_MASK;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;SMC-&amp;gt;PMCTRL=SMC_PMCTRL_STOPM(2);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;PMC-&amp;gt;REGSC |= PMC_REGSC_BIASEN_MASK;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;/* Check if current mode is RUN mode */&lt;BR /&gt;&amp;nbsp;if(SMC-&amp;gt;PMSTAT == VLPR_MODE)&lt;BR /&gt;&amp;nbsp;{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;/* Go to deep sleep mode */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;asm("WFI");&lt;BR /&gt;&amp;nbsp;}&lt;BR /&gt;}&lt;/DIV&gt;&lt;DIV&gt;void Goto_SIRC(void)&lt;BR /&gt;{&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;// is this required, as you did like this&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uint32_t srie = RCM-&amp;gt;SRIE;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; RCM-&amp;gt;SRIE = 0x0000;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; RCM-&amp;gt;SRIE = 0xFFFF;&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;// taken from user manual of s32k&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;SCG-&amp;gt;RCCR = SCG_RCCR_SCS(2);&lt;BR /&gt;&amp;nbsp;SCG-&amp;gt;RCCR = SCG_RCCR_DIVBUS(1);&lt;BR /&gt;&amp;nbsp;SCG-&amp;gt;RCCR = SCG_RCCR_DIVSLOW(0);&lt;BR /&gt;&amp;nbsp;SCG-&amp;gt;RCCR = SCG_RCCR_DIVSLOW(3);&lt;/DIV&gt;&lt;DIV&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while(!((SCG-&amp;gt;CSR &amp;amp; (0x0F000000)) &amp;amp; 0x02000000));&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while((SCG-&amp;gt;SIRCCSR &amp;amp; (1 &amp;lt;&amp;lt; 25)) == 0);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; RCM-&amp;gt;SRIE = srie;&lt;BR /&gt;}&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;void init_SIRC(void)&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SCG-&amp;gt;SIRCCSR &amp;amp;= ~ (1 &amp;lt;&amp;lt; 24);&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SCG-&amp;gt;SIRCCSR = SCG_SIRCCSR_SIRCEN(1);&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SCG-&amp;gt;SIRCDIV |= 0x0404;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; while((SCG-&amp;gt;SIRCCSR &amp;amp; (1 &amp;lt;&amp;lt; 24)) == 0); // wait until clock is valid&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SCG-&amp;gt;SIRCCSR |= (1 &amp;lt;&amp;lt; 24);&lt;BR /&gt;}&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;// PORTE, PORTA&lt;/DIV&gt;&lt;DIV&gt;void init_NVIC(void)&lt;BR /&gt;{&lt;/DIV&gt;&lt;DIV&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // PORT_interrupt&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; S32_NVIC-&amp;gt;ICPR[0] = (1 &amp;lt;&amp;lt; 9);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; S32_NVIC-&amp;gt;ISER[0] = (1 &amp;lt;&amp;lt; 9);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; S32_NVIC-&amp;gt;IPR[2] = S32_NVIC_IPR_PRI_1(1);&amp;nbsp; // Priority level 1&lt;BR /&gt;}&lt;/DIV&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks and Regards,&lt;/P&gt;&lt;P&gt;Shinde Umesh&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 05 Mar 2020 05:26:31 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/CAN-wakeup-in-VLPR/m-p/1002524#M5956</guid>
      <dc:creator>shindeu66</dc:creator>
      <dc:date>2020-03-05T05:26:31Z</dc:date>
    </item>
    <item>
      <title>Re: CAN wakeup in VLPR</title>
      <link>https://community.nxp.com/t5/S32K/CAN-wakeup-in-VLPR/m-p/1002525#M5957</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello&amp;nbsp;&lt;A class="jx-jive-macro-user" href="https://community.nxp.com/people/shindeu66@gmail.com"&gt;shindeu66@gmail.com&lt;/A&gt;,&lt;/P&gt;&lt;P&gt;Please test each function separately e.g. the interrupt in RUN mode.&lt;/P&gt;&lt;P&gt;It&amp;nbsp;does not have to enter VLPR first, it can enter VLPS from RUN directly.&lt;/P&gt;&lt;P&gt;You cannot disable SOSC, FIRC, SPLL before SIRC is the system clock.&lt;/P&gt;&lt;P&gt;Please disconnect the debugger and power cycle the MCU so that the MCU can enter VLPS.&lt;/P&gt;&lt;P&gt;Measure the consumption of the MCU to see the state of the MCU.&lt;/P&gt;&lt;P&gt;You can also scope BYS_CLK on a CLKOUT pin, the BUS clock is gated off in the VLPS.&lt;/P&gt;&lt;P&gt;This&amp;nbsp;&lt;A href="https://community.nxp.com/docs/DOC-341788"&gt;Example S32K144 RTC VLPS S32DS.R1&lt;/A&gt;&amp;nbsp;utilizes the CLKOUT function.&lt;/P&gt;&lt;P&gt;Please disable the FlexCAN module before the transition to VLPS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you,&lt;/P&gt;&lt;P&gt;BR, Daniel&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 09 Mar 2020 11:57:24 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/CAN-wakeup-in-VLPR/m-p/1002525#M5957</guid>
      <dc:creator>danielmartynek</dc:creator>
      <dc:date>2020-03-09T11:57:24Z</dc:date>
    </item>
  </channel>
</rss>

