<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://community.arm.com/utility/feedstylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>P89c51rd2 Ram Address problem</title><link>https://community.arm.com/developer/tools-software/tools/f/keil-forum/15580/p89c51rd2-ram-address-problem</link><description> Dear all, 
My project is using P89c51rd2 added an external ram(8k). 
Accroding to the data sheet 
the memory model of P89c51rd2 is that: 
 
0-7f lower 128 byte 
80-ff Higner 128 byte 
100-3fff ERAM 
 
----------------------------- 
Extrnal 8K ram from</description><dc:language>en-US</dc:language><generator>Telligent Community 10</generator><item><title>RE: P89c51rd2 Ram Address problem</title><link>https://community.arm.com/thread/84390?ContentTypeID=1</link><pubDate>Fri, 13 Jun 2003 10:00:04 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:95f92a28-4e6c-4e2c-a7ab-f81452f04944</guid><dc:creator>Simon Pun</dc:creator><description>&lt;p&gt;Erik,&lt;br /&gt;
&lt;br /&gt;
Thanks for your quick response. Your advice is very much appreciated.&lt;br /&gt;
&lt;br /&gt;
Kind regards,&lt;br /&gt;
Simon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: P89c51rd2 Ram Address problem</title><link>https://community.arm.com/thread/55065?ContentTypeID=1</link><pubDate>Thu, 12 Jun 2003 09:37:24 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:cd28a424-0d37-45fb-b7f2-2012077790e2</guid><dc:creator>erik  malund</dc:creator><description>&lt;p&gt;&lt;i&gt;What is the starting address of the External RAM?&lt;/i&gt;&lt;br /&gt;
depending on how it is wired, if no &amp;#39;tricks&amp;#39;, it is 0&lt;br /&gt;
&lt;i&gt;Will the Eram and external ram address overall &lt;b&gt;work? &lt;/b&gt;together&lt;/i&gt;&lt;br /&gt;
absolutely&lt;br /&gt;
&lt;i&gt;if i want to use the XBYTE[] to acess the external ram address&lt;/i&gt;&lt;br /&gt;
XBYTE has nothing to do with ERAM/XRAM&lt;br /&gt;
&lt;br /&gt;
A dead simple soultion would be to switch to the P89C668 which is close to a RD2 with 8k RAM internal.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The ERAM/XRAM selection is done in the AUXR.  With external RAM attached, you must - if the memories overlap - set the EXTRAM bit to acces external memory, clear it to access internal.&lt;br /&gt;
&lt;br /&gt;
My solution would be to wire the external RAM to start at 0x8000 (include A15 in the chip select) and let the automatic &amp;quot;external when past the ERAM limit&amp;quot; take care of the switching.  If you do not need more memory that your external RAM hold, just use XRAM only.&lt;br /&gt;
&lt;br /&gt;
Erik&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: P89c51rd2 Ram Address problem</title><link>https://community.arm.com/thread/39856?ContentTypeID=1</link><pubDate>Thu, 12 Jun 2003 09:15:20 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:d0bdd44c-5f19-4723-a454-b06294738a18</guid><dc:creator>Simon Pun</dc:creator><description>&lt;p&gt;Hi,&lt;br /&gt;
&lt;br /&gt;
I am a beginner using Keil C51 complier. I have the same question:&lt;br /&gt;
&lt;br /&gt;
My program works with an xdata array within  the 1K on-chip RAM [ERAM] and now I have 32K static RAM (62256) board connected to the P89C51RD2. When I declare the SAME xdata array to a larger size that goes beyond the 1K on-chip ERAM, the program can&amp;#39;t work.&lt;br /&gt;
&lt;br /&gt;
Any advice as to how I can access external RAM?&lt;br /&gt;
&lt;br /&gt;
Kind regards,&lt;br /&gt;
Simon&lt;br /&gt;
&lt;br /&gt;
PS Hi Raul, do you have an answer for your question now? Your reply is very much appreciated. Thanking you in advance.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>