Autor Tema: PIC18F46J50- Problema alimentacion con bateria- sleep mode consume demasiado  (Leído 2729 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado javier

  • PIC10
  • *
  • Mensajes: 35
Hola, estoy teniendo muchos problemas tratando de poner el pic en modo sleep,  pareceria que entra al sleep mode pero mido la corriente y me consume 4 ma, segun la hoja de datos tendria que consumir  105 nA!, el pic esta alimentado usando el cicuito que adjunto, dos diodos conectados a la vdd del pic, cuando se corta la tension se alimenta desde la bateria(3v), estoy midiendo la corriente que sale de la bateria. Tambien probe ponerlo en deep sleep y la corriente baja a 2.3 ma, o sea que pareceria que entra en los modos pero no se porque consume tanto, ya descarte que sea otra cosa que me consume corriente porque desde la bateria va derecho al diodo y al vdd del pic.Alguna idea, algun problema similar? - aca posteo el codigo para los dos casos(en el segundo escribi una parte en assembler para asegurarme que no haya delay entre dos instrucciones(como pide la hoja de datos)


CODIGO PONGO EN SLEEP MODE

#include <18F46J50.h>
#fuses NOWDT,NOPROTECT,NODEBUG,HS
#use delay(clock=20mhz)

#DEFINE LED PIN_A0


void main() {
   byte i;
   
    for(i=0;i<=4;i=i+1)   {    ///PRENDE Y APAGA LED 5 VECES Y ENTRA EN SLEEP MODE
 output_HIGH(led);
 DELAY_MS(500);
 output_LOW(led);
DELAY_MS(500);
}

delay_ms(1000);
 set_tris_c (255); //pongo todas las patas como entradas
 set_tris_d (255);
 set_tris_a(255);
 set_tris_b(255);
set_tris_e(255);
SLEEP();
while(1);         //ESPERO QUE ENTRE EN SLEEP MODE, AHI APAGO LA FUENTE Y MIDO LA CORRIENTE QUE SALE DE LA BATERIA

}


CODIGO PONGO EN DEEP SLEEP MODE

 #include <18F46J50.h>
#fuses NOWDT,NOPROTECT,NODEBUG,HS
#use delay(clock=20mhz)

#DEFINE LED PIN_A0

#byte WDTCON = 4032
#BYTE OSCCON = 4051
#BYTE DSCONH=3917

void main() {
   byte i;
   
    for(i=0;i<=4;i=i+1)   {    ///PRENDE Y APAGA LED 5 VECES Y ENTRA EN DEEP SLEEP MODE
 output_HIGH(led);
 DELAY_MS(500);
 output_LOW(led);
DELAY_MS(500);
}

delay_ms(1000);
 set_tris_c (255); //pongo todas las patas como entradas
 set_tris_d (255);
 set_tris_a(255);
 set_tris_b(255);
set_tris_e(255);
#ASM
BSF WDTCON, 7  // Setting the REGSLP
BCF OSCCON, 7  //Clearing the IDLEN bit
BCF INTCON,7 //Clearing the GIE bit
BSF DSCONH, 7 //Setting the DSEN bit       
sleep
 #endasm        //ESPERO QUE ENTRE EN SLEEP MODE, AHI APAGO LA FUENTE Y MIDO LA CORRIENTE QUE SALE DE LA BATERIA

}


INSTRUCCIONES EN HOJA DE DATOS PARA ENTRAR EN DEEP SLEEP MODE
 
Setting the REGSLP (WDTCON<7>) bit
• Clearing the IDLEN bit
• Clearing the GIE bit
• Setting the DSEN bit (DSCONH<7>)
• Executing the SLEEP instruction immediately after
setting DSEN (no delay or interrupts in between

Desconectado arturo_hg

  • PIC10
  • *
  • Mensajes: 2
Re: PIC18F46J50- Problema alimentacion con bateria- sleep mode consume demasiado
« Respuesta #1 en: 11 de Abril de 2014, 01:26:08 »
Amigo encontraste alguna solucion para tu problema? Estoy en una situacion parecida

Desconectado ppyote

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 929
Re: PIC18F46J50- Problema alimentacion con bateria- sleep mode consume demasiado
« Respuesta #2 en: 11 de Abril de 2014, 05:40:47 »
Javier, no has pensado en deshabilitar las interrupciones globales y probar?
Puede que al quedarse las entradas el alta impedancia, estas puedan hacer despertar al pic, no se sí me explico
por ejemplo, la interrupción externa puede despertar al pic, sí tienes el pin como entrada pin ningún tipo de señal entrante, puede que el pic capte alguna interferencia y se despierte

me acabo de dar cuenta que este tema tiene mucho tiempo ya :D, pero espero que te sirva a ti arturo_hg
« Última modificación: 11 de Abril de 2014, 05:56:32 por ppyote »
PPyote... siempre estareis en mi corazon.... Te quiero Hermano...

Desconectado rivale

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1707
Re: PIC18F46J50- Problema alimentacion con bateria- sleep mode consume demasiado
« Respuesta #3 en: 11 de Abril de 2014, 10:52:02 »
Amigo encontraste alguna solucion para tu problema? Estoy en una situacion parecida
El tema ya tiene unos años sin estar activo, podrías especificar tu problema mas a detalle para poderte ayudar
"Nada es imposible, no si puedes imaginarlo"

Desconectado arturo_hg

  • PIC10
  • *
  • Mensajes: 2
Re: PIC18F46J50- Problema alimentacion con bateria- sleep mode consume demasiado
« Respuesta #4 en: 14 de Abril de 2014, 16:19:37 »
EL modo sleep me consumia demasiada corriente, pero lo solucione con un pic nanoWatt bastante eficientes :)