Кварц только на XT2.
Задача - если кварц не работает, зависнуть с морганием светодиода.
Контроллер работает всегда от DCO.
В этом тексте, если раскомментарить обнулениe флага, то контроллер сбрасывается по непонятной причине.

Если не раскомментарить - то сведодиод моргает бесконечно

Код
void ClockConfiguration(void)
{ unsigned int i;
__disable_interrupt();
DCOCTL= 0x56; // without changes
BCSCTL1=0x07; // START XT2, DCO faster
BCSCTL2=SELS; // select SMCLK=XT2CLK
ResetWDT;
OnWorkRed;
do
{ //IFG1 &= ~OFIFG;
for (i = 0x3FFF; i > 0; i--)
ResetWDT;
ToggleWorkRed;
}
while (IFG1 & OFIFG); // if OSCFault flag set => repeat(error)
}
{ unsigned int i;
__disable_interrupt();
DCOCTL= 0x56; // without changes
BCSCTL1=0x07; // START XT2, DCO faster
BCSCTL2=SELS; // select SMCLK=XT2CLK
ResetWDT;
OnWorkRed;
do
{ //IFG1 &= ~OFIFG;
for (i = 0x3FFF; i > 0; i--)
ResetWDT;
ToggleWorkRed;
}
while (IFG1 & OFIFG); // if OSCFault flag set => repeat(error)
}