We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
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) ();
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?
All the functions inside my reentrant functions are declared as reentrant.
After compiling the project still the warning message is coming.
Any suggestions what to do to eliminate this warning?
func1, func2 and func3 ?
All functions that could possibly have more than one instance of themselves running need to be declared reentrant.
Yes, the
func1(),func2(),func3() also declared as reentrant.
Then too the warning message is coming.