<?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 Re: FRDM-K20D50M uTasker USB Bootloader application program in Kinetis Microcontrollers</title>
    <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/FRDM-K20D50M-uTasker-USB-Bootloader-application-program/m-p/384369#M20599</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Mark,&lt;/P&gt;&lt;P&gt;it's possible to do it with Processor Expert , or I have to do it&amp;nbsp; manualy. I'm not expert with frescale microcontrollers.&lt;/P&gt;&lt;P&gt;&lt;SPAN class="short_text" lang="en"&gt;&lt;SPAN class="hps"&gt;I did some&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;tests&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;but&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;the bin file&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;has&lt;/SPAN&gt; &lt;SPAN class="short_text" lang="en"&gt; &lt;SPAN class="hps"&gt;size &lt;/SPAN&gt;&lt;/SPAN&gt;524K...&lt;SPAN class="hps"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN lang="en"&gt;&lt;SPAN class="hps"&gt;If you can&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;give an example&lt;/SPAN&gt;, maybe starting &lt;SPAN class="hps"&gt;from the project&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;that&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;I have attached&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;would be great, &lt;SPAN class="short_text" lang="en"&gt;&lt;SPAN class="hps"&gt;so as to&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;understand.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN lang="en"&gt;&lt;SPAN class="hps"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN lang="en"&gt;&lt;SPAN class="hps"&gt;Thanks&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN lang="en"&gt;&lt;SPAN class="hps"&gt;Jerry&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang="en"&gt;&lt;SPAN class="hps"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 10 Nov 2014 16:54:24 GMT</pubDate>
    <dc:creator>jerryfavero</dc:creator>
    <dc:date>2014-11-10T16:54:24Z</dc:date>
    <item>
      <title>FRDM-K20D50M uTasker USB Bootloader application program</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/FRDM-K20D50M-uTasker-USB-Bootloader-application-program/m-p/384367#M20597</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Good afternoon,&lt;/P&gt;&lt;P&gt;I'm testing the FRDM-K20D50M board. I flash it with USB Bootloader uTaskerSerialLoader_FRDM-K20D50M.S19.&lt;/P&gt;&lt;P&gt;I made a little code for blinking a led with Processor Expert:&lt;/P&gt;&lt;P&gt;//................................................&lt;/P&gt;&lt;P&gt;while(1)&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LEDRED_ClrVal(NULL);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; WAIT1_Waitms(250);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LEDRED_SetVal(NULL);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; WAIT1_Waitms(250);&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;//................................................&lt;/P&gt;&lt;P&gt;The README file says :&lt;/P&gt;&lt;P&gt;"If you load your own application make sure that it has its reset code is linked to be at 0x8080. Interrupt vectors should be run from RAM or set to a&lt;/P&gt;&lt;P&gt;location in the code (not left at 0x00000000)" .&lt;/P&gt;&lt;P&gt;I have set the CPU component as in figure :&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="16353_16353.jpg"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/120020i373082A0A6ADB2EE/image-size/large?v=v2&amp;amp;px=999" role="button" title="16353_16353.jpg" alt="16353_16353.jpg" /&gt;&lt;/span&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="Immagine1.jpg"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/47190iC71B538EABEE7522/image-size/large?v=v2&amp;amp;px=999" role="button" title="Immagine1.jpg" alt="Immagine1.jpg" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;After the drag and drop of a program file the board does nothing, the led don't blink.&lt;/P&gt;&lt;P&gt;The Output File Format is ".SREC" .&lt;/P&gt;&lt;P&gt;A normal program with "Default memory for Interrupts"=INTERNAL FLASH, and address=0x00000000 works fine with blinking led.&lt;/P&gt;&lt;P&gt;T&lt;SPAN class="short_text" lang="en"&gt;&lt;SPAN class="hps"&gt;here is something wrong. I attached the project.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="short_text" lang="en"&gt;&lt;SPAN class="hps"&gt;&lt;SPAN class="short_text" lang="en"&gt;&lt;SPAN class="hps"&gt;Thanks&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;to whoever&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;can help me.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="short_text" lang="en"&gt;&lt;SPAN class="hps"&gt;&lt;SPAN class="short_text" lang="en"&gt;&lt;SPAN class="hps"&gt;Jerry&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Original Attachment has been moved to: &lt;A _jive_internal="true" href="https://community.nxp.com/docs/DOC-337664"&gt;PROVA-FRDM-K20.rar&lt;/A&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 06 Nov 2014 15:24:11 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/FRDM-K20D50M-uTasker-USB-Bootloader-application-program/m-p/384367#M20597</guid>
      <dc:creator>jerryfavero</dc:creator>
      <dc:date>2014-11-06T15:24:11Z</dc:date>
    </item>
    <item>
      <title>Re: FRDM-K20D50M uTasker USB Bootloader application program</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/FRDM-K20D50M-uTasker-USB-Bootloader-application-program/m-p/384368#M20598</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;If you are using the USB-MSD (drag-and-drop) you need to drag and drop a binary file and not an SREC.&lt;/P&gt;&lt;P&gt;In addition, at the address 0x00008080 you need to have the reset vector that would normally be at 0x00000000. Looking in your SREC file this is missing.&lt;/P&gt;&lt;P&gt;Compare your SREC (or binary) with the reference - in the reference it starts with&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;S30D00008080FC7F002049B100005D&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;which means that there is the value &lt;STRONG&gt;0x20007ffc&lt;/STRONG&gt; at &lt;STRONG&gt;0x00008080&lt;/STRONG&gt; and &lt;STRONG&gt;0x0000b149&lt;/STRONG&gt; at &lt;STRONG&gt;0x00008084&lt;/STRONG&gt;.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;0x20007ffc&lt;/STRONG&gt; is the initial stack point (it will be loaded to the SP when jumping to the application) and &lt;STRONG&gt;0x0000b149&lt;/STRONG&gt; is the initial program counter - it is where the application will be started. [this is the standard reset vector but shifted to a new location]&lt;/P&gt;&lt;P&gt;In your file I see &lt;STRONG&gt;S3150000808000BF00BF00BF7047002000BF00BF00BF99&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;which would be a SP of &lt;STRONG&gt;0xbf00bf00&lt;/STRONG&gt; and PC of &lt;STRONG&gt;0x4770bf00&lt;/STRONG&gt; which looks to be other program code or const data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;To summarise:&lt;/P&gt;&lt;P&gt;- SREC can be loaded by the serial interface but USB-MSD uses a &lt;EM&gt;&lt;STRONG&gt;binary&lt;/STRONG&gt;&lt;/EM&gt; instead.&lt;/P&gt;&lt;P&gt;- Your program doesn't have its &lt;EM&gt;reset vectors at the start location&lt;/EM&gt; and so this needs first to be fixed. It is easy to monitor and see when it is correct (PC will match the start address of the program in the map file).&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;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 06 Nov 2014 16:36:43 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/FRDM-K20D50M-uTasker-USB-Bootloader-application-program/m-p/384368#M20598</guid>
      <dc:creator>mjbcswitzerland</dc:creator>
      <dc:date>2014-11-06T16:36:43Z</dc:date>
    </item>
    <item>
      <title>Re: FRDM-K20D50M uTasker USB Bootloader application program</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/FRDM-K20D50M-uTasker-USB-Bootloader-application-program/m-p/384369#M20599</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Mark,&lt;/P&gt;&lt;P&gt;it's possible to do it with Processor Expert , or I have to do it&amp;nbsp; manualy. I'm not expert with frescale microcontrollers.&lt;/P&gt;&lt;P&gt;&lt;SPAN class="short_text" lang="en"&gt;&lt;SPAN class="hps"&gt;I did some&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;tests&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;but&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;the bin file&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;has&lt;/SPAN&gt; &lt;SPAN class="short_text" lang="en"&gt; &lt;SPAN class="hps"&gt;size &lt;/SPAN&gt;&lt;/SPAN&gt;524K...&lt;SPAN class="hps"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN lang="en"&gt;&lt;SPAN class="hps"&gt;If you can&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;give an example&lt;/SPAN&gt;, maybe starting &lt;SPAN class="hps"&gt;from the project&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;that&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;I have attached&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;would be great, &lt;SPAN class="short_text" lang="en"&gt;&lt;SPAN class="hps"&gt;so as to&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;understand.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN lang="en"&gt;&lt;SPAN class="hps"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN lang="en"&gt;&lt;SPAN class="hps"&gt;Thanks&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN lang="en"&gt;&lt;SPAN class="hps"&gt;Jerry&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang="en"&gt;&lt;SPAN class="hps"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 10 Nov 2014 16:54:24 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/FRDM-K20D50M-uTasker-USB-Bootloader-application-program/m-p/384369#M20599</guid>
      <dc:creator>jerryfavero</dc:creator>
      <dc:date>2014-11-10T16:54:24Z</dc:date>
    </item>
    <item>
      <title>Re: FRDM-K20D50M uTasker USB Bootloader application program</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/FRDM-K20D50M-uTasker-USB-Bootloader-application-program/m-p/384370#M20600</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Jerry&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Unfortunately I don't use PE so can't give any details apart from the fact that I understand that you can always add your own configurations (or disabled some automatic ones).&lt;/P&gt;&lt;P&gt;There are a number of MQX users working with the uTasker serial loaders and these didn't have any difficulties with a suitable configuration, although I don't know whether these projects were using PE or not.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It may be best to ask in the PE forum: &lt;A href="https://community.nxp.com/space/2022"&gt;Processor Expert Software&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You could also use the uTasker project directy since it doesn't need any PE generation steps and has targets suitable for the serial loader (and FRDM-K20D50). You can then simulate the K20 and the FRDM board to make fast application development progress and compare things with the PE generated code (to see what needs to be adjusted) in case you still want to go back to PE later.&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;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 10 Nov 2014 18:00:18 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/FRDM-K20D50M-uTasker-USB-Bootloader-application-program/m-p/384370#M20600</guid>
      <dc:creator>mjbcswitzerland</dc:creator>
      <dc:date>2014-11-10T18:00:18Z</dc:date>
    </item>
    <item>
      <title>Re: Re: FRDM-K20D50M uTasker USB Bootloader application program</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/FRDM-K20D50M-uTasker-USB-Bootloader-application-program/m-p/384371#M20601</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Mark,&lt;/P&gt;&lt;P&gt;it's possible to disable "Generate Linker file" in PE, thus to edit it manually.&lt;/P&gt;&lt;P&gt;Below some lines of a "normal application"linker file (attached file).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/* Generate a link error if heap and stack don't fit into RAM */&lt;/P&gt;&lt;P&gt;__heap_size = 0x00;&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;&amp;nbsp; /* required amount of heap&amp;nbsp; */&lt;/P&gt;&lt;P&gt;__stack_size = 0x0400;&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; /* required amount of stack */&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MEMORY {&lt;/P&gt;&lt;P&gt;&amp;nbsp; m_interrupts&amp;nbsp;&amp;nbsp; (RX): ORIGIN = 0x00000000,&amp;nbsp; LENGTH = 0x000000F8&lt;/P&gt;&lt;P&gt;&amp;nbsp; m_text&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (RX) : ORIGIN = 0x00000410,&amp;nbsp; LENGTH = 0x0001FBF0&lt;/P&gt;&lt;P&gt;&amp;nbsp; m_data&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (RW) : ORIGIN= 0x1FFFE000, LENGTH = 0x00002000&lt;/P&gt;&lt;P&gt;&amp;nbsp; m_cfmprotrom(RX) : ORIGIN= 0x00000400,&amp;nbsp; LENGTH = 0x00000010&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;//************************************************************&lt;/P&gt;&lt;P&gt;May you help me to edit this file, to adapt for a utasker boot (the board is FRDM-K20D50M).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 14 Nov 2014 13:10:21 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/FRDM-K20D50M-uTasker-USB-Bootloader-application-program/m-p/384371#M20601</guid>
      <dc:creator>jerryfavero</dc:creator>
      <dc:date>2014-11-14T13:10:21Z</dc:date>
    </item>
    <item>
      <title>Re: FRDM-K20D50M uTasker USB Bootloader application program</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/FRDM-K20D50M-uTasker-USB-Bootloader-application-program/m-p/384372#M20602</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Jerry&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;MEMORY {&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp; m_interrupts&amp;nbsp;&amp;nbsp; (RX): ORIGIN = 0x00008080,&amp;nbsp; LENGTH = 0x000000F8&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp; m_text&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (RX) : ORIGIN = 0x00008410,&amp;nbsp; LENGTH = 0x00017BF0&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp; m_data&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (RW) : ORIGIN= 0x1FFFE000, LENGTH = 0x00002000&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp; m_cfmprotrom(RX) : ORIGIN= 0x00008400,&amp;nbsp; LENGTH = 0x00000010&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;}&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;These should be about right. However m_cfmprotrom() is not used (the boot loader defines the flash configuration and the application can't).&lt;/P&gt;&lt;P&gt;m_interrupts() only needs to be 0x08 in length if the reset vector is there - with 0xf8 all interrupt vectors are probably being located. If this is done the application needs to set the Cortex VECTOR_TABLE_OFFSET_REG to point to 0x8080 rather than 0x00000000.&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;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 14 Nov 2014 13:44:21 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/FRDM-K20D50M-uTasker-USB-Bootloader-application-program/m-p/384372#M20602</guid>
      <dc:creator>mjbcswitzerland</dc:creator>
      <dc:date>2014-11-14T13:44:21Z</dc:date>
    </item>
    <item>
      <title>Re: FRDM-K20D50M uTasker USB Bootloader application program</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/FRDM-K20D50M-uTasker-USB-Bootloader-application-program/m-p/384373#M20603</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Mark,&lt;/P&gt;&lt;P&gt;&lt;SPAN class="short_text" lang="en"&gt;&lt;SPAN class="hps"&gt;now&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;it works fine, also with timers interrupts.&lt;BR /&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="short_text" lang="en"&gt;&lt;SPAN class="hps"&gt;1) I have disabled "Generate Linker file" in Build Option in PE, and edit it manually as your indication:&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;MEMORY {&lt;/P&gt;&lt;P&gt;&amp;nbsp; m_interrupts&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (RX):&amp;nbsp; ORIGIN = 0x00008080, LENGTH&amp;nbsp;&amp;nbsp; = 0x000000F8&lt;/P&gt;&lt;P&gt;&amp;nbsp; m_cfmprotrom&amp;nbsp; (RX) :&amp;nbsp; ORIGIN = 0x00008400, LENGTH&amp;nbsp;&amp;nbsp; = 0x00000010&lt;/P&gt;&lt;P&gt;&amp;nbsp; m_text&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; (RX) :&amp;nbsp; ORIGIN = 0x00008410, LENGTH&amp;nbsp;&amp;nbsp; = 0x00017BF0&lt;/P&gt;&lt;P&gt;&amp;nbsp; m_data&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (RW):&amp;nbsp; ORIGIN = 0x1FFFE000, LENGTH&amp;nbsp; = 0x00002000&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&lt;SPAN class="short_text" lang="en"&gt;&lt;SPAN class="hps"&gt;&lt;SPAN class="short_text" lang="en"&gt;&lt;SPAN class="hps"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="short_text" lang="en"&gt;&lt;SPAN class="hps"&gt;&lt;SPAN class="short_text" lang="en"&gt;&lt;SPAN class="hps"&gt;2) In "User code after PE Initializzation" in &lt;SPAN class="short_text" lang="en"&gt;&lt;SPAN class="hps"&gt;Build Option I have added , that is visible after building in CPU.c file:&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;//:::::::::::::::::::::::::::::::::::::::::::::::::::::::&lt;/P&gt;&lt;P&gt;&amp;nbsp; // USER CODE AFTER PE INITIALIZATION&lt;/P&gt;&lt;P&gt;&amp;nbsp; uint32_t *pdst ;&lt;/P&gt;&lt;P&gt;&amp;nbsp; uint32_t *psrc;&lt;/P&gt;&lt;P&gt;&amp;nbsp; uint16_t&amp;nbsp; i ;&lt;/P&gt;&lt;P&gt;&amp;nbsp; // Copy Application Stored Interrupt Vector table to RAM&lt;/P&gt;&lt;P&gt;&amp;nbsp; pdst=(uint32_t*) (0x1FFFE000 );&lt;/P&gt;&lt;P&gt;&amp;nbsp; psrc=(uint32_t*)( 0x8080 );&lt;/P&gt;&lt;P&gt;&amp;nbsp; for (i=0;i&amp;lt;0xF8;i++,pdst++,psrc++)&lt;/P&gt;&lt;P&gt;&amp;nbsp; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (*pdst) = (*psrc);&lt;/P&gt;&lt;P&gt;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp; // Then redirect the vector table to RAM by changing the SCB_VTOR like this:&lt;/P&gt;&lt;P&gt;&amp;nbsp; // Redirect the vector table to the new copy in RAM&lt;/P&gt;&lt;P&gt;&amp;nbsp; SCB_VTOR = (uint32_t)(0x1FFFE000);&lt;/P&gt;&lt;P&gt;&lt;SPAN class="short_text" lang="en"&gt;&lt;SPAN class="hps"&gt;&lt;SPAN class="short_text" lang="en"&gt;&lt;SPAN class="hps"&gt;&lt;SPAN class="short_text" lang="en"&gt;&lt;SPAN class="hps"&gt;//:::::::::::::::::::::::::::::::::::::::::::::::::::::::&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="short_text" lang="en"&gt;&lt;SPAN class="hps"&gt;&lt;SPAN class="short_text" lang="en"&gt;&lt;SPAN class="hps"&gt;&lt;SPAN class="short_text" lang="en"&gt;&lt;SPAN class="hps"&gt;Using only a MSD boot ,&lt;SPAN class="short_text" lang="en"&gt;&lt;SPAN class="hps"&gt;&lt;SPAN class="short_text" lang="en"&gt;&lt;SPAN class="hps"&gt;&lt;SPAN class="short_text" lang="en"&gt;&lt;SPAN class="hps"&gt;esist an easily mode to&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt; enlarge the application program (over 70K as writen in reademe file)&amp;nbsp; ?&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="short_text" lang="en"&gt;&lt;SPAN class="hps"&gt;&lt;SPAN class="short_text" lang="en"&gt;&lt;SPAN class="hps"&gt;&lt;SPAN class="short_text" lang="en"&gt;&lt;SPAN class="hps"&gt;Thanks&lt;BR /&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="short_text" lang="en"&gt;&lt;SPAN class="hps"&gt;&lt;SPAN class="short_text" lang="en"&gt;&lt;SPAN class="hps"&gt;&lt;SPAN class="short_text" lang="en"&gt;&lt;SPAN class="hps"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="short_text" lang="en"&gt;&lt;SPAN class="hps"&gt;&lt;SPAN class="short_text" lang="en"&gt;&lt;SPAN class="hps"&gt;&lt;/SPAN&gt;&lt;SPAN class="hps"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 21 Nov 2014 07:11:35 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/FRDM-K20D50M-uTasker-USB-Bootloader-application-program/m-p/384373#M20603</guid>
      <dc:creator>jerryfavero</dc:creator>
      <dc:date>2014-11-21T07:11:35Z</dc:date>
    </item>
    <item>
      <title>Re: FRDM-K20D50M uTasker USB Bootloader application program</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/FRDM-K20D50M-uTasker-USB-Bootloader-application-program/m-p/384374#M20604</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Jerry&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;There are 2 defines in Loader.h:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;#define UTASKER_APP_START &lt;/TD&gt;&lt;TD&gt;(32 * 1024)&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;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;// application starts at this address&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;#define UTASKER_APP_END&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;&lt;P&gt;(unsigned char *)(UTASKER_APP_START + (70 * 1024)) // end of application space - after maximum application size&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;By adjusting these you can control the start location and the size of application that is accepted.&lt;/P&gt;&lt;P&gt;Depending on how large your boot loader configuration is, the start address just needs to be at the start of the flash sector following the last one that it uses.&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;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 21 Nov 2014 18:16:53 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/FRDM-K20D50M-uTasker-USB-Bootloader-application-program/m-p/384374#M20604</guid>
      <dc:creator>mjbcswitzerland</dc:creator>
      <dc:date>2014-11-21T18:16:53Z</dc:date>
    </item>
  </channel>
</rss>

