<?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>LPC MicrocontrollersのトピックFlash Signature Generation for LPC5410x</title>
    <link>https://community.nxp.com/t5/LPC-Microcontrollers/Flash-Signature-Generation-for-LPC5410x/m-p/1226553#M43849</link>
    <description>&lt;P&gt;Have any of you been able to successfully generate a signature for the flash on LPC5410x using the flash signature generator?&lt;/P&gt;&lt;P&gt;Using the following code snippet...&lt;/P&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="c"&gt;typedef struct {                                 
    __I  uint32_t RESERVED1[8];
    __IO uint32_t FMSSTART;                   
    __IO uint32_t FMSSTOP;                    
    __I  uint32_t RESERVED2[1];
    __I  uint32_t FMSW0;                       
    __I  uint32_t FMSW1;                       
    __I  uint32_t FMSW2;                       
    __I  uint32_t FMSW3;                       
    __I  uint32_t RESERVED3[1001];
    __I  uint32_t FMSTAT;                      
    __I  uint32_t RESERVED4[1];
    __IO uint32_t FMSTATCLR;                  
} LPC_FMC_Type;

#define LPC_FMC ((LPC_FMC_Type *) LPC_FMC_BASE)

...
    uint32_t signature[4];              // 128-bit signature

    LPC_FMC-&amp;gt;FMSTATCLR = (1 &amp;lt;&amp;lt; 2);      // SIG_DONE_CLR

    LPC_FMC-&amp;gt;FMSSTART = (0x00000000 &amp;gt;&amp;gt; 4) &amp;amp; 0x0001FFFF;
    LPC_FMC-&amp;gt;FMSSTOP  = (0x00067FFF &amp;gt;&amp;gt; 4) &amp;amp; 0x0001FFFF;

    LPC_FMC-&amp;gt;FMSSTOP |= (1 &amp;lt;&amp;lt; 17);      // SIG_START

    while ( ! (LPC_FMC-&amp;gt;FMSTATCLR &amp;amp; (1 &amp;lt;&amp;lt; 2) ) );

    LPC_FMC-&amp;gt;FMSTATCLR = (1 &amp;lt;&amp;lt; 2);

    signature[0] = LPC_FMC-&amp;gt;FMSW0;
    signature[1] = LPC_FMC-&amp;gt;FMSW1;
    signature[2] = LPC_FMC-&amp;gt;FMSW2;
    signature[3] = LPC_FMC-&amp;gt;FMSW3;
...&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV&gt;&amp;nbsp;I always end up with a value of 131077 for each of the signature values.&lt;/DIV&gt;</description>
    <pubDate>Thu, 04 Feb 2021 17:34:01 GMT</pubDate>
    <dc:creator>BTaylor</dc:creator>
    <dc:date>2021-02-04T17:34:01Z</dc:date>
    <item>
      <title>Flash Signature Generation for LPC5410x</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/Flash-Signature-Generation-for-LPC5410x/m-p/1226553#M43849</link>
      <description>&lt;P&gt;Have any of you been able to successfully generate a signature for the flash on LPC5410x using the flash signature generator?&lt;/P&gt;&lt;P&gt;Using the following code snippet...&lt;/P&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="c"&gt;typedef struct {                                 
    __I  uint32_t RESERVED1[8];
    __IO uint32_t FMSSTART;                   
    __IO uint32_t FMSSTOP;                    
    __I  uint32_t RESERVED2[1];
    __I  uint32_t FMSW0;                       
    __I  uint32_t FMSW1;                       
    __I  uint32_t FMSW2;                       
    __I  uint32_t FMSW3;                       
    __I  uint32_t RESERVED3[1001];
    __I  uint32_t FMSTAT;                      
    __I  uint32_t RESERVED4[1];
    __IO uint32_t FMSTATCLR;                  
} LPC_FMC_Type;

#define LPC_FMC ((LPC_FMC_Type *) LPC_FMC_BASE)

...
    uint32_t signature[4];              // 128-bit signature

    LPC_FMC-&amp;gt;FMSTATCLR = (1 &amp;lt;&amp;lt; 2);      // SIG_DONE_CLR

    LPC_FMC-&amp;gt;FMSSTART = (0x00000000 &amp;gt;&amp;gt; 4) &amp;amp; 0x0001FFFF;
    LPC_FMC-&amp;gt;FMSSTOP  = (0x00067FFF &amp;gt;&amp;gt; 4) &amp;amp; 0x0001FFFF;

    LPC_FMC-&amp;gt;FMSSTOP |= (1 &amp;lt;&amp;lt; 17);      // SIG_START

    while ( ! (LPC_FMC-&amp;gt;FMSTATCLR &amp;amp; (1 &amp;lt;&amp;lt; 2) ) );

    LPC_FMC-&amp;gt;FMSTATCLR = (1 &amp;lt;&amp;lt; 2);

    signature[0] = LPC_FMC-&amp;gt;FMSW0;
    signature[1] = LPC_FMC-&amp;gt;FMSW1;
    signature[2] = LPC_FMC-&amp;gt;FMSW2;
    signature[3] = LPC_FMC-&amp;gt;FMSW3;
...&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV&gt;&amp;nbsp;I always end up with a value of 131077 for each of the signature values.&lt;/DIV&gt;</description>
      <pubDate>Thu, 04 Feb 2021 17:34:01 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/Flash-Signature-Generation-for-LPC5410x/m-p/1226553#M43849</guid>
      <dc:creator>BTaylor</dc:creator>
      <dc:date>2021-02-04T17:34:01Z</dc:date>
    </item>
  </channel>
</rss>

