Autor Tema: Por favor, ayuda con una alarma en PCF8583  (Leído 4591 veces)

0 Usuarios y 2 Visitantes están viendo este tema.

Desconectado IsaHarvar

  • PIC10
  • *
  • Mensajes: 12
Por favor, ayuda con una alarma en PCF8583
« en: 15 de Noviembre de 2010, 08:16:35 »
Resulta que sólo me queda un mes para tener que terminar mi PFC y estoy que me tiro de los pelos porque por más horas que le echo, no consigo resolver algunos problemas. Abrí un tema con un problema muy extraño que tenía al leer la hora en el PCF8583, pero al final hice otro programa diferente y funcionó (todavía no sé que falló en el primero). Después me puse a intentar configurar alguna alarma: la diaría, la del día de la semana, la del temporizador... pero después de un 5 días y muchos programas, no consigo que se active ni un maldito flag. Y la hoja de características si la hubieran puesto en chino, sería más explicativa.

Si no entendéis mucho del tema, ¿podríais por lo menos bajarlos los archivos y probar si a vosotros os funciona? El programa tiene muchas funciones y lo que yo hago es ir seleccionado unas u otras en la función main. La hora la lee bien, pero al configurar alguna de las alarmas, debería de activar los bits 0 o 1 del registro de control/status, que también visualizo en el virtual terminal.

He llenado el programa de comentarios para explicar todo, pero si no entendéis cualquier cosa, decídmelo. Adjunto una captura de la simulación en proteus. También podéis usar la lectura y ajuste de la hora, que funcionan perfectamente, para vuestros propósitos.

Si le dedicáis aunque sea un minuto, os lo agradeceré mucho.

Desconectado sander

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 624
Re: Por favor, ayuda con una alarma en PCF8583
« Respuesta #1 en: 15 de Noviembre de 2010, 10:45:01 »
Alguna vez he tenido problemas con las simulaciones del proteus, no tienes posibilidad de armar el circuito en un proto board?

Saludos
La electrónica es el arte de manipular señales eléctricas que transportan información
Jan Davidse

Visita mi blog
Visita mi canal de youtube

Desconectado bmfranky

  • PIC16
  • ***
  • Mensajes: 165
    • La Tienda De Fran
Re: Por favor, ayuda con una alarma en PCF8583
« Respuesta #2 en: 15 de Noviembre de 2010, 14:32:25 »
Hola IsaHarvar, Yo tengo una aplicación en asm, que programa la alarma por puerto serie en un 16f876, lo tengo en placa  y funcionando,cuando llegue a casa , lo programo y pruebo si tu soft funciona, sino , ¿ te interesa mi parte en asm, para añadirla al c como una libreria externa?, si te interesa me lo dices, de todas formas lo pruebo esta noche.
« Última modificación: 15 de Noviembre de 2010, 14:39:41 por bmfranky »
Visiten La Tienda De Fran ;-) Aqui. y mi nueva Web Aqui.

Desconectado IsaHarvar

  • PIC10
  • *
  • Mensajes: 12
Re: Por favor, ayuda con una alarma en PCF8583
« Respuesta #3 en: 15 de Noviembre de 2010, 17:54:42 »
Hola Sander y bmfranky!!  :P Después de el estrés que llevo con el proyecto y el poco caso que me hacen mis tutores, me anima mucho que os molestéis en ayudarme.

Sander, el problema es que sólo puedo ir al laboratorio 2 días, entonces trabajo a distancia con proyectos de MPLAB, compilando con CCS y simulando con proteus. Pero si no consigo hacerlo funcionar, el jueves podré probarlo en una protoboard en el laboratorio.

bmfranky, por supuesto que me interesa tu aplicación, sobre todo si has conseguido que funcione en una placa. Que esté en ensamblador no es ningún problema, yo estaba programando con c porque suele resultar más cómodo, pero a veces el asm es más eficaz y óptimo. Te agradezco que vayas a probar mi programa, espero que lo entiendas porque tiene por lo menos 6 funciones pero sólo hay que usar 1 o 2 para ir probándolas.

