<?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 Eeprom 17xx in LPC Microcontrollers</title>
    <link>https://community.nxp.com/t5/LPC-Microcontrollers/Eeprom-17xx/m-p/523918#M6554</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by wella-tabor on Fri Oct 25 00:47:03 MST 2013&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hello,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;could someone help me to clarify some ideas about the EEPROM from the UM10470 LPC178x/7x User manual (Rev. 2.1 — 6 March 2013)?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;There is stated:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;HR /&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;Quote: &lt;/STRONG&gt;&lt;BR /&gt;The 64-byte page register is the same size as a page in EEPROM memory. The 4,032 bytes EEPROM on most devices contains 63 pages. Devices with a 2 kB EEPROM provide 2,048 bytes on 32 pages.&lt;/SPAN&gt;&lt;HR /&gt;&lt;BR /&gt;&lt;SPAN&gt;OK, I got it, there is 63 pages * 64 bytes in page = 4,032 &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;HR /&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;Quote: &lt;/STRONG&gt;&lt;BR /&gt;11:0 ADDR EEPROM Address. Lower 6 bits are don't care.&lt;/SPAN&gt;&lt;HR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; This does not match with my experiences. I am able to read byte e.g. from page 5, ofset 5 by programming the ADDR EEPROM Address to (5)&amp;lt;&amp;lt; 6 | 5.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;The same for write with the exception that the offset should not be more than 0x3F ==&amp;gt; the page offset (0x3F &amp;lt;&amp;lt; 6) must not change.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;The only situation when the lower 6 bits are don't care is during the page erase/programm.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Lets summarize&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;The WRITE:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;The upper bits of the ADDR EEPROM Address&amp;nbsp; are don't care. The lower 6 bits denotes the byte position in the page.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The READ:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;The upper and lower bits of the ADDR EEPROM Address&amp;nbsp; are do care.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The ERASE/PROGRAM&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Lower 6 bits are don't care. The upper 6 bits selects the page to which will be written the content of the buffer (previously filled with the WRITE).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;REMARK&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;There is no need to read-modify-write the whole 64B buffer if you want to change e.g. only 5th byte. Just write byte to the address&amp;nbsp; ((x)&amp;lt;&amp;lt; 6) | 5 and then erase/program the address&amp;nbsp; ((x)&amp;lt;&amp;lt; 6).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Best&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Martin&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 15 Jun 2016 18:04:19 GMT</pubDate>
    <dc:creator>lpcware</dc:creator>
    <dc:date>2016-06-15T18:04:19Z</dc:date>
    <item>
      <title>Eeprom 17xx</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/Eeprom-17xx/m-p/523918#M6554</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by wella-tabor on Fri Oct 25 00:47:03 MST 2013&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hello,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;could someone help me to clarify some ideas about the EEPROM from the UM10470 LPC178x/7x User manual (Rev. 2.1 — 6 March 2013)?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;There is stated:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;HR /&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;Quote: &lt;/STRONG&gt;&lt;BR /&gt;The 64-byte page register is the same size as a page in EEPROM memory. The 4,032 bytes EEPROM on most devices contains 63 pages. Devices with a 2 kB EEPROM provide 2,048 bytes on 32 pages.&lt;/SPAN&gt;&lt;HR /&gt;&lt;BR /&gt;&lt;SPAN&gt;OK, I got it, there is 63 pages * 64 bytes in page = 4,032 &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;HR /&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;Quote: &lt;/STRONG&gt;&lt;BR /&gt;11:0 ADDR EEPROM Address. Lower 6 bits are don't care.&lt;/SPAN&gt;&lt;HR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; This does not match with my experiences. I am able to read byte e.g. from page 5, ofset 5 by programming the ADDR EEPROM Address to (5)&amp;lt;&amp;lt; 6 | 5.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;The same for write with the exception that the offset should not be more than 0x3F ==&amp;gt; the page offset (0x3F &amp;lt;&amp;lt; 6) must not change.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;The only situation when the lower 6 bits are don't care is during the page erase/programm.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Lets summarize&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;The WRITE:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;The upper bits of the ADDR EEPROM Address&amp;nbsp; are don't care. The lower 6 bits denotes the byte position in the page.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The READ:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;The upper and lower bits of the ADDR EEPROM Address&amp;nbsp; are do care.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The ERASE/PROGRAM&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Lower 6 bits are don't care. The upper 6 bits selects the page to which will be written the content of the buffer (previously filled with the WRITE).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;REMARK&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;There is no need to read-modify-write the whole 64B buffer if you want to change e.g. only 5th byte. Just write byte to the address&amp;nbsp; ((x)&amp;lt;&amp;lt; 6) | 5 and then erase/program the address&amp;nbsp; ((x)&amp;lt;&amp;lt; 6).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Best&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Martin&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 18:04:19 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/Eeprom-17xx/m-p/523918#M6554</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T18:04:19Z</dc:date>
    </item>
  </channel>
</rss>

