<?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: another eeprom emulation thread. in 8-bit Microcontrollers</title>
    <link>https://community.nxp.com/t5/8-bit-Microcontrollers/another-eeprom-emulation-thread/m-p/199525#M16241</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;Hello Malcolor,&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Also check this posting.Very interesting way of reducing RAM relacatable code!!!&lt;/DIV&gt;&lt;DIV&gt;&lt;A href="http://forums.freescale.com/freescale/board/message?board.id=8BITCOMM&amp;amp;thread.id=9604" target="_blank"&gt;http://forums.freescale.com/freescale/board/message?board.id=8BITCOMM&amp;amp;thread.id=9604&lt;/A&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Regards,&lt;/DIV&gt;&lt;DIV&gt;Denn&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 07 Mar 2008 18:14:58 GMT</pubDate>
    <dc:creator>Denn</dc:creator>
    <dc:date>2008-03-07T18:14:58Z</dc:date>
    <item>
      <title>another eeprom emulation thread.</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/another-eeprom-emulation-thread/m-p/199516#M16232</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt; &lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;hi everybody. first at all, sorry for my poor english, but i hope you can understand me.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;i'm trying to use a page from flash for eeprom emulation, but i can't and i have read&amp;nbsp;the posts i have found about this topic, but i have triple checked every detail and no bytes written on my flash.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;i modify the .prm file for a eeprom emulation page (from 0xe000 to 0xe1ff); althought i dont use the relocate instruction. i use a "#define const" for write the right value on the security registers (NVPROT = 0xff and NVOPT = 0x7e). i have selected de FCDIV value for a166KHz flash clock.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;i don't use the P&amp;amp;M debugger in my test code for avoid secure troubles from the debug mode. i have a code that writes a value in the first flash page, then i read that value and if it's 0xff, i blink a led in a way, and if it isn't i blink that led in another.&lt;/DIV&gt;&lt;DIV&gt;cause always get the "0xff value led blinking", i have try to erase the flash page before writting, but my uC resets when execute the erasing routine.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;if you need more information about my tests and code, please, say it. thanks a lot.. i'm going crazy with the flash.&lt;/DIV&gt;&lt;DIV&gt;thanks again.&lt;/DIV&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Message Edited by malcolor on &lt;/SPAN&gt;&lt;SPAN class="date_text"&gt;2008-03-04&lt;/SPAN&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;SPAN class="time_text"&gt;04:33 PM&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 05 Mar 2008 00:31:52 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/another-eeprom-emulation-thread/m-p/199516#M16232</guid>
      <dc:creator>malcolor</dc:creator>
      <dc:date>2008-03-05T00:31:52Z</dc:date>
    </item>
    <item>
      <title>Re: another eeprom emulation thread.</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/another-eeprom-emulation-thread/m-p/199517#M16233</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;&lt;BR /&gt;&lt;/DIV&gt;&lt;DIV&gt;Hello, and welcome to the forum.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Firstly, you will need to say which MCU part you are using.&amp;nbsp; Secondly, you will need to&amp;nbsp;detail the code you are using for EEPROM emulation.&amp;nbsp; If the code is from a thread on this forum, identify the thread, preferably with a link to it.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;A&amp;nbsp;reset during the page erase process suggests that COP timeout is possibly occurring.&amp;nbsp; Try disabling the COP timer, and see if the reset still occurs.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Regards,&lt;/DIV&gt;&lt;DIV&gt;Mac&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 05 Mar 2008 14:08:12 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/another-eeprom-emulation-thread/m-p/199517#M16233</guid>
      <dc:creator>bigmac</dc:creator>
      <dc:date>2008-03-05T14:08:12Z</dc:date>
    </item>
    <item>
      <title>Re: another eeprom emulation thread.</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/another-eeprom-emulation-thread/m-p/199518#M16234</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;&lt;DIV&gt;Helo Malcolor,&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;If you are using HCS08 controller&lt;/DIV&gt;&lt;DIV&gt;Check out the document HCS08RMV1 table 4-7 page 54.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;For more details its better to check that particular controller's datasheet.&lt;STRONG&gt;Also what is the bus clock used??&lt;/STRONG&gt;Also value for &lt;STRONG&gt;FCDIV=???&lt;/STRONG&gt; it should be within the range of 150kHz to 200kHz for proper flash operation. Crosscheck this with the value loaded in FCDIV..&lt;/DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;If you give more details, may be someone here could solve your problem.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Good Luck!&lt;/DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Regards,&lt;/DIV&gt;&lt;DIV&gt;Denn&lt;/DIV&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 05 Mar 2008 20:07:28 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/another-eeprom-emulation-thread/m-p/199518#M16234</guid>
      <dc:creator>Denn</dc:creator>
      <dc:date>2008-03-05T20:07:28Z</dc:date>
    </item>
    <item>
      <title>Re: another eeprom emulation thread.</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/another-eeprom-emulation-thread/m-p/199519#M16235</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;well. thanks for your replys.&lt;/P&gt;&lt;P&gt;i'm using MC9S08QG8 controller, whit a bus clock of 0,5MHz. The FCDIV value is 2, so the flash clock is 166KHz.&lt;BR /&gt;i have solved the reset problem when i erase a page (the dummy byte that i had using was an int), but i can't write my byte in the flash.&lt;/P&gt;&lt;P&gt;my .prm file, is like this:&lt;/P&gt;&lt;DIV class="msg_source_code"&gt;&lt;DIV class="text_smallest"&gt;Code:&lt;/DIV&gt;&lt;PRE&gt;NAMES END /* CodeWarrior will pass all the needed files to the linker by command line. But here you may add your own files too. *//* Here all RAM/ROM areas of the device are listed. Used in PLACEMENT below. */SEGMENTS     MIROM                    =  READ_ONLY    0xE000 TO 0xE1FF;  // primera pagina para los valores de frecuencia e id.    ROM                      =  READ_ONLY    0xE200 TO 0xFFAD;    Z_RAM                    =  READ_WRITE   0x0060 TO 0x00FF;    RAM                      =  READ_WRITE   0x0100 TO 0x025F;    ROM1                     =  READ_ONLY    0xFFC0 TO 0xFFCF;//  CODE_RELOC               =  READ_ONLY    0xe200 TO 0xe240 RELOCATE_TO 0x0060; ENDPLACEMENT /* Here all predefined and user segments are placed into the SEGMENTS defined above. */    DEFAULT_RAM                             INTO  RAM;    DEFAULT_ROM, ROM_VAR, STRINGS           INTO  ROM; /* ROM1 In case you want to use ROM1 as well, be sure the option -OnB=b is passed to the compiler. */    _DATA_ZEROPAGE, MY_ZEROPAGE, MIRAM      INTO  Z_RAM;ENDSTACKSIZE 0x50VECTOR 0 _Startup /* Reset vector: this is the default entry point for an application. */&lt;/PRE&gt;&lt;/DIV&gt;&lt;P&gt;&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;and the write function:&lt;/P&gt;&lt;DIV class="msg_source_code"&gt;&lt;DIV class="text_smallest"&gt;Code:&lt;/DIV&gt;&lt;PRE&gt;//Escribe un word en la direccion de memoria flash que se le indicaunsigned char escribeWordFlash(unsigned int *far far_address,unsigned char data){     FSTAT = (FSTAT_FACCERR | FSTAT_FPVIOL);                         // clear errors         (*far_address) = data;                                             // Store desired data to address being programmed   FCMD = 0x20;                                                 // Store programming command in FCMD FSTAT_FCBEF = 1;         asm {                nop                nop                nop                nop        };        if (FSTAT_FACCERR)      return Access_Error; if (FSTAT_FPVIOL)      return Protection_Error;         while (!FSTAT_FCCF);            //Wait for all commands to complete return 0;}&lt;/PRE&gt;&lt;/DIV&gt;&lt;P&gt;&lt;BR /&gt;&amp;nbsp;i disable the interrupts before the writes operation, and don't use the premicro debugger while i'm trying to write.&lt;/P&gt;&lt;P&gt;thanks again.&lt;BR /&gt;&lt;/P&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 06 Mar 2008 16:57:02 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/another-eeprom-emulation-thread/m-p/199519#M16235</guid>
      <dc:creator>malcolor</dc:creator>
      <dc:date>2008-03-06T16:57:02Z</dc:date>
    </item>
    <item>
      <title>Re: another eeprom emulation thread.</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/another-eeprom-emulation-thread/m-p/199520#M16236</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;Hello Malcolor,&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;I think you need to insert a line &lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;P&gt;&lt;FONT size="2"&gt;&lt;B&gt;&lt;FONT color="#800080" size="2"&gt;while&lt;/FONT&gt;&lt;/B&gt;&lt;FONT size="2"&gt;((FSTAT&lt;/FONT&gt; &lt;B&gt;&lt;FONT color="#008080" size="2"&gt;&amp;amp;&lt;/FONT&gt;&lt;/B&gt; &lt;FONT size="2"&gt;&lt;/FONT&gt;&lt;FONT color="#000080" size="2"&gt;0x80&lt;/FONT&gt;&lt;FONT size="2"&gt;)&lt;/FONT&gt;&lt;B&gt;&lt;FONT color="#008080" size="2"&gt;!=&lt;/FONT&gt;&lt;/B&gt;&lt;FONT color="#000080" size="2"&gt;0x80&lt;/FONT&gt;&lt;FONT size="2"&gt;);&lt;/FONT&gt; &lt;I&gt;&lt;FONT color="#008000" size="2"&gt;//&amp;nbsp; Wait till FCBEF is set&lt;/FONT&gt;&lt;/I&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size="2"&gt;&lt;FONT color="#008000" size="2"&gt;&lt;FONT color="#51626F"&gt;&lt;EM&gt;&lt;FONT color="#008000"&gt;before the line&amp;nbsp;&lt;/FONT&gt;&lt;/EM&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (*far_address) = data;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size="2"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size="2"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/P&gt;&lt;P align="left"&gt;&lt;FONT size="2"&gt;Please refer Section &lt;FONT face="Helvetica-Bold"&gt;4.5.4 Access Errors in HCS08 Family Reference Manual, Rev. 2 Page 53&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P align="left"&gt;&lt;FONT size="2"&gt;-&amp;gt;Writing to a FLASH address while FCBEF is not set (A new command cannot be started until the command buffer is empty.)&lt;/FONT&gt;&lt;/P&gt;&lt;P align="left"&gt;&lt;FONT size="2"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/P&gt;&lt;P align="left"&gt;&lt;FONT size="2"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/P&gt;&lt;P align="left"&gt;&lt;FONT size="2"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/P&gt;&lt;P align="left"&gt;&lt;FONT size="2"&gt;And &lt;U&gt;make sure the code is running from RAM rather than from FLASH&lt;/U&gt;.I have not worked on CodeWarrior IDE so I really cannot comment on the .prm file.&lt;/FONT&gt;&lt;/P&gt;&lt;P align="left"&gt;&lt;FONT size="2"&gt;Its a wild guess.I'm not sure.In your .prm file you have commented the relocating part.&lt;/FONT&gt;&lt;/P&gt;&lt;P align="left"&gt;&lt;FONT size="2"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/P&gt;&lt;P align="left"&gt;&lt;FONT size="2"&gt;Regards,&lt;/FONT&gt;&lt;/P&gt;&lt;P align="left"&gt;&lt;FONT size="2"&gt;Denn&lt;/FONT&gt;&lt;/P&gt;&lt;FONT size="2"&gt;&lt;FONT face="Helvetica" size="3"&gt;&lt;FONT color="#008000" size="2"&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;P&gt;&lt;FONT size="2"&gt;&lt;FONT face="Helvetica" size="3"&gt;&lt;FONT color="#008000" size="2"&gt;&lt;BR /&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 06 Mar 2008 18:19:24 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/another-eeprom-emulation-thread/m-p/199520#M16236</guid>
      <dc:creator>Denn</dc:creator>
      <dc:date>2008-03-06T18:19:24Z</dc:date>
    </item>
    <item>
      <title>Re: another eeprom emulation thread.</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/another-eeprom-emulation-thread/m-p/199521#M16237</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;i know that in 16bits freescale family, is necesary to execute the flash routines from ram rather tan flash, but i have&amp;nbsp; double read the datasheet of hcs8 family and i haven't found any reference to this matter. somebody can tell me if the relocate code in .prm file is for execute the flash routines from ram?&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;thanks a lot. i will say you my steps..&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 06 Mar 2008 18:30:45 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/another-eeprom-emulation-thread/m-p/199521#M16237</guid>
      <dc:creator>malcolor</dc:creator>
      <dc:date>2008-03-06T18:30:45Z</dc:date>
    </item>
    <item>
      <title>Re: another eeprom emulation thread.</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/another-eeprom-emulation-thread/m-p/199522#M16238</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;Hi Malcolor,&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Please Refer &lt;U&gt;HCS08 Family Reference Manual, Rev. 2&lt;/U&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;U&gt;&lt;/U&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;U&gt;(&lt;A href="http://www.freescale.com/files/microcontrollers/doc/ref_manual/HCS08RMV1.pdf?fsrch=1" rel="nofollow" target="_blank"&gt;http://www.freescale.com/files/microcontrollers/doc/ref_manual/HCS08RMV1.pdf?fsrch=1&lt;/A&gt;)&lt;/U&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;BR /&gt;&lt;U&gt;4.8.2 Erase One 512-Byte Page in FLASH- Page 60&lt;/U&gt;&lt;BR /&gt;&lt;FONT color="#FF0033"&gt;Program and erase operations for the FLASH memory are a little more complicated compared to many&lt;BR /&gt;application programs because it is not possible to execute a program out of FLASH during FLASH&lt;BR /&gt;program and erase operations.&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;If we access flash during erase/programming results in the undesired behaviour.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Regards,&lt;/DIV&gt;&lt;DIV&gt;Denn.&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 06 Mar 2008 19:11:05 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/another-eeprom-emulation-thread/m-p/199522#M16238</guid>
      <dc:creator>Denn</dc:creator>
      <dc:date>2008-03-06T19:11:05Z</dc:date>
    </item>
    <item>
      <title>Re: another eeprom emulation thread.</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/another-eeprom-emulation-thread/m-p/199523#M16239</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;right. now i know that i need to execute the flash programing from ram, but how can i do it? a asm do_on_stack code?&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;i will try to execute from ram using the do_on_stack and spsub code. i'll say you..&lt;/DIV&gt;&lt;BR /&gt;&lt;BR /&gt;Message Edited by malcolor on &lt;SPAN class="date_text"&gt;2008-03-06&lt;/SPAN&gt; &lt;SPAN class="time_text"&gt;11:37 AM&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 06 Mar 2008 19:20:33 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/another-eeprom-emulation-thread/m-p/199523#M16239</guid>
      <dc:creator>malcolor</dc:creator>
      <dc:date>2008-03-06T19:20:33Z</dc:date>
    </item>
    <item>
      <title>Re: another eeprom emulation thread.</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/another-eeprom-emulation-thread/m-p/199524#M16240</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;Hello,&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;There are two possibilities.&amp;nbsp; One method is to copy the RAM based code to the stack, and execute from&lt;BR /&gt;there.&amp;nbsp; The other method is to use a fixed block of RAM.&amp;nbsp; The latter method is the simpler of the two, and&lt;BR /&gt;is used within the following recent thread.&lt;/DIV&gt;&lt;DIV&gt;&lt;A href="http://forums.freescale.com/freescale/board/message?board.id=8BITCOMM&amp;amp;thread.id=9434&amp;amp;view=by_date_ascending&amp;amp;page=2" target="_blank"&gt;http://forums.freescale.com/freescale/board/message?board.id=8BITCOMM&amp;amp;thread.id=9434&amp;amp;view=by_date_ascending&amp;amp;page=2&lt;/A&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Later in this thread, alternatives are given that are more suited to devices such as the 'QG8, with limited&lt;BR /&gt;RAM capacity.&amp;nbsp; These alternatives do not allow for burst mode programming, but result in less RAM&lt;BR /&gt;being used.&amp;nbsp; For the examples I refer to, the RAM based code is copied to the lower reaches of the RAM&lt;BR /&gt;segment occupied by the stack, but always to a fixed address.&amp;nbsp; A separate function is provided to copy&lt;BR /&gt;the code into RAM, which must be called prior to flash erase and programming operations.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Finally, I don't believe it is necessary to use far pointers for the 'QG8, since addresses do not exceed&lt;BR /&gt;16-bit values.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Regards,&lt;/DIV&gt;&lt;DIV&gt;Mac&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;BR /&gt;&lt;BR /&gt;Message Edited by bigmac on &lt;SPAN class="date_text"&gt;2008-03-07&lt;/SPAN&gt; &lt;SPAN class="time_text"&gt;03:22 AM&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Mar 2008 00:18:45 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/another-eeprom-emulation-thread/m-p/199524#M16240</guid>
      <dc:creator>bigmac</dc:creator>
      <dc:date>2008-03-07T00:18:45Z</dc:date>
    </item>
    <item>
      <title>Re: another eeprom emulation thread.</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/another-eeprom-emulation-thread/m-p/199525#M16241</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;Hello Malcolor,&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Also check this posting.Very interesting way of reducing RAM relacatable code!!!&lt;/DIV&gt;&lt;DIV&gt;&lt;A href="http://forums.freescale.com/freescale/board/message?board.id=8BITCOMM&amp;amp;thread.id=9604" target="_blank"&gt;http://forums.freescale.com/freescale/board/message?board.id=8BITCOMM&amp;amp;thread.id=9604&lt;/A&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Regards,&lt;/DIV&gt;&lt;DIV&gt;Denn&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Mar 2008 18:14:58 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/another-eeprom-emulation-thread/m-p/199525#M16241</guid>
      <dc:creator>Denn</dc:creator>
      <dc:date>2008-03-07T18:14:58Z</dc:date>
    </item>
    <item>
      <title>Re: another eeprom emulation thread.</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/another-eeprom-emulation-thread/m-p/199526#M16242</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;ok. thanks denn and bigmac. i'm writting on flash using the c routines that copies flash code into ram (copyprogram(), runprogram()...); i don't remember the name of the zip file (qg eeprom 6 or something like that).&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;i'd like to study all the alternatives and optimize my code if i had more time, but i need the eeprom emulation, and i will use this solution by the moment.&lt;/DIV&gt;&lt;DIV&gt;when i'll have time, i will read all the possibilities and i'll try to use the asm code.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;thanks a lot again. i wouldn't do it without your help.&lt;/DIV&gt;&lt;DIV&gt;see you.&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Mar 2008 18:20:52 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/another-eeprom-emulation-thread/m-p/199526#M16242</guid>
      <dc:creator>malcolor</dc:creator>
      <dc:date>2008-03-07T18:20:52Z</dc:date>
    </item>
  </channel>
</rss>

