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

Access a function using address

Since the c51 compiler does not support the recursive call of a function is there any way to find out on which address location the function which is to be called as a recursive is located?

That is, is there any way to implement the recursive call funtion in a similar way of a software reset i.e just call like this ,

((void (code *) (void)) 0x0000) ();

Parents
  • The memory model is Large.

    The setting is done in the reentrant stack intialisation of the startup.a51 for large model.

       XBPSTACK        EQU     1
       XBPSTACKTOP     EQU     0FFFFH+1;
    

    My microsontroller is P89c51RD2HBP, and i have external RAM of 8KB.

    For the above microncotroller what should be done?

    If i have 8031 with 64KB external EPROM and 8KB external RAM what should be the setting done?

Reply
  • The memory model is Large.

    The setting is done in the reentrant stack intialisation of the startup.a51 for large model.

       XBPSTACK        EQU     1
       XBPSTACKTOP     EQU     0FFFFH+1;
    

    My microsontroller is P89c51RD2HBP, and i have external RAM of 8KB.

    For the above microncotroller what should be done?

    If i have 8031 with 64KB external EPROM and 8KB external RAM what should be the setting done?

Children