<?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 MK64F bootloader jump into Application Issue in Kinetis Microcontrollers</title>
    <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/MK64F-bootloader-jump-into-Application-Issue/m-p/1052095#M56946</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I try to write a code that bootloader jump to application. The code is as below.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;void&amp;nbsp;&lt;SPAN&gt;bootloader_run(void)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;volatile uint32_t addr = 0x40000;&amp;nbsp; //Application Address&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;void (*entryPoint)(void);&lt;/P&gt;&lt;P&gt;uint32_t runBootloaderAddress ;&lt;/P&gt;&lt;P&gt;__DSB();&lt;BR /&gt; __ISB();&lt;/P&gt;&lt;P&gt;__set_MSP(*((volatile uint32_t *)addr));&lt;BR /&gt; __set_PSP(*((volatile uint32_t *)addr));&lt;/P&gt;&lt;P&gt;SCB-&amp;gt;VTOR = (uint32_t)addr;&lt;/P&gt;&lt;P&gt;runBootloaderAddress = *((volatile uint32_t *)addr+4);&lt;/P&gt;&lt;P&gt;entryPoint = (void (*)(void))runBootloaderAddress;&lt;/P&gt;&lt;P&gt;entryPoint();&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;int main(void)&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;/* Init board hardware. */&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;BOARD_InitBootPins();&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;BOARD_InitBootClocks();&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;BOARD_InitBootPeripherals();&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;bootloader_run();&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;while(1)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;return 0;&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;----------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;P&gt;My application code is from address 0x40000&amp;nbsp; ~ 0x7FFFF and is as below,&lt;/P&gt;&lt;P&gt;It sends message via UART0 to PC period 1 sec.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have verified the application code is work before (start address is 0x00).&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;uint8_t g_tipString[] = "RC-EDA example\r\n";&lt;/P&gt;&lt;P&gt;int main(void)&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;BOARD_InitBootPins();&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;BOARD_InitBootClocks();&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;BOARD_InitBootPeripherals();&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;while(1)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;UART_SendEDMA_Data(UART0, g_tipString, (sizeof(g_tipString) - 1));&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Delay_MS(1000);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;----------------------------------------------------------------------------------------------------&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;Flash:&lt;/P&gt;&lt;P&gt;0x0000&amp;nbsp; &amp;nbsp; | bootloader |&lt;/P&gt;&lt;P&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; &amp;nbsp; &amp;nbsp; &amp;nbsp;|&lt;/P&gt;&lt;P&gt;0x40000&amp;nbsp; | application |&lt;/P&gt;&lt;P&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; &amp;nbsp; &amp;nbsp; &amp;nbsp;|&lt;/P&gt;&lt;P&gt;0x7FFFF&amp;nbsp; | end&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; |&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It does not work and&amp;nbsp;I do not know what is the issue?&amp;nbsp;&lt;/P&gt;&lt;P&gt;I research the paper about "jump bootloader application" in nxp community and try to google all of the topic.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 06 May 2020 16:16:24 GMT</pubDate>
    <dc:creator>chhsu0229</dc:creator>
    <dc:date>2020-05-06T16:16:24Z</dc:date>
    <item>
      <title>MK64F bootloader jump into Application Issue</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/MK64F-bootloader-jump-into-Application-Issue/m-p/1052095#M56946</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I try to write a code that bootloader jump to application. The code is as below.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;void&amp;nbsp;&lt;SPAN&gt;bootloader_run(void)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;volatile uint32_t addr = 0x40000;&amp;nbsp; //Application Address&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;void (*entryPoint)(void);&lt;/P&gt;&lt;P&gt;uint32_t runBootloaderAddress ;&lt;/P&gt;&lt;P&gt;__DSB();&lt;BR /&gt; __ISB();&lt;/P&gt;&lt;P&gt;__set_MSP(*((volatile uint32_t *)addr));&lt;BR /&gt; __set_PSP(*((volatile uint32_t *)addr));&lt;/P&gt;&lt;P&gt;SCB-&amp;gt;VTOR = (uint32_t)addr;&lt;/P&gt;&lt;P&gt;runBootloaderAddress = *((volatile uint32_t *)addr+4);&lt;/P&gt;&lt;P&gt;entryPoint = (void (*)(void))runBootloaderAddress;&lt;/P&gt;&lt;P&gt;entryPoint();&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;int main(void)&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;/* Init board hardware. */&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;BOARD_InitBootPins();&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;BOARD_InitBootClocks();&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;BOARD_InitBootPeripherals();&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;bootloader_run();&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;while(1)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;return 0;&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;----------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;P&gt;My application code is from address 0x40000&amp;nbsp; ~ 0x7FFFF and is as below,&lt;/P&gt;&lt;P&gt;It sends message via UART0 to PC period 1 sec.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have verified the application code is work before (start address is 0x00).&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;uint8_t g_tipString[] = "RC-EDA example\r\n";&lt;/P&gt;&lt;P&gt;int main(void)&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;BOARD_InitBootPins();&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;BOARD_InitBootClocks();&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;BOARD_InitBootPeripherals();&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;while(1)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;UART_SendEDMA_Data(UART0, g_tipString, (sizeof(g_tipString) - 1));&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Delay_MS(1000);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;----------------------------------------------------------------------------------------------------&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;Flash:&lt;/P&gt;&lt;P&gt;0x0000&amp;nbsp; &amp;nbsp; | bootloader |&lt;/P&gt;&lt;P&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; &amp;nbsp; &amp;nbsp; &amp;nbsp;|&lt;/P&gt;&lt;P&gt;0x40000&amp;nbsp; | application |&lt;/P&gt;&lt;P&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; &amp;nbsp; &amp;nbsp; &amp;nbsp;|&lt;/P&gt;&lt;P&gt;0x7FFFF&amp;nbsp; | end&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; |&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It does not work and&amp;nbsp;I do not know what is the issue?&amp;nbsp;&lt;/P&gt;&lt;P&gt;I research the paper about "jump bootloader application" in nxp community and try to google all of the topic.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 06 May 2020 16:16:24 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/MK64F-bootloader-jump-into-Application-Issue/m-p/1052095#M56946</guid>
      <dc:creator>chhsu0229</dc:creator>
      <dc:date>2020-05-06T16:16:24Z</dc:date>
    </item>
    <item>
      <title>Re: MK64F bootloader jump into Application Issue</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/MK64F-bootloader-jump-into-Application-Issue/m-p/1052096#M56947</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;&lt;A href="https://community.nxp.com/message/552186?commentID=552186#comment-552186" target="test_blank"&gt;https://community.nxp.com/message/552186?commentID=552186#comment-552186&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://www.utasker.com/kinetis/FRDM-K64F.html" target="test_blank"&gt;https://www.utasker.com/kinetis/FRDM-K64F.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Mark&lt;BR /&gt;&lt;EM&gt;[uTasker project developer for Kinetis and i.MX RT]&lt;/EM&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 06 May 2020 17:26:55 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/MK64F-bootloader-jump-into-Application-Issue/m-p/1052096#M56947</guid>
      <dc:creator>mjbcswitzerland</dc:creator>
      <dc:date>2020-05-06T17:26:55Z</dc:date>
    </item>
    <item>
      <title>Re: MK64F bootloader jump into Application Issue</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/MK64F-bootloader-jump-into-Application-Issue/m-p/1052097#M56948</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;You do not set the&amp;nbsp;SCB-&amp;gt;VTOR before you set the msp.&lt;/P&gt;&lt;P&gt;Have a great day,&lt;BR /&gt;TIC&lt;/P&gt;&lt;P&gt;-------------------------------------------------------------------------------&lt;BR /&gt;Note:&lt;BR /&gt;- If this post answers your question, please click the "Mark Correct" button. Thank you!&lt;/P&gt;&lt;P&gt;- We are following threads for 7 weeks after the last post, later replies are ignored&lt;BR /&gt;Please open a new thread and refer to the closed one, if you have a related question at a later point in time.&lt;BR /&gt;-------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 07 May 2020 01:20:38 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/MK64F-bootloader-jump-into-Application-Issue/m-p/1052097#M56948</guid>
      <dc:creator>nxf56274</dc:creator>
      <dc:date>2020-05-07T01:20:38Z</dc:date>
    </item>
    <item>
      <title>Re: MK64F bootloader jump into Application Issue</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/MK64F-bootloader-jump-into-Application-Issue/m-p/1052098#M56949</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Da Li,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I forget to list "SCB-&amp;gt;VTOR = (uint32_t)addr;"&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I also do that .&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 07 May 2020 03:03:59 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/MK64F-bootloader-jump-into-Application-Issue/m-p/1052098#M56949</guid>
      <dc:creator>chhsu0229</dc:creator>
      <dc:date>2020-05-07T03:03:59Z</dc:date>
    </item>
    <item>
      <title>Re: MK64F bootloader jump into Application Issue</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/MK64F-bootloader-jump-into-Application-Issue/m-p/1052099#M56950</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;Hi,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;You can refer this link.&lt;A href="https://community.nxp.com/docs/DOC-344903"&gt;FRDMK64F SD Bootloader&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px;"&gt;Have a great day,&lt;BR /&gt;TIC&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px;"&gt;-------------------------------------------------------------------------------&lt;BR /&gt;Note:&lt;BR /&gt;- If this post answers your question, please click the "Mark Correct" button. Thank you!&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px;"&gt;- We are following threads for 7 weeks after the last post, later replies are ignored&lt;BR /&gt;Please open a new thread and refer to the closed one, if you have a related question at a later point in time.&lt;BR /&gt;-------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 07 May 2020 03:12:13 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/MK64F-bootloader-jump-into-Application-Issue/m-p/1052099#M56950</guid>
      <dc:creator>nxf56274</dc:creator>
      <dc:date>2020-05-07T03:12:13Z</dc:date>
    </item>
  </channel>
</rss>

