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

Problems to execute code

Hello

I'm trying to use my microcontroler-
system with the Keil-Software.

The sytem have got the following
prefereces:
- SAB 80c535
- 32k RAM
- 32k ROM
-Memory-architekture:
(external memory)

  CODE          XDATA
--------     ---------  FFFFh
|      |     |       |
| RAM  |     | RAM   |
| 32kb |     | 32kb  |
|      |     |       |
--------     ---------  8000h
|      |     |       |  7FFFh
| ROM  |     |       |
| 32kb |     ---------
|      |     | LCD   |  0001h
|      |     |       |
--------     ---------  0000h
(The RAM is physically alwayas the
same in CODE and XDATA)

In my opinion this is a von Neumann
architekture.

Facts:
The monitor (mon51) runs properly. I
can communicate with the system.
The debbugger also communicates with the
system. But something with the code
download doesn't work. dScope (DK51)
reports Error 22.
When I try it with the uV2 debugger, the
code seems to be downloaded (statusbar of
downloading counts up to 100%), but I can't
Execute them (but no errors are reported).0

In the target-options I configured that
"Off-chip-code memory" starts at 0000h and
"Off-chip XDATA memory" starts at 8000h.
This Values I used also to generate the
monitor file for de EPPROM.

Ok.. I hope that somebody have got a solution
for my problem...

Yours cincerly
Michael Bigler

Parents
  • The 8051 is a Harvard arch. chip. You get 64K of code space and 64K of xdata space. Both spaces run from 0x0000 to 0xFFFF (they overlap in address but not physically). This gives you 128KB of code + xdata. Whether you use RAM for some of your code or ROM for some of your xdata does not make it von Neumann.

    - Mark

    P.S. Don't forget, you also have DATA which runs from 0x00 - 0x7F and IDATA that overlaps in address and physically from 0x00 - 0x7F. IDATA does not overlap DATA from 0x80 - 0xFF if it exists as on the 8052 core machines.

Reply
  • The 8051 is a Harvard arch. chip. You get 64K of code space and 64K of xdata space. Both spaces run from 0x0000 to 0xFFFF (they overlap in address but not physically). This gives you 128KB of code + xdata. Whether you use RAM for some of your code or ROM for some of your xdata does not make it von Neumann.

    - Mark

    P.S. Don't forget, you also have DATA which runs from 0x00 - 0x7F and IDATA that overlaps in address and physically from 0x00 - 0x7F. IDATA does not overlap DATA from 0x80 - 0xFF if it exists as on the 8052 core machines.

Children
No data