The linker scripts are made for each PIC32 memory size and not 'L' or 'H' flavour. So the "PIC32MX3xx_7xx_w512kb.ld" is for 512Kb devices, 'L' or 'H'.
May be you've seen the line #35: "OPTIONAL("libmchp_peripheral_32MX795F512L.a")*/" in the ".ld" files. Lines #34 and #35 should be uncommented for XC32 compiler use (not C32!). In this case change line #35 accondingly to your device.
After power cycle, your application don't start ? Is the bootloader still working ?
Regards,
Edorul
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I see the linker script for the 'L' variant but it doesn't seem to be working for my 'H'.
I recompiled the UART bootloader firmware, changing the device, and reprogram but maybe the linker script PIC32MX3xx_7xx_w512kb.ld won't work?
The PC app does write to the device and it appears to work but after power cycle, the application code does not run (or run correctly.)
Any help?
Last edit: brett faavre 2014-08-03
Hello,
The linker scripts are made for each PIC32 memory size and not 'L' or 'H' flavour. So the "PIC32MX3xx_7xx_w512kb.ld" is for 512Kb devices, 'L' or 'H'.
May be you've seen the line #35: "OPTIONAL("libmchp_peripheral_32MX795F512L.a")*/" in the ".ld" files. Lines #34 and #35 should be uncommented for XC32 compiler use (not C32!). In this case change line #35 accondingly to your device.
After power cycle, your application don't start ? Is the bootloader still working ?
Regards,
Edorul