Claudio Grasso wrote:
My apologies, I sent my former mail in HTML format :-(
Here it goes again in "civilized fashion".
Hi people!
I am working in a project that requires a large amount of data for
settings. As information memory is not enough I would like to define
another segment for such data. I thought that the best thing to do was
to take info memory definition as example but using a different
address and, of course reducing .text segment size. My first question is:
Making a custom linker file will work. If you look in the mspgcc
documentation you will find some other ways to achieve what you want.
¿Why information memory segment is defined twice (as infomem and
infomemnobits)? ¿If I need another segment for setting should I do the
same?
infomem(rx) : ORIGIN = 0x1000, LENGTH = 256
infomemnobits(rx) : ORIGIN = 0x1000, LENGTH = 256
If you use the first, data will be initialised. If you use the second it
will not.
Another question: infomem extends over two segments (A & B). If I want
to delete infomem, should I do a dummy write in each segment before
writing?
Yes. You need to write to at least one location in each page of flash
you want ot erase, whether that is info memory, or the main flash. In
fact, the only difference I know of between working with the info memory
and the main flash is the page size.
And here my last question: Sometimes gdbproxy looses contact with the
MPU. In such cases what I do is to reload the programs. Is there any
way to resynchronize j-tag without reloading the program.
If you use "monitor identify" you can usually regain control of the MCU.
If not, then you don't need to reload msp430-gdb or msp430-insight. You
shouldn't need to restart msp430-gdbproxy.
Regards,
Steve