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

MON51 problems with my own target board

I try to use MON51 with my own target board.
I create MON51.hex with the \\keil\mon51\install 7 20 00 to program my EPROM.
I verify my v. Neumann aera with writing/reading code memory starting at 0x2000 and reports no problems. I compile/link my program with a startup.A51 file modified whith "CSEG at 3000" and in "option for target" in the uVision 2 BL51 Locate tab, I specified Code at adress 0x3000 to preserve space for monitor variables at 0x2000.

When I download code to my board with option "go till main" the debugger hangs up and produced no response. When I want to stop the program, it seems that serial connection is lost and I have to reset the board.

What am I doing wrong?
Thanks.

Jean-Luc

Parents
  • Here are a few things to try.

    For the MON51 INSTALL.A51...

    • Make sure that in the INSTALL.A51 file that you set INT_ADR_OFF and DEF_PC_VAL to 3000h.

    • Make sure that the monitor data area is visible from XDATA and from CODE.


    For the program you want to debug...

    • Make sure that the XDATA your program uses does not overlap with the von Neumann area.

    • When you start the debugger make sure that you only select to download the program. Do not select run to main.

    • Once the program downloads, look for errors. No errors is a good sign.

    • Before you run the program, check where the program counter is. Type $ in the command window. If the PC is not set to 3000h, manually set it ($=0x3000).

    • Unassemble your program (U 0x3000) and make sure it looks like what you expect.


    Hopefully, one of these will help.

    Jon

Reply
  • Here are a few things to try.

    For the MON51 INSTALL.A51...

    • Make sure that in the INSTALL.A51 file that you set INT_ADR_OFF and DEF_PC_VAL to 3000h.

    • Make sure that the monitor data area is visible from XDATA and from CODE.


    For the program you want to debug...

    • Make sure that the XDATA your program uses does not overlap with the von Neumann area.

    • When you start the debugger make sure that you only select to download the program. Do not select run to main.

    • Once the program downloads, look for errors. No errors is a good sign.

    • Before you run the program, check where the program counter is. Type $ in the command window. If the PC is not set to 3000h, manually set it ($=0x3000).

    • Unassemble your program (U 0x3000) and make sure it looks like what you expect.


    Hopefully, one of these will help.

    Jon

Children
No data