Modo de apagado en el microcontrolador si4010

-1

Estoy trabajando en un proyecto con un microcontrolador si4010 más una batería y quiero ahorrar energía, por lo que tengo que habilitar el modo de apagado. Necesito despertarme cada 1 segundo y hacer el proceso y luego volver al estado de suspensión. Este microcontrolador funciona para otro proyecto con botones, por lo que se activan cada vez que se presiona un botón, pero en mi proyecto no tengo ningún botón. Acabo de tener un ADC y un sensor de campo.

¿Puede alguien ayudarme con este problema?

Tal vez necesite un temporizador que cuando termine de contar 1 segundo, active el microcontrolador y al final se apagará y lo volverá a hacer.

CÓDIGO:

void isr_rtc (void) interrupt INTERRUPT_RTC using 1
{ 
  // Update the master time by 5 every time this isr is run.
  // clear the RTC_INT 
  RTC_CTRL &= ~M_RTC_INT;

  vSys_IncMasterTime(5);

  bIsr_DebounceCount ++;

  if ((bIsr_DebounceCount % bDebounceInterval_c) == 0)
  {
    vBsr_Service();
  }
  return;
}  
    
pregunta idantech

1 respuesta

1

Utilice el temporizador RTC para activar el dispositivo a intervalos regulares. Silabs generalmente tiene algunas notas sobre cómo hacerlo en el sitio web .

Sobre tu fragmento de código:

  

vSys_Shutdown(); EA=1;

Probablemente desee habilitar Interrupciones antes de irse a dormir.

    
respondido por el Turbo J

Lea otras preguntas en las etiquetas