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

monitor ST10

Hi,
I work on st10f168 and i would to load the keil monitor into external ram. But i don't know how does it work !
So, if you have suggestion or docs about configuration, utilisation,......
Because the c:\keil\monitor.. docs are not very expicit.
Thanks
Regards,
Jim

Parents
  • Hello Jean Marc,
    sorry for my delay, it was a very busy week....
    this opens a discussion about debug philosophy...
    Start from the Keil MCB167-NET Monitor, and try to carefully understand what Keil does in the Bootstrap target: RAM is enabled and allocated at 0x000000.
    You need RAM to debug your code, your code has to be placed in RAM to be debugged, and your RAM must begin at 0 since your project interrupt vector table is placed at 0!
    (I am obvuously speaking about a scenario in which the ROM monitor is loaded via Bootstrap and is not resident into ROM.)
    Let suppose you have 1MB of RAM: you will locate your RAM from 0x000000 to 0x0FFFFF, your Mon166 occupies 6KB of code and 512B of RAM, it will reside into the upper part of RAM.
    Mon166 RAM from 0x0FEA00 to 0x0FEBFF
    Mon166 CODE from 0x0FEC00 to 0x0FFFFF
    As with other projects to be debugged with Mon166, you will need to locate all your project segments into the RAM area from 0x000000 to 0x0FE9FF.
    Let me know if you need more help, ciao
    Bruno

Reply
  • Hello Jean Marc,
    sorry for my delay, it was a very busy week....
    this opens a discussion about debug philosophy...
    Start from the Keil MCB167-NET Monitor, and try to carefully understand what Keil does in the Bootstrap target: RAM is enabled and allocated at 0x000000.
    You need RAM to debug your code, your code has to be placed in RAM to be debugged, and your RAM must begin at 0 since your project interrupt vector table is placed at 0!
    (I am obvuously speaking about a scenario in which the ROM monitor is loaded via Bootstrap and is not resident into ROM.)
    Let suppose you have 1MB of RAM: you will locate your RAM from 0x000000 to 0x0FFFFF, your Mon166 occupies 6KB of code and 512B of RAM, it will reside into the upper part of RAM.
    Mon166 RAM from 0x0FEA00 to 0x0FEBFF
    Mon166 CODE from 0x0FEC00 to 0x0FFFFF
    As with other projects to be debugged with Mon166, you will need to locate all your project segments into the RAM area from 0x000000 to 0x0FE9FF.
    Let me know if you need more help, ciao
    Bruno

Children