<?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>MPC5xxxのトピックRe: Help booting  MPC5606B microcontroller via CAN</title>
    <link>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459044#M1561</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks for your answer, it has been very helpfull.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;However I'm not still able to edit the content of a variable that is stored in the flash memory, as I mentioned in my last answer. Do you know why I the memory is bloked?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 30 Nov 2015 13:37:23 GMT</pubDate>
    <dc:creator>anegoiko</dc:creator>
    <dc:date>2015-11-30T13:37:23Z</dc:date>
    <item>
      <title>Help booting  MPC5606B microcontroller via CAN</title>
      <link>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459035#M1552</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I'm new with the MPC5606B microcontroller, and I have read in its user guide that there is a possibility to boot the microcontroller via FlexCAN or LINFlex. I have been searching for more information, as I'm a bit confused after reading the user guide. Does somebody know where I should look to get more information?&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Any help would be appreciated.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 05 Nov 2015 15:47:58 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459035#M1552</guid>
      <dc:creator>anegoiko</dc:creator>
      <dc:date>2015-11-05T15:47:58Z</dc:date>
    </item>
    <item>
      <title>Re: Help booting  MPC5606B microcontroller via CAN</title>
      <link>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459036#M1553</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;take a look at:&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.freescale.com/files/32bit/doc/app_note/AN2831.pdf"&gt;http://www.freescale.com/files/32bit/doc/app_note/AN2831.pdf&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.freescale.com/files/microcontrollers/doc/app_note/AN4674.pdf"&gt;http://www.freescale.com/files/microcontrollers/doc/app_note/AN4674.pdf&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Then read this thread where I described how to create RAM image for serial boot:&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.nxp.com/message/383977"&gt;Boot Assist Module (BAM) with FlexCAN MPC5604P&lt;/A&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you are interested in flash resident bootloader:&lt;/P&gt;&lt;P&gt;&lt;A _jive_internal="true" href="https://community.nxp.com/servlet/JiveServlet/download/427962-279359/bootloader.zip"&gt;https://community.freescale.com/servlet/JiveServlet/download/427962-279359/bootloader.zip&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Lukas&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 12 Nov 2015 08:28:19 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459036#M1553</guid>
      <dc:creator>lukaszadrapa</dc:creator>
      <dc:date>2015-11-12T08:28:19Z</dc:date>
    </item>
    <item>
      <title>Re: Help booting  MPC5606B microcontroller via CAN</title>
      <link>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459037#M1554</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Lukas,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you for your answer, it has been very helpfull to clear my ideas. I've realized that in my case it would be a better solution having a resident bootloader in flash, in order to avoid generating the necessary signals for ABS and FAB pins.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have downloaded the zip file that you have attached and while I was reading the AN_qorriva bootloader.pdf file to get more information ( I am really new with creating a specific bootloader for a microcontroller) I just realize that the pdf it is not finished. Do you have the final document?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Ane&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 12 Nov 2015 10:33:23 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459037#M1554</guid>
      <dc:creator>anegoiko</dc:creator>
      <dc:date>2015-11-12T10:33:23Z</dc:date>
    </item>
    <item>
      <title>Re: Help booting  MPC5606B microcontroller via CAN</title>
      <link>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459038#M1555</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;No, I didn't find time to finish it in the past... But only the last chapter is missing. It is the same like chapter "5.3 Bootloader Guide" in:&lt;/P&gt;&lt;P&gt;&lt;A href="http://cache.freescale.com/files/microcontrollers/doc/app_note/AN4258.pdf"&gt;http://www.freescale.com/files/microcontrollers/doc/app_note/AN4258.pdf&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Lukas &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 12 Nov 2015 12:22:44 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459038#M1555</guid>
      <dc:creator>lukaszadrapa</dc:creator>
      <dc:date>2015-11-12T12:22:44Z</dc:date>
    </item>
    <item>
      <title>Re: Help booting  MPC5606B microcontroller via CAN</title>
      <link>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459039#M1556</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Lukas,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I'm trying to do a simple example of a user application that waits until an integer reaches a value, and then the value of the key that is used by bootloader should be modified, but I'm not able to change the value of that key variable.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I've follow your pdf and I've asigned a specific memory area to that key variable in the user application. Moreover, when I debug the user aplication I can see that in the specified memory area the value of the key is stored correctly. However, when the integer value reaches the maximum value the new value is not stored. Do you know why can be that?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In order to asign the new key value I'm using the folllowing code that it can be found in your zip file:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*(unsigned long long *)BOOT_KEY_ADDRESS = DESTROY_BOOT_KEY;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks in advance,&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 13 Nov 2015 11:52:57 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459039#M1556</guid>
      <dc:creator>anegoiko</dc:creator>
      <dc:date>2015-11-13T11:52:57Z</dc:date>
    </item>
    <item>
      <title>Re: Help booting  MPC5606B microcontroller via CAN</title>
      <link>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459040#M1557</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi again,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I'm sorry for making so many questions (that maybe I should know) and wasting your time, but I'm a bit lost about this topic and I really need help to focus in the correct way, as I am reading a lot of different documents, and I do not get a clear idea.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I'm not sure how do I have to download the bootloader and the user application together. Do I have to attach them with Code Warrior an build a unique .mot file? Or do I have to download first the bootloader and then the user application to the microcontroller? If the answer is that I have to download first the bootloader and then the user application, how do I ensure that I don't erase the bootloader memory area while I am downloading the user application?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks again,&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 13 Nov 2015 14:28:06 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459040#M1557</guid>
      <dc:creator>anegoiko</dc:creator>
      <dc:date>2015-11-13T14:28:06Z</dc:date>
    </item>
    <item>
      <title>Re: Help booting  MPC5606B microcontroller via CAN</title>
      <link>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459041#M1558</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;It is not necessary to answer this question, as I have already solved it.The problem was that before editing the key variable, I was not unlocking the flash memory. :smileyconfused:&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 14 Nov 2015 16:21:15 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459041#M1558</guid>
      <dc:creator>anegoiko</dc:creator>
      <dc:date>2015-11-14T16:21:15Z</dc:date>
    </item>
    <item>
      <title>Re: Help booting  MPC5606B microcontroller via CAN</title>
      <link>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459042#M1559</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;I'm sorry asking so many times but I can not get any of two questions that I made. I thought that at least I was able to modify the key variable but I realized that I am not able.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I'm using the MPC5606B in a development board, and this is my code to first erase and then program the value of key. (This value is stored in the address 0x000FFFF8- 0x000FFFF). I realized that the value of HBE bit is 0, and the HLK bits are always 0xFF. (So I think that here is the mistake, as this memory area will be locked in the erase and program instants).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Do you know why I can not get HBL bit = 1, and HLK = 0x00 ? &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;asm("wrteei 0");&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;/////////// ERASE&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;/* unlock high address space in flash array 2 */&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;CFLASH.HBL.R = 0xB2B22222;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;CFLASH.HBL.B.HLK = 0x00; /* unlock flash array 2 */&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;status= CFLASH.HBL.B.HBE;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;status= CFLASH.HBL.B.HLK;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;/* execute programming sequence */&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;CFLASH.MCR.B.ERS = 1;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;CFLASH.HBS.B.HSL = 0x08;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;*(_SOFT_U32BITS *)BOOT_KEY_ADDRESS_UP = 0xFFFFFFFF;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;*(_SOFT_U32BITS *)BOOT_KEY_ADDRESS_DOWN = 0xFFFFFFFF;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;CFLASH.MCR.B.EHV = 1;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;while(CFLASH.MCR.B.DONE == 0){};&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;CFLASH.MCR.B.EHV = 0;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;CFLASH.MCR.B.ERS = 0;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;////////// PROGRAM&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;/* unlock high address space in flash array 2 */&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;CFLASH.HBL.R = 0xB2B22222;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;CFLASH.HBL.R = 0x00000000; /* unlock flash array 2 */&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;status= CFLASH.HBL.B.HBE;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;status= CFLASH.HBL.B.HLK;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;/* execute programming sequence */&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;CFLASH.MCR.B.PGM = 1;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;*(_SOFT_U32BITS *)BOOT_KEY_ADDRESS_UP = DESTROY_BOOT_KEY_UP;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;*(_SOFT_U32BITS *)BOOT_KEY_ADDRESS_DOWN = DESTROY_BOOT_KEY_DOWN;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;CFLASH.MCR.B.EHV = 1;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;while(CFLASH.MCR.B.DONE == 0){};&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;status = CFLASH.MCR.B.PEG;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;CFLASH.MCR.B.EHV = 0;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;CFLASH.MCR.B.PGM = 0;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;/* reset the device */&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;//ME.MCTL.R = 0x00005AF0;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;//ME.MCTL.R = 0x0000A50F;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;asm("wrteei 1");&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you for your help and attention,&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 17 Nov 2015 06:57:44 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459042#M1559</guid>
      <dc:creator>anegoiko</dc:creator>
      <dc:date>2015-11-17T06:57:44Z</dc:date>
    </item>
    <item>
      <title>Re: Help booting  MPC5606B microcontroller via CAN</title>
      <link>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459043#M1560</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;the bootloader and user application can be developed separately. If you follow the steps from application note, both projects (bootloader and user application) will work in "standalone mode" without any modification. For production purposes, it is good idea to merge both .mot files together, so you can program the flash in one step.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards.&lt;/P&gt;&lt;P&gt;Lukas&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 30 Nov 2015 11:46:51 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459043#M1560</guid>
      <dc:creator>lukaszadrapa</dc:creator>
      <dc:date>2015-11-30T11:46:51Z</dc:date>
    </item>
    <item>
      <title>Re: Help booting  MPC5606B microcontroller via CAN</title>
      <link>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459044#M1561</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks for your answer, it has been very helpfull.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;However I'm not still able to edit the content of a variable that is stored in the flash memory, as I mentioned in my last answer. Do you know why I the memory is bloked?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 30 Nov 2015 13:37:23 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459044#M1561</guid>
      <dc:creator>anegoiko</dc:creator>
      <dc:date>2015-11-30T13:37:23Z</dc:date>
    </item>
    <item>
      <title>Re: Help booting  MPC5606B microcontroller via CAN</title>
      <link>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459045#M1562</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Could you share piece of code that doesn't work? Or tell me exactly which block you want to erase and what data at which address you want to program and I can write simple SW example for you...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Lukas&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 30 Nov 2015 18:05:17 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459045#M1562</guid>
      <dc:creator>lukaszadrapa</dc:creator>
      <dc:date>2015-11-30T18:05:17Z</dc:date>
    </item>
    <item>
      <title>Re: Help booting  MPC5606B microcontroller via CAN</title>
      <link>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459046#M1563</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;As I wrote some post before...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I'm using the MPC5606B in a development board, and this is my code to first erase and then program the value of key. (This value is stored in the address 0x000FFFF8- 0x000FFFF). I realized that the value of HBE bit is 0, and the HLK bits are always 0xFF. (So I think that here is the mistake, as this memory area will be locked in the erase and program instants).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Do you know why I can not get HBL bit = 1, and HLK = 0x00 ? &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;asm("wrteei 0");&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;/////////// ERASE&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;/* unlock high address space in flash array 2 */&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;CFLASH.HBL.R = 0xB2B22222;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;CFLASH.HBL.B.HLK = 0x00; /* unlock flash array 2 */&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;status= CFLASH.HBL.B.HBE;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;status= CFLASH.HBL.B.HLK;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;/* execute programming sequence */&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;CFLASH.MCR.B.ERS = 1;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;CFLASH.HBS.B.HSL = 0x08;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;*(_SOFT_U32BITS *)BOOT_KEY_ADDRESS_UP = 0xFFFFFFFF;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;*(_SOFT_U32BITS *)BOOT_KEY_ADDRESS_DOWN = 0xFFFFFFFF;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;CFLASH.MCR.B.EHV = 1;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;while(CFLASH.MCR.B.DONE == 0){};&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;CFLASH.MCR.B.EHV = 0;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;CFLASH.MCR.B.ERS = 0;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;////////// PROGRAM&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;/* unlock high address space in flash array 2 */&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;CFLASH.HBL.R = 0xB2B22222;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;CFLASH.HBL.R = 0x00000000; /* unlock flash array 2 */&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;status= CFLASH.HBL.B.HBE;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;status= CFLASH.HBL.B.HLK;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;/* execute programming sequence */&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;CFLASH.MCR.B.PGM = 1;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;*(_SOFT_U32BITS *)BOOT_KEY_ADDRESS_UP = DESTROY_BOOT_KEY_UP;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;*(_SOFT_U32BITS *)BOOT_KEY_ADDRESS_DOWN = DESTROY_BOOT_KEY_DOWN;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;CFLASH.MCR.B.EHV = 1;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;while(CFLASH.MCR.B.DONE == 0){};&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;status = CFLASH.MCR.B.PEG;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;CFLASH.MCR.B.EHV = 0;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;CFLASH.MCR.B.PGM = 0;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;/* reset the device */&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;//ME.MCTL.R = 0x00005AF0;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;//ME.MCTL.R = 0x0000A50F;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;asm("wrteei 1");&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you for your help and attention,&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 01 Dec 2015 08:10:54 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459046#M1563</guid>
      <dc:creator>anegoiko</dc:creator>
      <dc:date>2015-12-01T08:10:54Z</dc:date>
    </item>
    <item>
      <title>Re: Help booting  MPC5606B microcontroller via CAN</title>
      <link>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459047#M1564</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;here it is:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/* unlock HLK3 block */&lt;/P&gt;&lt;P&gt;CFLASH.HBL.R = 0xB2B22222; /* write password */&lt;/P&gt;&lt;P&gt;CFLASH.HBL.R = 0x000000F7; /* unlock HLK3 only */&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/* erase block HLK3 (0x000E_0000 - 0x000F_FFFF) */&lt;/P&gt;&lt;P&gt;CFLASH.MCR.B.ERS = 1;&lt;/P&gt;&lt;P&gt;CFLASH.HBS.R = 0x00000008; /* select HLK3 */&lt;/P&gt;&lt;P&gt;*(unsigned int *)0x000E0000 = 0xFFFFFFFF; /* interlock write - write to any address in selected &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;memory */&lt;/P&gt;&lt;P&gt;CFLASH.MCR.B.EHV = 1;&lt;/P&gt;&lt;P&gt;while(CFLASH.MCR.B.DONE == 0);&lt;/P&gt;&lt;P&gt;CFLASH.MCR.B.EHV = 0;&lt;/P&gt;&lt;P&gt;CFLASH.MCR.B.ERS = 0;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/* program double word to HLK3 */&lt;/P&gt;&lt;P&gt;CFLASH.MCR.B.PGM = 1; &lt;/P&gt;&lt;P&gt;*(unsigned int *)0x000FFFF8 = 0xAABBCCDD; /* interlock write */&lt;/P&gt;&lt;P&gt;*(unsigned int *)0x000FFFFC = 0x11223344; /* program data write */&lt;/P&gt;&lt;P&gt;CFLASH.MCR.B.EHV = 1;&lt;/P&gt;&lt;P&gt;while(CFLASH.MCR.B.DONE == 0);&lt;/P&gt;&lt;P&gt;CFLASH.MCR.B.EHV = 0;&lt;/P&gt;&lt;P&gt;CFLASH.MCR.B.PGM = 0;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I didn't test it because I'm traveling now but this should work. Please give this a try.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Lukas&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 01 Dec 2015 10:35:47 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459047#M1564</guid>
      <dc:creator>lukaszadrapa</dc:creator>
      <dc:date>2015-12-01T10:35:47Z</dc:date>
    </item>
    <item>
      <title>Re: Help booting  MPC5606B microcontroller via CAN</title>
      <link>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459048#M1565</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks for your help. The answer is right.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;However, now I am trying to modify the values of another memory area, and I am getting the same problem, the LME bit is always 0. In addition, when the code gets to&amp;nbsp; "CFLASH.MCR.B.ERS = 1;" line, it jumps to an address that there is nothing and it gets stuck there. This is the new code:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CFLASH.LML.R = 0xA1A11111; /* write password */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CFLASH.LML.R = 0x0011003F; /* unlock MLK1 only */&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; status= CFLASH.LML.B.LME;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; status= CFLASH.LML.B.MLK;&lt;/P&gt;&lt;P&gt;&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; /* erase block MLK1 (0x0006_0000 - 0x0007_FFFF) */&lt;/P&gt;&lt;P&gt;&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; CFLASH.MCR.B.ERS = 1;&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; CFLASH.LMS.R = 0x00020000; /* select MLK1 */&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; *(unsigned int *)0x0007FFF0 = 0xFFFFFFFF; /* interlock write - write to any address in selected memory */&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; CFLASH.MCR.B.EHV = 1;&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; while(CFLASH.MCR.B.DONE == 0);&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; CFLASH.MCR.B.EHV = 0;&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; CFLASH.MCR.B.ERS = 0;&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;&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; /* program double word to MLK1*/&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; CFLASH.MCR.B.PGM = 1;&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; *(unsigned int *)0x0007FFF8 = 0xFFFF2222; /* interlock write */&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; *(unsigned int *)0x0007FFFC = 0xFFFF0000; /* program data write */&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; CFLASH.MCR.B.EHV = 1;&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; while(CFLASH.MCR.B.DONE == 0);&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; CFLASH.MCR.B.EHV = 0;&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; CFLASH.MCR.B.PGM = 0;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Do you have any clue why I am getting so many problems?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks in advance,&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 10 Dec 2015 11:47:28 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459048#M1565</guid>
      <dc:creator>anegoiko</dc:creator>
      <dc:date>2015-12-10T11:47:28Z</dc:date>
    </item>
    <item>
      <title>Re: Help booting  MPC5606B microcontroller via CAN</title>
      <link>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459049#M1566</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;low and mid address space have two locking registers - primary (LML) and secondary (SLL). It is necessary to unlock the block in both of them. That means:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.5pt; font-family: 'Helvetica','sans-serif'; color: #666666;"&gt;CFLASH.LML.R = 0xA1A11111; /* write password */&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.5pt; font-family: 'Helvetica','sans-serif'; color: #666666;"&gt;CFLASH.LML.R = 0x0011003F; /* unlock MLK1 only */&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.5pt; font-family: 'Helvetica','sans-serif'; color: #666666;"&gt;and then also&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.5pt; font-family: 'Helvetica','sans-serif'; color: #666666;"&gt;CFLASH.SLL.R =...&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.5pt; font-family: 'Helvetica','sans-serif'; color: #666666;"&gt;CFLASH.SLL.R =...&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;High address space has only single locking register.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This should solve the problem.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Lukas&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 11 Dec 2015 12:39:49 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459049#M1566</guid>
      <dc:creator>lukaszadrapa</dc:creator>
      <dc:date>2015-12-11T12:39:49Z</dc:date>
    </item>
    <item>
      <title>Re: Help booting  MPC5606B microcontroller via CAN</title>
      <link>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459050#M1567</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Finally I got it! After that I moved to a MPC5602C (64 pin) microcontroller and after solving other problems, I got it again. Now I'm working in 100 pin MPC5602C. I am using the same code but when the programme tries to erase, it stops in&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; .align SIXTEEN_BYTES&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IVOR3trap:&amp;nbsp; b&amp;nbsp;&amp;nbsp;&amp;nbsp; IVOR3trap /* Instruction Storage interrupt handler */&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Does somebody know why I can not even erase the flash or why does the programme go to that interruption?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks in advance,&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 19 Feb 2016 09:41:54 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459050#M1567</guid>
      <dc:creator>anegoiko</dc:creator>
      <dc:date>2016-02-19T09:41:54Z</dc:date>
    </item>
    <item>
      <title>Re: Help booting  MPC5606B microcontroller via CAN</title>
      <link>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459051#M1568</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;it looks like you erased the flash where the code was running from. Could you check that?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Have you changed the default platform flash controller setting? Default settings is enabling the stall-while-write/erase and disabling the abort and notifications interrupt. So, the read operation will be stalled until on-going program/erase operation to complete. That means it is not necessary to run the command from SRAM or from another flash block. (notice that this is valid only on devices like MPC5602C which has C90LC flash).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Lukas&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 19 Feb 2016 12:51:40 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459051#M1568</guid>
      <dc:creator>lukaszadrapa</dc:creator>
      <dc:date>2016-02-19T12:51:40Z</dc:date>
    </item>
    <item>
      <title>Re: Help booting  MPC5606B microcontroller via CAN</title>
      <link>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459052#M1569</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks for your answer. The truth is that I did not change the default settings, at least not in purpose. How can I know if I have changed thouse settings? &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 19 Feb 2016 13:43:35 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459052#M1569</guid>
      <dc:creator>anegoiko</dc:creator>
      <dc:date>2016-02-19T13:43:35Z</dc:date>
    </item>
    <item>
      <title>Re: Help booting  MPC5606B microcontroller via CAN</title>
      <link>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459053#M1570</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Run your initialization and then check the registers PFCR0 and PFCR1, bit fields BKn_RWWC. All mentioned bits should be '1' (default state). &lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/55432iBCC1524007C15656/image-size/large?v=v2&amp;amp;px=999" title="pastedImage_0.png" alt="pastedImage_0.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Lukas&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 22 Feb 2016 09:25:24 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/Help-booting-MPC5606B-microcontroller-via-CAN/m-p/459053#M1570</guid>
      <dc:creator>lukaszadrapa</dc:creator>
      <dc:date>2016-02-22T09:25:24Z</dc:date>
    </item>
  </channel>
</rss>

