Saludos al foro
bien mi nombre es miguel y aunque ya tiene ratillo que ando por el foro no he escrito mensaje pues la mayoria de mis dudas, ya habian sido resueltas por otros usuarios, por lo que agradezco a todos que de una forma indirecta me han ayudado gracias
Tengo una pequeña idea, aunque no se que tan viable sea, o si alguien tuviera otra idea, con gusto la recibiré.
Pues bien tengo conectado un pic16lf877a con una lcd, un ds1307, un led, unos botones para ajustar la hora (ta grande pero espero meterle algunas otras cosillas XD), bueno la situacion es la siguiente
En la LCD se muestra la fecha y hora y tiene una alarma (hasta ahora un led), nunca activa el MCLR
ahora quiero que por medio de un boton por ejemplo conectado en RC0, active la lectura de la eeprom y muestre en pantalla la hora/fecha de encendido y apagado del sistema
Si el apagado se realiza en el mismo dia (que eso será lo más seguro por las pruebas),
muestre todas (aki tendre que usar más de un boton por que si son varias veces debe poder navegar en la lcd
)
ahora, por lo que he notado es que laeeprom no me va alcanzar, entonces debo hacer una rutina de reciclaje (es decir que cuando este llena la sobre escriba desde la posición inicial)
Lo del encendido esta fácil por que solo debemos leer el formato que envia el ds1307 al iniciar el programa y grabarlo en la eeprom
Lo dificil lo siento en lo del apagado, pues en cualquier momento puede ser apagado el sistema
Yo pienso hacerlo de esta forma, ir ejecutando una rutina de grabacion de eeprom cada 5 o 10min de la hora actual del sistema, sin embargo esta escritura no tienen que bajar a la dirección siguiente de escritura, sino que debe escribirla en el mismo lugar
asi de esta forma, si por ejemplo el sistema se apaga a las 8:03 y cada 5 min hace el respaldo de hora entonces me da una cierta tolerancia en la hora (3 min).
cuando nuevamente encendemos el pic, este leera que hay un apagado y entonces ahora si incrementa la posicion de memoria y escribe la nueva hora, esta vez de arranque.
Un problema aparente es que al leer o al escribir la eeprom tenemos un cierto retardo de algunos milisegundo, pero por esta razon es que uso el ds1307, para no perder esos milisegundos, aun así el experimento que toy haciendo no es crítico, así que siento que no sea importante el perder unos pocos milisegundos (20 si no mal recuerdo
)
Bueno esta es mi idea, voy a comenzar a jugar y les comento como me va, si alguien tiene alguna sugerencia, le agradezco
Miguel