<?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のトピックbootloader process</title>
    <link>https://community.nxp.com/t5/S32K/bootloader-process/m-p/685745#M1053</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi there,&lt;/P&gt;&lt;P&gt;now i have one CAN bootloader code, i can&amp;nbsp;use PCAN device to download APP code to new flash address.&lt;/P&gt;&lt;P&gt;the following is the APP flash parameter:&lt;/P&gt;&lt;P&gt;at S32K144_64_flash.ld :&amp;nbsp;&lt;/P&gt;&lt;P&gt;m_interrupts (RX) : ORIGIN = 0x00004000, LENGTH = 0x00000400 // set new interrupt, used for reload this part.&lt;BR /&gt; m_flash_config (RX) : ORIGIN = 0x00000400, LENGTH = 0x00000010// same with bootloader code&lt;BR /&gt; m_text (RX) : ORIGIN = 0x00004400, LENGTH = 0x0007BC00//new flash address.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;at: startup.c:&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;&lt;STRONG&gt;// if (__VECTOR_RAM != __VECTOR_TABLE)&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;// {&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;// /* Copy the vector table from ROM to RAM */&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;// for (n = 0; n &amp;lt; (((uint32_t)__RAM_VECTOR_TABLE_SIZE)/sizeof(uint32_t)); n++)&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;// {&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;// __VECTOR_RAM[n] = __VECTOR_TABLE[n];&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;// }&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;// /* Point the VTOR to the position of vector table */&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;// S32_SCB-&amp;gt;VTOR = (uint32_t)__VECTOR_RAM;&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;// }&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;// else&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;// {&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;// /* Point the VTOR to the position of vector table */&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;// S32_SCB-&amp;gt;VTOR = (uint32_t)__VECTOR_TABLE;&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;// }&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;S32_SCB-&amp;gt;VTOR = (uint32_t)0x4004;// i just use this line code, and comment original code.&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;through the above set, i can download code to board by CAN bootloader.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;my question is:&lt;/P&gt;&lt;P&gt;if i want to use &lt;SPAN style="background-color: #f6f6f6;"&gt;__VECTOR_RAM, how to set the parameter in&amp;nbsp;&lt;SPAN&gt;S32K144_64_flash.ld file?&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;is it ok to comment the original bold&amp;nbsp;&lt;SPAN style="background-color: #f6f6f6;"&gt;&lt;STRONG&gt;S32_SCB-&amp;gt;VTOR&lt;/STRONG&gt;&lt;/SPAN&gt; code&lt;SPAN style="background-color: #f6f6f6;"&gt;&lt;STRONG&gt;?&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 22px;"&gt;&lt;STRONG&gt;part II:&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;there have two ways to start CAN bootloader process.&lt;/P&gt;&lt;P&gt;1. power off and power on&amp;nbsp;&lt;/P&gt;&lt;P&gt;2. press reset button.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;do these two way lead to same process(both use __VECTOR_TABLE? )?&lt;/P&gt;&lt;P&gt;could you explain the difference between&amp;nbsp;&lt;SPAN&gt;__VECTOR_TABLE and&amp;nbsp;__VECTOR_RAM in S32_SCB-&amp;gt;VTOR?&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 27 Jul 2017 07:59:33 GMT</pubDate>
    <dc:creator>renshaoshuai</dc:creator>
    <dc:date>2017-07-27T07:59:33Z</dc:date>
    <item>
      <title>bootloader process</title>
      <link>https://community.nxp.com/t5/S32K/bootloader-process/m-p/685745#M1053</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi there,&lt;/P&gt;&lt;P&gt;now i have one CAN bootloader code, i can&amp;nbsp;use PCAN device to download APP code to new flash address.&lt;/P&gt;&lt;P&gt;the following is the APP flash parameter:&lt;/P&gt;&lt;P&gt;at S32K144_64_flash.ld :&amp;nbsp;&lt;/P&gt;&lt;P&gt;m_interrupts (RX) : ORIGIN = 0x00004000, LENGTH = 0x00000400 // set new interrupt, used for reload this part.&lt;BR /&gt; m_flash_config (RX) : ORIGIN = 0x00000400, LENGTH = 0x00000010// same with bootloader code&lt;BR /&gt; m_text (RX) : ORIGIN = 0x00004400, LENGTH = 0x0007BC00//new flash address.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;at: startup.c:&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;&lt;STRONG&gt;// if (__VECTOR_RAM != __VECTOR_TABLE)&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;// {&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;// /* Copy the vector table from ROM to RAM */&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;// for (n = 0; n &amp;lt; (((uint32_t)__RAM_VECTOR_TABLE_SIZE)/sizeof(uint32_t)); n++)&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;// {&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;// __VECTOR_RAM[n] = __VECTOR_TABLE[n];&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;// }&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;// /* Point the VTOR to the position of vector table */&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;// S32_SCB-&amp;gt;VTOR = (uint32_t)__VECTOR_RAM;&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;// }&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;// else&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;// {&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;// /* Point the VTOR to the position of vector table */&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;// S32_SCB-&amp;gt;VTOR = (uint32_t)__VECTOR_TABLE;&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;// }&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;S32_SCB-&amp;gt;VTOR = (uint32_t)0x4004;// i just use this line code, and comment original code.&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;through the above set, i can download code to board by CAN bootloader.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;my question is:&lt;/P&gt;&lt;P&gt;if i want to use &lt;SPAN style="background-color: #f6f6f6;"&gt;__VECTOR_RAM, how to set the parameter in&amp;nbsp;&lt;SPAN&gt;S32K144_64_flash.ld file?&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;is it ok to comment the original bold&amp;nbsp;&lt;SPAN style="background-color: #f6f6f6;"&gt;&lt;STRONG&gt;S32_SCB-&amp;gt;VTOR&lt;/STRONG&gt;&lt;/SPAN&gt; code&lt;SPAN style="background-color: #f6f6f6;"&gt;&lt;STRONG&gt;?&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 22px;"&gt;&lt;STRONG&gt;part II:&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;there have two ways to start CAN bootloader process.&lt;/P&gt;&lt;P&gt;1. power off and power on&amp;nbsp;&lt;/P&gt;&lt;P&gt;2. press reset button.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;do these two way lead to same process(both use __VECTOR_TABLE? )?&lt;/P&gt;&lt;P&gt;could you explain the difference between&amp;nbsp;&lt;SPAN&gt;__VECTOR_TABLE and&amp;nbsp;__VECTOR_RAM in S32_SCB-&amp;gt;VTOR?&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 27 Jul 2017 07:59:33 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/bootloader-process/m-p/685745#M1053</guid>
      <dc:creator>renshaoshuai</dc:creator>
      <dc:date>2017-07-27T07:59:33Z</dc:date>
    </item>
  </channel>
</rss>

