This Technical Note discusses cases where an MSP430 device does not start, or does not reach the main function.
The hardware never starts up.
The MSP430 device resets without reaching the "main()" function.
The watchdog timer times out during initialization.
If the application has much (over 4k) of global initialized data, then the initialization within cstartup will not be finished before the watchdog times out (and the device is reset).
The MSP430 derivatives MSP430F1610, F1611 and F1612 have large RAM, but this Technical Note applies to any device with large RAM.
The Watchdog timer must be turned off before the initialization phase. This should preferably be done in __low_level_init.
WDTCTL = WDTPW + WDTHOLD;
All product names are trademarks or registered trademarks of their respective owners.