<?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>S32KのトピックRe: Interrupt in FreeRTOS for S32K144</title>
    <link>https://community.nxp.com/t5/S32K/Interrupt-in-FreeRTOS-for-S32K144/m-p/1396137#M13577</link>
    <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;as mentioned in this article:&lt;/P&gt;
&lt;P&gt;&lt;A href="https://www.freertos.org/RTOS-Cortex-M3-M4.html" target="_blank"&gt;https://www.freertos.org/RTOS-Cortex-M3-M4.html&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;"...any interrupt service routine that uses an RTOS API function must have its priority manually set to a value that is numerically equal to or greater than the configMAX_SYSCALL_INTERRUPT_PRIORITY setting."&lt;/P&gt;
&lt;P&gt;LPUART driver uses OSIF. If there's no freertos in your project, baremetal version of OSIF is used. Once you add freertos, freertos version of OSIF is used. So, the condition above should be met.&lt;/P&gt;
&lt;P&gt;I guess that this could be the reason.&lt;/P&gt;
&lt;P&gt;Regards,&lt;/P&gt;
&lt;P&gt;Lukas&lt;/P&gt;</description>
    <pubDate>Fri, 07 Jan 2022 11:46:12 GMT</pubDate>
    <dc:creator>lukaszadrapa</dc:creator>
    <dc:date>2022-01-07T11:46:12Z</dc:date>
    <item>
      <title>Interrupt in FreeRTOS for S32K144</title>
      <link>https://community.nxp.com/t5/S32K/Interrupt-in-FreeRTOS-for-S32K144/m-p/1396065#M13575</link>
      <description>&lt;P&gt;I have a project using UART interrupt like this(pseudo code):&lt;/P&gt;
&lt;P&gt;main(){&lt;/P&gt;
&lt;P&gt;setPriority(UART, 7);&lt;/P&gt;
&lt;P&gt;wait_tx();&lt;/P&gt;
&lt;P&gt;func1();&lt;/P&gt;
&lt;P&gt;};&lt;/P&gt;
&lt;P&gt;Run this project, I can reach func1(). Then I import FreeRTOS into my project (with default configuration), then I stuck at&amp;nbsp;wait_tx(). Then I try to change&amp;nbsp;&lt;SPAN&gt;configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY&amp;nbsp;from (0x01) (default) to (0x09) (bigger than Uart's priority) then I can reach func1(). I see that:&amp;nbsp;configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY use to configure to call FreeRTOS API from ISR. But in my UART interrupt function I dont use any FreeRTOS API. What is my problem ?&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 07 Jan 2022 09:08:56 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/Interrupt-in-FreeRTOS-for-S32K144/m-p/1396065#M13575</guid>
      <dc:creator>AnhNguyenDuc</dc:creator>
      <dc:date>2022-01-07T09:08:56Z</dc:date>
    </item>
    <item>
      <title>Re: Interrupt in FreeRTOS for S32K144</title>
      <link>https://community.nxp.com/t5/S32K/Interrupt-in-FreeRTOS-for-S32K144/m-p/1396137#M13577</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;as mentioned in this article:&lt;/P&gt;
&lt;P&gt;&lt;A href="https://www.freertos.org/RTOS-Cortex-M3-M4.html" target="_blank"&gt;https://www.freertos.org/RTOS-Cortex-M3-M4.html&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;"...any interrupt service routine that uses an RTOS API function must have its priority manually set to a value that is numerically equal to or greater than the configMAX_SYSCALL_INTERRUPT_PRIORITY setting."&lt;/P&gt;
&lt;P&gt;LPUART driver uses OSIF. If there's no freertos in your project, baremetal version of OSIF is used. Once you add freertos, freertos version of OSIF is used. So, the condition above should be met.&lt;/P&gt;
&lt;P&gt;I guess that this could be the reason.&lt;/P&gt;
&lt;P&gt;Regards,&lt;/P&gt;
&lt;P&gt;Lukas&lt;/P&gt;</description>
      <pubDate>Fri, 07 Jan 2022 11:46:12 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/Interrupt-in-FreeRTOS-for-S32K144/m-p/1396137#M13577</guid>
      <dc:creator>lukaszadrapa</dc:creator>
      <dc:date>2022-01-07T11:46:12Z</dc:date>
    </item>
    <item>
      <title>Re: Interrupt in FreeRTOS for S32K144</title>
      <link>https://community.nxp.com/t5/S32K/Interrupt-in-FreeRTOS-for-S32K144/m-p/1396414#M13581</link>
      <description>&lt;P&gt;Thank you. So, When I create a project on SDK and use LPUART, will LPUART use OSIF by default?. Can you explain more about this point or share a document about it?&lt;/P&gt;</description>
      <pubDate>Sun, 09 Jan 2022 02:56:52 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/Interrupt-in-FreeRTOS-for-S32K144/m-p/1396414#M13581</guid>
      <dc:creator>AnhNguyenDuc</dc:creator>
      <dc:date>2022-01-09T02:56:52Z</dc:date>
    </item>
    <item>
      <title>Re: Interrupt in FreeRTOS for S32K144</title>
      <link>https://community.nxp.com/t5/S32K/Interrupt-in-FreeRTOS-for-S32K144/m-p/1396588#M13585</link>
      <description>&lt;P&gt;Some details about the OSIF can be found in the user manual:&lt;/P&gt;
&lt;P&gt;c:\NXP\S32DS.3.4\S32DS\software\S32SDK_S32K1XX_RTM_4.0.2\doc\S32SDK_S32K144_UserManual.pdf&lt;/P&gt;
&lt;P&gt;Or take a look at the source code of LPUART driver to see how it is implemented. It's used for timeouts, for example:&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="lukaszadrapa_0-1641798136264.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/167125iC849E8AD5F7EB8D2/image-size/medium?v=v2&amp;amp;px=400" role="button" title="lukaszadrapa_0-1641798136264.png" alt="lukaszadrapa_0-1641798136264.png" /&gt;&lt;span class="lia-inline-image-caption" onclick="event.preventDefault();"&gt;lukaszadrapa_0-1641798136264.png&lt;/span&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;Regards,&lt;/P&gt;
&lt;P&gt;Lukas&lt;/P&gt;</description>
      <pubDate>Mon, 10 Jan 2022 07:02:36 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/Interrupt-in-FreeRTOS-for-S32K144/m-p/1396588#M13585</guid>
      <dc:creator>lukaszadrapa</dc:creator>
      <dc:date>2022-01-10T07:02:36Z</dc:date>
    </item>
  </channel>
</rss>

