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

AT89C51RD2 with KEIL and Proteus VSM 7.1

I am using AT89C51RD2 with KEIL and Proteus VSM 7.1 SP2.
The problem i am facing is:
I am using "Small" memory model for AT89S52 (256 bytes RAM).
Due to Address Overflow (Lot of variables), now I am using AT89C51RD2 (256 + 1792 bytes on-chip XRAM)
So i have selected "Compact" memory model to use XRAM.
Now Compiler Side there is no problem, Keil succesfully Creates HEX files.
But when i am simulating this hex file with Proteus there is Blank Display
and nothing at all.

Proteus Simulation log gives message:
[HD44780]Controller received data whilst busy.

What is the problem ?

Same code creates this problem if "Compact" memory model is selected.

Please Help !

Parents
  • Selecting the compact model does not make sense in most cases.

    if you stay with 'small' and add the xdata qualifier to some rarely used variables you will get a much better performance.

    AT89S52 .... now I am using AT89C51RD2
    I do not know (what) Proteus (is) but could it be that (your version of) Proteus does not 'know' the RD2. If you try what I sugest above, you will soon find out if it is the chip or the 'compact' model.

    Erik

Reply
  • Selecting the compact model does not make sense in most cases.

    if you stay with 'small' and add the xdata qualifier to some rarely used variables you will get a much better performance.

    AT89S52 .... now I am using AT89C51RD2
    I do not know (what) Proteus (is) but could it be that (your version of) Proteus does not 'know' the RD2. If you try what I sugest above, you will soon find out if it is the chip or the 'compact' model.

    Erik

Children
No data