<?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のトピックDo I need to create Vector table in RAM while using FreeRTOS with FRDM KL26Z?</title>
    <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Do-I-need-to-create-Vector-table-in-RAM-while-using-FreeRTOS/m-p/662149#M40643</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;I am using Free RTOS and FRDM KL26Z board and in my application, I need to give semaphore to a task from within Low power timer interrupt handler. &amp;nbsp;Inorder to use the ISR, I tried registering it with FreeRTOS so that vector address gets allocated to this particular ISR but my code after compilation is stopping at the point below:&amp;nbsp;&lt;/P&gt;&lt;P&gt;/* Check whether there is vector table in RAM */&lt;BR /&gt; assert(__VECTOR_RAM != 0U);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Do I need to create vector table in RAM for &amp;nbsp;interrupt usage with FreeRTOS ?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 28 Sep 2016 15:57:43 GMT</pubDate>
    <dc:creator>vartikasingh</dc:creator>
    <dc:date>2016-09-28T15:57:43Z</dc:date>
    <item>
      <title>Do I need to create Vector table in RAM while using FreeRTOS with FRDM KL26Z?</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Do-I-need-to-create-Vector-table-in-RAM-while-using-FreeRTOS/m-p/662149#M40643</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;I am using Free RTOS and FRDM KL26Z board and in my application, I need to give semaphore to a task from within Low power timer interrupt handler. &amp;nbsp;Inorder to use the ISR, I tried registering it with FreeRTOS so that vector address gets allocated to this particular ISR but my code after compilation is stopping at the point below:&amp;nbsp;&lt;/P&gt;&lt;P&gt;/* Check whether there is vector table in RAM */&lt;BR /&gt; assert(__VECTOR_RAM != 0U);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Do I need to create vector table in RAM for &amp;nbsp;interrupt usage with FreeRTOS ?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 28 Sep 2016 15:57:43 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/Do-I-need-to-create-Vector-table-in-RAM-while-using-FreeRTOS/m-p/662149#M40643</guid>
      <dc:creator>vartikasingh</dc:creator>
      <dc:date>2016-09-28T15:57:43Z</dc:date>
    </item>
    <item>
      <title>Re: Do I need to create Vector table in RAM while using FreeRTOS with FRDM KL26Z?</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Do-I-need-to-create-Vector-table-in-RAM-while-using-FreeRTOS/m-p/662150#M40644</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;If you use FreeRTOS, I do not think that the freeRTOS modify the interrupt table.&lt;/P&gt;&lt;P&gt;The interrrupt vector is located at 0x00000000 flash address, in other words, you can change the interrupt vector table in the startup_MKxxx.S to register your ISR directly.&lt;/P&gt;&lt;P&gt;I copy the part from *.map. you can see that address of vector table.&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;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;.interrupts&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x00000000&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x400&lt;BR /&gt;&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; 0x00000000&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; __VECTOR_TABLE = .&lt;BR /&gt;&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; 0x00000000&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; . = ALIGN (0x4)&lt;BR /&gt;&amp;nbsp;*(.isr_vector)&lt;BR /&gt;&amp;nbsp;.isr_vector&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x00000000&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x400 ./startup/startup_MK64F12.o&lt;BR /&gt;&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; 0x00000000&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; __isr_vector&lt;BR /&gt;&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; 0x00000400&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; . = ALIGN (0x4)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;.flash_config&amp;nbsp;&amp;nbsp; 0x00000400&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x10&lt;BR /&gt;&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; 0x00000400&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; . = ALIGN (0x4)&lt;BR /&gt;&amp;nbsp;*(.FlashConfig)&lt;BR /&gt;&amp;nbsp;.FlashConfig&amp;nbsp;&amp;nbsp; 0x00000400&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x10 ./startup/startup_MK64F12.o&lt;BR /&gt;&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; 0x00000410&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; . = ALIGN (0x4)&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 30 Sep 2016 07:44:11 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/Do-I-need-to-create-Vector-table-in-RAM-while-using-FreeRTOS/m-p/662150#M40644</guid>
      <dc:creator>xiangjun_rong</dc:creator>
      <dc:date>2016-09-30T07:44:11Z</dc:date>
    </item>
    <item>
      <title>Re: Do I need to create Vector table in RAM while using FreeRTOS with FRDM KL26Z?</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Do-I-need-to-create-Vector-table-in-RAM-while-using-FreeRTOS/m-p/662151#M40645</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;Thanks xiangjun. We don't need to create Vector table in RAM for FreeRTOS but still, my LPTMR interrupt stops working as soon as I start the OS scheduler. The Interrupt works fine without starting the scheduler but stops working after the scheduler is started and the task works after the scheduler is run but not interrupt. I debugged the code by checking the LPTMR interrupt code separately, changing the priority of both task and interrupt, checked the FreeRTOS site for this issue but still not able to resolve the issue.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 10 Oct 2016 06:34:01 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/Do-I-need-to-create-Vector-table-in-RAM-while-using-FreeRTOS/m-p/662151#M40645</guid>
      <dc:creator>vartikasingh</dc:creator>
      <dc:date>2016-10-10T06:34:01Z</dc:date>
    </item>
    <item>
      <title>Re: Do I need to create Vector table in RAM while using FreeRTOS with FRDM KL26Z?</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Do-I-need-to-create-Vector-table-in-RAM-while-using-FreeRTOS/m-p/662152#M40646</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;Pls try to set the LPTMR in the highest the priority by code:&lt;/P&gt;&lt;P&gt;&amp;nbsp; NVIC_SetPriority(LPTMR, 0U);&amp;nbsp; //set LPTMR in highest interrupt priority&lt;/P&gt;&lt;P&gt;__asm("cpsie i");&amp;nbsp; //enable interrupt&lt;/P&gt;&lt;P&gt;what is the result?&lt;/P&gt;&lt;P&gt;As far as i know the FreeRTOS uses systick module to get time.&lt;/P&gt;&lt;P&gt;BR&lt;/P&gt;&lt;P&gt;XiangJun Rong&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 11 Oct 2016 06:32:01 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/Do-I-need-to-create-Vector-table-in-RAM-while-using-FreeRTOS/m-p/662152#M40646</guid>
      <dc:creator>xiangjun_rong</dc:creator>
      <dc:date>2016-10-11T06:32:01Z</dc:date>
    </item>
  </channel>
</rss>

