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



Reply via email to