This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

How can i write the memory

I'm using a MicroConverter ADuC812.and a 512K Flash memory with the space
0x0000--0x07FFFF,

I have the PK51 Professional Developer's Kit and have examined the example in the folder:

Keil\C51\EXAMPLES\FarMemory\16MB RAM on ADuC812. 

i configure the ?C?XPAGE1SFR and ?C?XPAGE1RST ,just the same as the .example

enabled under Project -> Options -> Device:
use LX51 instead of BL51
use AX51 instead of A51


enableed under Project->Option->Target:
'far' memory type support
Save address extension SFR in intertupt.


entered under Options for Target - LX51 Locate - User classes:

HDATA (X:0x000000-X:0x7FFFFF)


i want to write from 0x000000 to 0x07FFFF like this:
for(j=0;j<8;j++){
for(i=0;i<=0x0FFFF;i++){

FVAR(char,j*0x010000+i)=i;
}
but it can only write from 0x0000 to 0xFFFF
How can I do?

Parents Reply Children
  • I was trying to store using STR inst of ARM, but was not able to do so. After getting the above guidence I could be able to do

    In my case, I was trying to define a certain range as my DATA area.(Say 0x20000 - 0x2FFFF)
    The same I typed in a .ini file as directed. It didn't work. But in the Debug -> Memory Map, I included the range, then it worked. But I have to specify this every time I enter into dubug mode. Is there any other method. I am also interested to know that why the .ini file contents didn't work, though it was showing in the command line.

  • You need to ensure that all commands in the INI file a terminated with a newline - including the last one!