<?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 MC9RS08KA2 Flash Programming Procedure in 8-bit Microcontrollers</title>
    <link>https://community.nxp.com/t5/8-bit-Microcontrollers/MC9RS08KA2-Flash-Programming-Procedure/m-p/155032#M8768</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt; &lt;/DIV&gt;&lt;DIV&gt;I'm not completely certain of the flash programming and mass erase procedures for the MC9RS08KA2&amp;nbsp; MCU.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;As far as I searched, a program should first be stored in RAM, through the BKGD pin, and then be executed with the GO command. This program would then execute the 'Flash Programming Procedure' or the 'Flash Mass Erase Operation', that are described on section 4.6.2 and 4.6.3 of the 'MC9RS08KA2 Datasheet', respectively.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;If this is right, there is not enough RAM&amp;nbsp;for programming an entire 64 byte array at a time on this MCU, since the RAM would need to contain some instructions to follow the procedure and the 64 bytes of a row to be actually programmed into the Flash EPROM. And the RS08KA2 has only 63bytes of RAM.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;I'm wondering if I must use the RAM as a buffer,&amp;nbsp;continuously storing&amp;nbsp;new bytes that come trough the BKGD pin, while they are&amp;nbsp;programed without stopping (because there is a maximum byte program&amp;nbsp;time = 40us) by a code that&amp;nbsp;resides&amp;nbsp;in the RAM too. That would be a race against the time, since the BKGD interface is quite slow (for that). All this seems so complicated, that it suggests that there is another way of doing it.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Does anybody know about&amp;nbsp;any documentation describing these procedures in detail or by example?&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Thank you&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sat, 13 Oct 2007 08:44:10 GMT</pubDate>
    <dc:creator>Henrique</dc:creator>
    <dc:date>2007-10-13T08:44:10Z</dc:date>
    <item>
      <title>MC9RS08KA2 Flash Programming Procedure</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/MC9RS08KA2-Flash-Programming-Procedure/m-p/155032#M8768</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt; &lt;/DIV&gt;&lt;DIV&gt;I'm not completely certain of the flash programming and mass erase procedures for the MC9RS08KA2&amp;nbsp; MCU.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;As far as I searched, a program should first be stored in RAM, through the BKGD pin, and then be executed with the GO command. This program would then execute the 'Flash Programming Procedure' or the 'Flash Mass Erase Operation', that are described on section 4.6.2 and 4.6.3 of the 'MC9RS08KA2 Datasheet', respectively.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;If this is right, there is not enough RAM&amp;nbsp;for programming an entire 64 byte array at a time on this MCU, since the RAM would need to contain some instructions to follow the procedure and the 64 bytes of a row to be actually programmed into the Flash EPROM. And the RS08KA2 has only 63bytes of RAM.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;I'm wondering if I must use the RAM as a buffer,&amp;nbsp;continuously storing&amp;nbsp;new bytes that come trough the BKGD pin, while they are&amp;nbsp;programed without stopping (because there is a maximum byte program&amp;nbsp;time = 40us) by a code that&amp;nbsp;resides&amp;nbsp;in the RAM too. That would be a race against the time, since the BKGD interface is quite slow (for that). All this seems so complicated, that it suggests that there is another way of doing it.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Does anybody know about&amp;nbsp;any documentation describing these procedures in detail or by example?&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Thank you&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 13 Oct 2007 08:44:10 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/MC9RS08KA2-Flash-Programming-Procedure/m-p/155032#M8768</guid>
      <dc:creator>Henrique</dc:creator>
      <dc:date>2007-10-13T08:44:10Z</dc:date>
    </item>
    <item>
      <title>Re: MC9RS08KA2 Flash Programming Procedure</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/MC9RS08KA2-Flash-Programming-Procedure/m-p/155033#M8769</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;Hello,&lt;/DIV&gt;&lt;DIV&gt;The 9RS08KA has a simpler Flash EPROM than the 9S08 MCUs.&lt;/DIV&gt;&lt;DIV&gt;It has only got two commands available. They are program a byte and erase the whole Flash EPROM.&lt;/DIV&gt;&lt;DIV&gt;In additon what is needed is an external high voltage supply.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;This means that if you want to program something, first you have to copy the routine into RAM, select the address of the byte to be changed, and the address and call the routine.&lt;/DIV&gt;&lt;DIV&gt;As the RAM memory is quite small, you cannot enter a whole row at a time, but will have to call the rout&lt;/DIV&gt;&lt;DIV&gt;ine several times to get more than one byte programmed.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;To be honest, I have not written any Flash EPROM driver for the 9RS08 MCUs, so I might have got something wrong.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;It seems like you intend to write your own BKGD interface.&lt;/DIV&gt;&lt;DIV&gt;Is that your intention?&lt;/DIV&gt;&lt;DIV&gt;There are several BKGD interfaces that available right now.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Regards,&lt;/DIV&gt;&lt;DIV&gt;Ake&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 15 Oct 2007 14:19:05 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/MC9RS08KA2-Flash-Programming-Procedure/m-p/155033#M8769</guid>
      <dc:creator>Ake</dc:creator>
      <dc:date>2007-10-15T14:19:05Z</dc:date>
    </item>
    <item>
      <title>Re: MC9RS08KA2 Flash Programming Procedure</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/MC9RS08KA2-Flash-Programming-Procedure/m-p/155034#M8770</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;I once&amp;nbsp;won&amp;nbsp;2 free samples of this 9RS08KA2. It seemed very usefull&amp;nbsp;for future projects&amp;nbsp;and I just wanted to program it without having to buy the BKGD interface.&amp;nbsp;I'm taking&amp;nbsp;this task&amp;nbsp;as a challenge.&amp;nbsp;I have no comercial intension of producing this interface.&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 15 Oct 2007 23:46:16 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/MC9RS08KA2-Flash-Programming-Procedure/m-p/155034#M8770</guid>
      <dc:creator>Henrique</dc:creator>
      <dc:date>2007-10-15T23:46:16Z</dc:date>
    </item>
  </channel>
</rss>