Desconectado sander

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 624
Re: Por favor, ayuda con una alarma en PCF8583
« Respuesta #4 en: 15 de Noviembre de 2010, 18:48:50 »
Acabo de simular tu programa y en mi version del proteus (7.6 SP4) , el reloj comienza su cuenta en 23:59:50, a partir de ahi muestra en el registro STATUS el valor de 04, pero cuando la hora llega a 00:01:30 el registro STATUS cambia a 05,  esto indica que el bit 0 cambia de valor, aparentemente seria un problema con la version de tu simulador


Saludos
La electrónica es el arte de manipular señales eléctricas que transportan información
Jan Davidse

Visita mi blog
Visita mi canal de youtube

Desconectado IsaHarvar

  • PIC10
  • *
  • Mensajes: 12
Re: Por favor, ayuda con una alarma en PCF8583
« Respuesta #5 en: 16 de Noviembre de 2010, 21:43:54 »
Gracias Sander!  :-/ de verdad que no esperaba que el fallo no estuviera en el programa. Ahora por lo menos sé que la alarma por desbordamiento del timer funciona. Ese era mi plan B, porque la que realmente quería programar es la alarma diaria. Quizás te pido ya demasiado, pero ¿podrías probar también estos dos programas que subo de alarma diaria? También me gustaría que me pasaras tu simulación, para ver como configuras los dispositivos, porque yo me bajé una librería del PCF8583 y sobreescribí la que había. Puede que eso también haga que el circuito no funcione correctamente.

Si te funciona alguno de los programas, me instalo otra versión de proteus y además el jueves los puedo probar en un entrenador en el laboratorio y ya por fín adelantar con el proyecto.

Saludos  :)

Desconectado IsaHarvar

  • PIC10
  • *
  • Mensajes: 12
Re: Por favor, ayuda con una alarma en PCF8583
« Respuesta #6 en: 16 de Noviembre de 2010, 21:52:11 »
bmfranky aunque parece que ya me va funcionando algo, (mejor dicho a sander le funcionan las cosas, porque en mi ordenador no hay manera) todavía estoy interesada en tu aplicación. Toda ayuda es bienvenida en estos casos, además es muy útil comparar diferentes formas de implementar una solución.

Si quieres te doy mi email o lo subes aquí, como mejor veas.

Saludos

Desconectado bmfranky

  • PIC16
  • ***
  • Mensajes: 165
    • La Tienda De Fran
Re: Por favor, ayuda con una alarma en PCF8583
« Respuesta #7 en: 17 de Noviembre de 2010, 10:38:18 »
Hola IsaHarvar, la versión final no la encuentro, te incluyo una de las ultimas pruebas que hice, no esta terminada, se controla por puerto serie con el iperterminal, es muy intuitivo de controlar, esta creo que tenia un fallo al grabar la hora en el reloj, pero lo que es la alarma es funcional, si encuentro el otro te lo posteare, es que es un proyecto de hace dos años, entonces gastaba otro ordenador, y ahora para encontrar un bakup, pues cuesta. Es muy simple, pero es que yo no sabia casi nada de ensamblador del pic así que perdonad si veis alguna barbaridad.
« Última modificación: 17 de Noviembre de 2010, 10:48:09 por bmfranky »
Visiten La Tienda De Fran ;-) Aqui. y mi nueva Web Aqui.

Desconectado sander

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 624
Re: Por favor, ayuda con una alarma en PCF8583
« Respuesta #8 en: 17 de Noviembre de 2010, 19:53:40 »
Gracias Sander!  :-/ de verdad que no esperaba que el fallo no estuviera en el programa. Ahora por lo menos sé que la alarma por desbordamiento del timer funciona. Ese era mi plan B, porque la que realmente quería programar es la alarma diaria. Quizás te pido ya demasiado, pero ¿podrías probar también estos dos programas que subo de alarma diaria? También me gustaría que me pasaras tu simulación, para ver como configuras los dispositivos, porque yo me bajé una librería del PCF8583 y sobreescribí la que había. Puede que eso también haga que el circuito no funcione correctamente.

