<?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: How to program the first 40KB by program in Kinetis Microcontrollers</title>
    <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/How-to-program-the-first-40KB-by-program/m-p/1582697#M64579</link>
    <description>&lt;P&gt;Thanks.&lt;/P&gt;&lt;P&gt;I want to test the backdoor key,and I've modified the flash configuiration in startup_MK64F12.s as below&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;__FlashConfig
    DCD 0xAAAAAAAA     /* 8 bytes backdoor comparison key           */
    DCD 0xAAAAAAAA     /*                                           */
    DCD 0xFFFFFFFF     /* 4 bytes program flash protection bytes    */
    DCD 0xFFFF7FBF     /* FDPROT:FEPROT:FOPT:FSEC(0xBF = secure)    */
__FlashConfig_End&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;but&amp;nbsp;&lt;SPAN&gt;FLASH_GetSecurityState()&amp;nbsp; always return unsecure,any step that I've missed?&lt;/SPAN&gt;&lt;/P&gt;</description>
    <pubDate>Sat, 14 Jan 2023 04:46:24 GMT</pubDate>
    <dc:creator>jake111</dc:creator>
    <dc:date>2023-01-14T04:46:24Z</dc:date>
    <item>
      <title>How to program the first 40KB by program</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/How-to-program-the-first-40KB-by-program/m-p/1581533#M64568</link>
      <description>&lt;P&gt;My program consists of bootloader(0~0xA000) and the program starts from 0xA000.&lt;/P&gt;&lt;P&gt;The bootloader is used to update the firmware,but sometimes I want to update the bootloader firmware by the program after 0xA000.&lt;/P&gt;&lt;P&gt;But an error occurs when I call FLASH_ERASE(&amp;amp;flashstate, 0, 0xA000, Key) and flash protection bytes(0x400-0x40F) are set.It seems the first serveral sectors are not allowed to erase.How can I program bootloader?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;FLASH_GetSecurityState() always return unsecure,it doesn't seem to be a secure issue?&lt;/P&gt;</description>
      <pubDate>Thu, 12 Jan 2023 10:33:42 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/How-to-program-the-first-40KB-by-program/m-p/1581533#M64568</guid>
      <dc:creator>jake111</dc:creator>
      <dc:date>2023-01-12T10:33:42Z</dc:date>
    </item>
    <item>
      <title>Re: How to program the first 40KB by program</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/How-to-program-the-first-40KB-by-program/m-p/1582549#M64578</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/206427"&gt;@jake111&lt;/a&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I recommend you to read Application Note AN2295: Developer's Serial Bootloader. This document has a lot of information about modifying the memory.&lt;/P&gt;
&lt;P&gt;Let me know if you have another question.&lt;/P&gt;
&lt;P&gt;Best Regards, Miguel.&lt;/P&gt;</description>
      <pubDate>Fri, 13 Jan 2023 16:36:13 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/How-to-program-the-first-40KB-by-program/m-p/1582549#M64578</guid>
      <dc:creator>Miguel04</dc:creator>
      <dc:date>2023-01-13T16:36:13Z</dc:date>
    </item>
    <item>
      <title>Re: How to program the first 40KB by program</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/How-to-program-the-first-40KB-by-program/m-p/1582697#M64579</link>
      <description>&lt;P&gt;Thanks.&lt;/P&gt;&lt;P&gt;I want to test the backdoor key,and I've modified the flash configuiration in startup_MK64F12.s as below&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;__FlashConfig
    DCD 0xAAAAAAAA     /* 8 bytes backdoor comparison key           */
    DCD 0xAAAAAAAA     /*                                           */
    DCD 0xFFFFFFFF     /* 4 bytes program flash protection bytes    */
    DCD 0xFFFF7FBF     /* FDPROT:FEPROT:FOPT:FSEC(0xBF = secure)    */
__FlashConfig_End&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;but&amp;nbsp;&lt;SPAN&gt;FLASH_GetSecurityState()&amp;nbsp; always return unsecure,any step that I've missed?&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Sat, 14 Jan 2023 04:46:24 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/How-to-program-the-first-40KB-by-program/m-p/1582697#M64579</guid>
      <dc:creator>jake111</dc:creator>
      <dc:date>2023-01-14T04:46:24Z</dc:date>
    </item>
    <item>
      <title>Re: How to program the first 40KB by program</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/How-to-program-the-first-40KB-by-program/m-p/1586203#M64598</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/206427"&gt;@jake111&lt;/a&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I've found this information that could help you:&lt;/P&gt;
&lt;P&gt;1. Chapter&amp;nbsp;29.4.13.3 on the K64 reference manual mentions how to unsecure the mcu using a backdoor key.&lt;/P&gt;
&lt;P&gt;2. On the K&lt;SPAN&gt;inetis SDK v.2.0 API Reference Manual, chapter 19.5.11 there is a function called FLASH_SecurityBypass, also on&amp;nbsp;MCU Bootloader v2.5.0 Reference Manual 9.4.7 there is more information of this function.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Let me know if you found this usefull, I'll be looking for more information.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Best Regards, Miguel.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 20 Jan 2023 18:06:33 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/How-to-program-the-first-40KB-by-program/m-p/1586203#M64598</guid>
      <dc:creator>Miguel04</dc:creator>
      <dc:date>2023-01-20T18:06:33Z</dc:date>
    </item>
  </channel>
</rss>

