Цитата(ListenReality @ Jan 21 2016, 12:47)

Всем привет.
Проблема такая: Необходимо завести такую переменную, которая после сброса МК по WatchDog сохранит свое значение.
. . .
Вообще возможно ли это? или МК после сброса по WatchDog затирает память?
В опциях проекта подключите файл линкера не по умолчанию, а с Вашими настройками.
(скопировать стандартный в каталог проекта)
В шапке лин-файла ( для MSP430F149 это файл lnk430F149.xcl )
есть такое:
Код
// segment Restrictions Usage
// ------- ------------ --------------------------
// DATA16_I < 10000 Data16 initialized variables
// DATA16_Z < 10000 Data16 zero initialized variables
// DATA16_N < 10000 Data16 uninitialized variables
// DATA16_HEAP < 10000 Data16 heap used by malloc and free
// DATA20_I Data20 initialized variables
// DATA20_Z Data20 zero initialized variables
// DATA20_N Data20 uninitialized variables
// DATA20_HEAP Data20 heap used by malloc and free
// CSTACK < 10000 Runtime stack
обратите внимание на сегмент DATA16_N.
Если переменную разместить там, то она не дожна инициализироваться при пергрузке.
int my_data @ "MY_DATA_IN_SEG" = 123;
MY_DATA_IN_SEG - указать в списке для DATA16_N в lnk430F149.xcl
Я сам это не проверял, но кажется в этом направлении.
также префикс __no_init
__no_init volatile unsigned __READ char U0RXBUF @ 0x0076;
итд