Si te funciona alguno de los programas, me instalo otra versión de proteus y además el jueves los puedo probar en un entrenador en el laboratorio y ya por fín adelantar con el proyecto.

Saludos  :)

IsaHarvar realmente no configure nada para la simulacion, la unica diferencia que existe con la tuya es que yo use el modelo del PCF8583 que viene por defecto en el Proteus, talvez por ahí va la cosa, en todo caso cuando tenga algo de tiempo voy a tratar de probar tus programas y te comento.

Saludos
La electrónica es el arte de manipular señales eléctricas que transportan información
Jan Davidse

Visita mi blog
Visita mi canal de youtube

Desconectado IsaHarvar

  • PIC10
  • *
  • Mensajes: 12
Re: Por favor, ayuda con una alarma en PCF8583
« Respuesta #9 en: 22 de Noviembre de 2010, 20:45:53 »
He probado a instalar de nuevo el proteus porque parecía que el problema era el archivo del modelo del PCF8583. Al crear un nuevo diseño y probar los programas, resulta que por fin se encienden los flags de alarma. Sin embargo, el pin de interrupción del reloj, que debería de permanecer a nivel alto y cambiar a nivel bajo al activarse la alarma (el flag correspondiente), está inactivo y con la alarma pasa a nivel bajo.
 
¿Puede ser que el programa esté bien y que si lo pruebo en una placa la interrupción funcione?

Desconectado bmfranky

  • PIC16
  • ***
  • Mensajes: 165
    • La Tienda De Fran
Re: Por favor, ayuda con una alarma en PCF8583
« Respuesta #10 en: 23 de Noviembre de 2010, 07:26:44 »
Hola IsaHarvar, ¿tienes en cuenta que la interrupción es por flanco negativo?,!!NO¡¡, Tienes que poner una resistencia de pull-up, o conectarlo a algún pin que la tenga interna, pues el pcf8583, lo que hace es forzar un nivel bajo cuando ocurre la interrupción, he probado añadiéndola a tu esquema y funciona estupendamente.

De la forma que lo conecto en tu simulación, lo único que deberías hacer, es setear la interrupción externa en el pin RB0, con flanco de bajada y ya esta, ten en cuenta que cuando recibes la interrupción, tienes que resetear la configuración del pcf8583,para que el pin vuelva a estar en alto y reiniciar las operaciones con el, ya sea con otra a alarma o sin ella.

P.D lo del flanco de operación de la interrupción lo pone en el datasheet del pcf8583.
Visiten La Tienda De Fran ;-) Aqui. y mi nueva Web Aqui.

Desconectado IsaHarvar

  • PIC10
  • *
  • Mensajes: 12
Re: Por favor, ayuda con una alarma en PCF8583
« Respuesta #11 en: 23 de Noviembre de 2010, 10:09:26 »
bmfranky eres u **** crack!! mil gracias :) :) ! No entendía porque cuando probé la interrupción con un botón a nivel bajo sí funcionaba y con la interrupción del reloj no. Es justo por la resistencia! cuando pones un botón siempre se conecta a la alimentación por medio de una resistencia y esa misma hacía de pull-up. Lo que hecho es usar la función de ccs: port_b_pullups (0x01); para activar sólo la resistencia pull-up interna de RB0 y funciona perfectamente.


Desconectado bmfranky

  • PIC16
  • ***
  • Mensajes: 165
    • La Tienda De Fran
Re: Por favor, ayuda con una alarma en PCF8583
« Respuesta #12 en: 23 de Noviembre de 2010, 12:00:35 »
 :oops:Me alegra haberte servido de ayuda, ya nos contaras como te queda. ;-)
Visiten La Tienda De Fran ;-) Aqui. y mi nueva Web Aqui.


 

anything