Programación Específica > Programación en C

 Programacion Del Oscilador En El Msp430f169

(1/1)

Dok:
Hola amigos, estoy programando el microcontrolador para un proyecto que tengo y tengo un problema al inicializar el oscilador del microcontrolador, mi codigo es el siguiente:


--- Código: Text --- void InitOsc(void) {  WDTCTL = WDTPW | WDTHOLD;   // Paramos el watchdog timer  BCSCTL1 |= XTS;        // XT1 ~ high-frequency  _BIC_SR(OSCOFF);           // turn on XT1 oscillator   do           // wait in loop until crystal is stable  {    IFG1 &= ~OFIFG;    for (ii = 0xFFFF; ii > 0; ii--);  }  while (IFG1 & OFIFG);   BCSCTL1 |= DIVA1 | DIVA0;      // ACLK = XT1 / 8 = 1 MHz  IE1 &= ~WDTIE;         // desactiva WDT int.   WDTCTL = WDTPW | WDTTMSEL | WDTCNTCL | WDTSSEL | WDTIS1;      // use WDT as timer, flag each. 512 pulses from ACLK  IFG1 &= ~WDTIFG;       // clear WDT int. flag  while ((IFG1 & WDTIFG)!=0);       // cuenta 1024 pulsos XT1 <---Problema   IFG1 &= ~OFIFG;       // clear osc. fault int. flag  DCOCTL |= DCO2 | DCO1 | DCO0;  BCSCTL1 |= RSEL2 | RSEL1 | RSEL0;// MCLK = DCO, 8 MHz  (MCLK=Reloj de la CPU)}  
Y el problema se encuentra en el segundo while [while ((IFG1 & WDTIFG)!=0);] en donde se queda trabado y no se como haerle salir de ahi.

Espero que podais ayudarme amigos. Saludos!!!

Navegación

[0] Índice de Mensajes

Ir a la versión completa