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.
I'm using P89C51RD+ which has 64kb Flash. I am using the remaining memory of the Flash after the code.When the memory is full I want to tranfer the data to the pc. My problem is where to start to look for the memory data in order to stabilish the initail addrees for the transfer.I want to design a solution that allows the program by itself distinguishes the code data from the memory data.Is there any pattern that charcaterizes the end of the code memory?
How about using the linker to place an object as the last segment of the program, and using the address of that object as the end-of-code address?
"How about using the linker to place an object as the last segment of the program..." I think I've said this here before, but it'd be really useful if the Linker would automatically provide symbols for applications to use for this sort of info; you know, things like * Total Size of code space; * Hightest-used code address; * Total Size of xdata space; * Hightest-used xdata address; etc, etc,... Some of this would come straight from the uVision Project options (eg, the total sizes), and some would be Linker-generated (eg, the highest-used addresses) I have seen this sort of stuff available with other Linkers. Also, uVision could make things like the Xtal frequency available - so that we don't have to define it both in the Project options and, independently, somewhere in the source - much like the __FILE__ and __MODEL__ predefined macro constants.