Autor Tema: Detectar batería baja usando brownout (ccs)  (Leído 2297 veces)

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

Desconectado totuer

  • PIC10
  • *
  • Mensajes: 31
Detectar batería baja usando brownout (ccs)
« en: 20 de Febrero de 2013, 19:08:29 »
Hola Todos
Estoy con un control remota realizado con un 16f627a y ahora con todos los pines utilizados necesito que detecte batería baja y emita una señal a la base para avisar esto.
Charlando con un compañero de trabajo se le ocurrió utilizar el brownout como detector de voltaje, no como reseteador del micro, puesto que si se resetea no puedo mandar la info necesaria a la base.
No tengo experiencia trabajando así con esto, siempre reseteo y chau, se les ocurre como se puede hacer sin usar ningún pin del micro para detectar batería baja?

Gracias a todos

Desconectado korpaztk

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 202
Re: Detectar batería baja usando brownout (ccs)
« Respuesta #1 en: 21 de Febrero de 2013, 23:10:19 »
circuitos para detectar bateria baja hay infinidad en este sitio y en google, con electronica discreta es facil haciendolo con algun comparador y algun 555 para hacer la señal de algun buzzer para indicar bateria baja... o capaz que no interprete mucho tu planteo..

Saludos.-
Korpaz.
Técnico Electronico.

El Papel Es Mi Mejor Psicologo

Desconectado AKENAFAB

  • Colaborador
  • DsPIC30
  • *****
  • Mensajes: 3227
Re: Detectar batería baja usando brownout (ccs)
« Respuesta #2 en: 21 de Febrero de 2013, 23:39:18 »
Al no tener más pines tal vez puedas usar el bit correspondiente al BrownOut BOD

Pero tendrías que revisarlo para saber su estado.
Esta en el registro PCON.


1-revisa antes y despues de un reset para saberlo
2-no actives reset por Brown-out pero revisa el bit.

Esperemos te sirva algo de eso,la verdad nunca lo he probado xD pero si leido.

Saludos!

Desconectado totuer

  • PIC10
  • *
  • Mensajes: 31
Re: Detectar batería baja usando brownout (ccs)
« Respuesta #3 en: 25 de Febrero de 2013, 07:34:14 »
Gracias por responder, respecto del 555 es verdad se puede hacer algo con eso pero el problema es que la placa es chica porque es un remoto y no puedo agregar nada sin pasarme a full smd lo que me complica un poco y lo que me parece buenisimo es lo del PCOM voy a intentar leerlo en una interrupción y variar la alimentación así disparo la señal de batería baja.
En cuanto tenga novedades publico.

Muchas gracias

Pd: como leo un bit en particular de este registro?, porque nunca lo necesité si alguien sabe será agradecido.

Desconectado man3s

  • PIC12
  • **
  • Mensajes: 69
Re: Detectar batería baja usando brownout (ccs)
« Respuesta #4 en: 01 de Marzo de 2013, 11:17:06 »
Para poder acceder a un bit de un registro, en CCS es un tanto sencillo, puedes usar la directiva "bit"  de la siguiente manera:

#BIT id = x.y

donde:
    id es el nombre que le quieres asignar
    x es la direccion de memoria donde esta localizado el registro
    y es el numero de bit

por ejemplo:

#bit TRISA0 = 0x85.0 //BIT 0 del registro localizado en la direccion de memoria 0x85, es decir el bit 0 del registro trisa

y en tu codigo ya podrias hacer lo siguiente:

if(TRISA0){
    .....
}

ahora solo faltaria que adecues la directiva al bit que deseas, identificando en el datasheet la direccion del registro y la posicion de bit que deseas.

Espero te sea de utilidad. Saludos.


Desconectado totuer

  • PIC10
  • *
  • Mensajes: 31
Re: Detectar batería baja usando brownout (ccs)
« Respuesta #5 en: 02 de Marzo de 2013, 11:38:42 »
Muchas Gracias Man
He podido hacerlo, pero aún bajando la tensión (sin el POR activado) leo los bit de BOR y POR y me dan 1 todo el tiempo aún cuando el micro deja de andar por muy baja tensión de alimentación 2,75 volt aprox, siempre dan 1.
leyendo encontré que si no activo el power on rest el estado del BOR no es predecible, pero no necesito que se resetee, estoy necesitando ayuda muchachos esto se está complicando.

Gracias

Desconectado korpaztk

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 202
Re: Detectar batería baja usando brownout (ccs)
« Respuesta #6 en: 03 de Marzo de 2013, 12:02:19 »
y cuando lo activas, eso no genera algún tipo de interrupción como para poder agarrar justo antes de que apague envié la señal y desactives el brownout para que no se resetee?, no se si me explico...

Saludos.-
Korpaz.
Técnico Electronico.

El Papel Es Mi Mejor Psicologo

Desconectado man3s

  • PIC12
  • **
  • Mensajes: 69
Re: Detectar batería baja usando brownout (ccs)
« Respuesta #7 en: 03 de Marzo de 2013, 17:26:03 »
Como mencionas, en el datasheet aparece eso de que no es predecible el valor de BOR

Citar
Status bit is a “don’t care” and is not necessarily
predictable if the brown-out circuit is disabled (by
setting BOREN bit = 0in the Configuration Word).

entonces no lo consideraria muy confiable, si no quieres resetear el uC yo no lo activaria, ademas la unica manera que se me ocurriria seria con la entrada de la bateria a un canal ADC, pero mencionas que seria sin utilizar un pin de mas del uC, asi que no veo otra, de todas maneras estare pendiente si alguien da una solucion magica para tenerla en cuenta si me surge esa necesidad de el bajo voltaje  :).
Saludos.


 

anything