<?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 MC9S12XA256CAL - Using the 4k EEPROM in S12 / MagniV Microcontrollers</title>
    <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/MC9S12XA256CAL-Using-the-4k-EEPROM/m-p/187401#M7093</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi-&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I ported from a&amp;nbsp;MC9S12A256CPVE to MC9S12XA256CAL Freescale processor. I am having trouble with accessing the 4k EEPROM space. I realize the EEPROM operation is different for both processors.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The NVRAM (EEPROM) drivers for the MC9S12A256CPVE are based on AN2400. I am using these same drivers on the MC9S12XA256CAL. They work for EEPROM addresses 0x0800 to 0x0FF0.&amp;nbsp;I am not sure about the other 2k of EEPROM.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;To verify that my old code was working ok on the new processor, I configured an&amp;nbsp;S19 File write in two 2032-byte&amp;nbsp;NVRAM images&amp;nbsp;at physical locations 0x13F000 (base address 0x????) and 0x13F800 (base address 0x0800). These are byte addressable. The maps are identical.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am able to read locations&amp;nbsp;0x0800-0x0FF0 and verify against a hardcoded map to make sure the stored contents match what I expect to be there.&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;For the second map, I am unsure as to where it lives and if&amp;nbsp;I have to manipulate the EPAGE register to access the other 2k?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The PRM file is as follows:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; EEPROM&amp;nbsp;&amp;nbsp;&amp;nbsp; = READ_WRITE&amp;nbsp; DATA_NEAR IBCC_NEAR&amp;nbsp; 0x0C00 TO&amp;nbsp;&amp;nbsp; 0x0FFB;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; EEPROM_FC = READ_WRITE&amp;nbsp; DATA_FAR IBCC_FAR&amp;nbsp; 0xFC0800 TO 0xFC0BFF;&lt;BR /&gt;&amp;nbsp; EEPROM_FD = READ_WRITE&amp;nbsp; DATA_FAR IBCC_FAR&amp;nbsp; 0xFD0800 TO 0xFD0BFF;&lt;BR /&gt;&amp;nbsp; EEPROM_FE = READ_WRITE&amp;nbsp; DATA_FAR IBCC_FAR&amp;nbsp; 0xFE0800 TO 0xFE0BFF;&lt;/P&gt;&lt;P&gt;//EEPROM_FF = READ_WRITE&amp;nbsp; DATA_FAR IBCC_FAR&amp;nbsp; 0xFF0800 TO 0xFF0BFF;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Is there a good App Note that will help clear up this confusion or is there a sample project that shows how to use the 4k EEPROM?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Any assistance is greatly appreciated.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 04 Jun 2009 04:14:44 GMT</pubDate>
    <dc:creator>jacwit</dc:creator>
    <dc:date>2009-06-04T04:14:44Z</dc:date>
    <item>
      <title>MC9S12XA256CAL - Using the 4k EEPROM</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/MC9S12XA256CAL-Using-the-4k-EEPROM/m-p/187401#M7093</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi-&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I ported from a&amp;nbsp;MC9S12A256CPVE to MC9S12XA256CAL Freescale processor. I am having trouble with accessing the 4k EEPROM space. I realize the EEPROM operation is different for both processors.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The NVRAM (EEPROM) drivers for the MC9S12A256CPVE are based on AN2400. I am using these same drivers on the MC9S12XA256CAL. They work for EEPROM addresses 0x0800 to 0x0FF0.&amp;nbsp;I am not sure about the other 2k of EEPROM.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;To verify that my old code was working ok on the new processor, I configured an&amp;nbsp;S19 File write in two 2032-byte&amp;nbsp;NVRAM images&amp;nbsp;at physical locations 0x13F000 (base address 0x????) and 0x13F800 (base address 0x0800). These are byte addressable. The maps are identical.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am able to read locations&amp;nbsp;0x0800-0x0FF0 and verify against a hardcoded map to make sure the stored contents match what I expect to be there.&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;For the second map, I am unsure as to where it lives and if&amp;nbsp;I have to manipulate the EPAGE register to access the other 2k?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The PRM file is as follows:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; EEPROM&amp;nbsp;&amp;nbsp;&amp;nbsp; = READ_WRITE&amp;nbsp; DATA_NEAR IBCC_NEAR&amp;nbsp; 0x0C00 TO&amp;nbsp;&amp;nbsp; 0x0FFB;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; EEPROM_FC = READ_WRITE&amp;nbsp; DATA_FAR IBCC_FAR&amp;nbsp; 0xFC0800 TO 0xFC0BFF;&lt;BR /&gt;&amp;nbsp; EEPROM_FD = READ_WRITE&amp;nbsp; DATA_FAR IBCC_FAR&amp;nbsp; 0xFD0800 TO 0xFD0BFF;&lt;BR /&gt;&amp;nbsp; EEPROM_FE = READ_WRITE&amp;nbsp; DATA_FAR IBCC_FAR&amp;nbsp; 0xFE0800 TO 0xFE0BFF;&lt;/P&gt;&lt;P&gt;//EEPROM_FF = READ_WRITE&amp;nbsp; DATA_FAR IBCC_FAR&amp;nbsp; 0xFF0800 TO 0xFF0BFF;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Is there a good App Note that will help clear up this confusion or is there a sample project that shows how to use the 4k EEPROM?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Any assistance is greatly appreciated.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 04 Jun 2009 04:14:44 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/MC9S12XA256CAL-Using-the-4k-EEPROM/m-p/187401#M7093</guid>
      <dc:creator>jacwit</dc:creator>
      <dc:date>2009-06-04T04:14:44Z</dc:date>
    </item>
    <item>
      <title>Re: MC9S12XA256CAL - Using the 4k EEPROM</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/MC9S12XA256CAL-Using-the-4k-EEPROM/m-p/187402#M7094</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Ok,&amp;nbsp;I figured this out via testing and reading all the other positings on this subject. I need clarification on one item.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Referring to the&amp;nbsp;.prm entries on my original post, Is EEPROM (which is the same as EEPROM_FF) always mapped to 0x0C00 in the local map regardless of what EPAGE is set to?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;It would seem then if I set EPAGE to 0xFF, then 0x0800 to 0x0BFF is mirrored at 0x0C00 to 0X0FFB (not taking into consideration that from 0x0FFB to 0xFFF are protected areas according to the datasheet).&amp;nbsp; Can anyone please confirm?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV class="message-edit-history"&gt;&lt;SPAN class="edit-author"&gt;Message Edited by jacwit on&lt;/SPAN&gt; &lt;SPAN class="local-date"&gt;2009-06-04&lt;/SPAN&gt; &lt;SPAN class="local-time"&gt;05:13 PM&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV class="message-edit-history"&gt;&lt;SPAN class="edit-author"&gt;Message Edited by jacwit on&lt;/SPAN&gt; &lt;SPAN class="local-date"&gt;2009-06-04&lt;/SPAN&gt; &lt;SPAN class="local-time"&gt;05:19 PM&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 04 Jun 2009 23:10:09 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/MC9S12XA256CAL-Using-the-4k-EEPROM/m-p/187402#M7094</guid>
      <dc:creator>jacwit</dc:creator>
      <dc:date>2009-06-04T23:10:09Z</dc:date>
    </item>
  </channel>
</rss>

