Reloj despertador con pic y cristal de 32.768khz

esta buenisimo el proyecto...felicidades, solo me queda una duda y es que al ver el esquematico hay una seccion que no me queda bien claro a donde va conectada y te pediria me lo aclares porfavor, ya que tengo ya armado gran parte del circuito y pues quiero evitar dañar mi PIC, subo una imagen en la que encierro en un circulo la parte que me esta causando problemas.

gracias y saludos :apreton:

edito:

y otra pregunta mas, no consegui un cristal como el que tu especificas y le coloque uno de 20 efecta mucho esta variacion o solo es cuestion de precicion...?? y el voltaje de alimentacion cual es...???
 

Adjuntos

  • simulacion.png
    simulacion.png
    390.2 KB · Visitas: 289
Última edición:
LucasSiglo21, estoy por ponerme manos a la obra a armar tu reloj despertador (llego tarde a la facultad siempre sino jaja), mi pregunta es si tendrias el diseño de la placa con los componentes en el lugar donde vas(nose si me entenderas...), osea para saber en que lugar va cada cosa y de que valor.

Quedo a la espera, ojala me puedas dar una mano


Gracias
 
perdon LucasSiglo21, ya lo pude solucionar a lo que te pedi en el comentario anterior.

Anda que es un espectaculo el relojito, muchas gracias por el aporte.

suerte
 
realmente no sabía que alguien habia preguntado cosas del reloj..el foro no me avisó. y ahora que LU5JCL me mando un MP me entero que estaban preguntando cosas.

bueno..
1- el cristal es de 32.768khz. es muy importante. es la base de tiempo. (suele haber en mothers viejas, sino en las electrónicas suele haber)

2- IMPORTANTE, hice un par de versiones nuevas.
este es similar, pero con batería de backup y una placa mejor:
http://elcoyotequesuelda.blogspot.com/2010/02/reloj-v13-ahora-no-pierde-la-hora.html
y este lo hice hace poco, es un concepto diferente. permite alarmas diferentes cada día de la semana:
http://elcoyotequesuelda.blogspot.com/2011/04/despertador-v2-mucho-mucho-mejor.html

el codigo no esta perfecto del todo todavia (la alarma se escucha rarito, pero anda bien). pero si lo quieren avisenme
 
felicitaciones esta muy bien, ya que es tu proyecto y con respeto te digo que si quieres compartirlo, te agradeceria mucho, no soy muy bueno en programacion pero con una buena guia podre hacer proyectos tan buenos como este

saludos

jose
 
lucassiglo21

Por favor, estoy desarrollando un proyecto similar pero en C, es decir soy experto en C no en Basic, sin embargo mi preguna no va por ahi, mi pregunta va por la exactitud, ya que he conseguido hacerlo con mi 16f88 pero veo que mi tiempo se adelanta, en promedio 100milisegundos cada minuto, aproximadamente y yo necesito medir el tiempi exacto, lo mas exacto posible y en milisegundos. finalmente mi pregunta:

TU RELOJ SE ATRASA O SE ADELANTA? QUE TAN EXACTO ES?
Lo has probado con un cronometro de tu movil o de algun otro?, que datos de retraso has obtenido,.. por favor responder es de suma importancia, nose si alguien ya le hizo esta pregunta a Lucas, sin embargo esta muy bonito tu resultado final en acrilico, yo postearte la foto de mi proyecto.
Saludos desde PERU
 
Última edición por un moderador:
Hoal velociraptor dices que ya sabes de C de pic pero te falta leer la hoja de datos del pic si te fijas del timer1 se configura para cristal externo de 32.768khz(RTC) con ese valor tienes un reloj de buena presicion.
 
cristian_elect, asi es, mi pregunta es que si con el valor de 32 768 Hz (algunos lo referencian como 32khz), puedo medir milisegundos? o solo segundos, segun lo que necesito, mi objetivo es medir el tiempo en mili o micro segundos, segun lo que me demore detectar un evento,(especificacmente en una vuelta ya que si averiguo esto vere cuantas vueltas da en un minuto), con este dato me ayudaria bastante en mi proyecto, la pregunta era si con ese cristal y con ese PIC, se consiguen tiempos exactos? pero en mili o micro segundos?, o ese pic es para medicion de tiempo segundo a segundo nada mas?... como te digo llevo programando en C, desde q tenia 12 años ahora soy ing. con mas de 30,asi que conosco del tema, pero estoy con el PIC 16f88, ahora por necesidad tengo que aprender PICs solo llevo semanas con esto, asi recurro a ustedes los expertos...
Gracias por las repuestas , y claro el cristal que venden en Peru es tipo cilindrico diminuto de 32768Hz =32.768kHz (punto decimal)

aqui les dejo el video de mi proyecto, aunque no se note muy bien pero estoy usando un LCD
 
Tendrás que buscar un valor de cristal para tener esa precisión de tener valores para mostrar de seg, decimas, centésimas y milésima, con 32.768Khz solo tienes la cuenta del 1 segundo preciso.
Bueno con atmega si logre eso de contar hasta los milisegundos con cristal de 4MHz lo del reloj es de buena precision.
 
Se que el tema, es un reloj despertaror, mi intencion no es desvirtuar el tema, pero este es el unico topic, donde pude encontrar gente interesada en el tiempo, es decir en medir el tiempo real, sea segundo a segundo, usando cristales especificos.
El codigo que uso con el cristal de 4MHz es:

#include <16F88.h>

#FUSES NOWDT,NOBROWNOUT,NOLVP,NOPROTECT,XT
#FUSES NOMCLR
#FUSES CPD
#FUSES IESO//Internal External Switch Over mode enabled
#FUSES PUT
#FUSES FCMEN
#use delay(clock=4000000)
#include "LCD.c"

unsigned int16 cont500mS;
unsigned int16 contS=0;
unsigned int16 contM=0;
unsigned int16 contH=0;
unsigned int8 unocero=0;

#int_TIMER1
void TIMER1_isr(void)
{
setup_timer_1(T1_DISABLED);
set_timer1(3036);//para desbordarlo en 500ms osea medio segundo
setup_timer_1(T1_INTERNAL|T1_DIV_BY_8);
cont500mS++;if(unocero==0){unocero=1;}else{unocero=0;}
if(unocero==1)
{contS++;if(contS==60){contS=0;contM++;}
if(contM==60){contM=0;contH++;}
lcd_gotoxy(1,1);printf(LCD_PUTC,"%Lu:%Lu:%Lus....",contH,contM,contS);

}

}

void main()
{

setup_adc_ports(sAN0|VSS_VDD);
setup_adc(ADC_CLOCK_INTERNAL);
setup_spi(SPI_SS_DISABLED);
setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);

setup_timer_2(T2_DISABLED,0,1);
setup_comparator(NC_NC_NC_NC);
setup_vref(FALSE);
enable_interrupts(INT_TIMER1);
enable_interrupts(GLOBAL);
Setup_Oscillator(OSC_4MHZ|OSC_INTRC);


set_timer1(3036);//adelantamos el tiempo en esa cantidad para que desborde en 500ms
setup_timer_1(T1_INTERNAL|T1_DIV_BY_8);


lcd_init();

while(TRUE)
{

}

}

Como comentario: se crea una interrupcion por desbordamiento, cada 500mili segundos, cada dos interrupciones se cuenta un segundo y se pone el valor en el LCD. he borrado parte del codigo que hace la conversion del modulo Analogico digital para mi proyecto, asi que me disculpan si hay una linea por ahi que se filtra (esa conversio AD funciona a la perfeccion).
Por ahi lei que en el LCD.C, hay DELAYs, ahora la respuesta podria estar por ahi??, en ese mismo comentario lei en ingles que durante un DELAY, las interrupciones no funcionan? es decir si debiera producirse el desbordamiento del timer pero el PIC esta dentro de un DELAY, esta interrupcion no se produce? que hay de cierto en esto? no he tenido oportunidad de comprobar esto, que pienso yo aqui ya se deben haber encontrado con este inconveniente?
Gracias por las respuestas...

mil disculpas por hablar del cristal de 4MHz cuando el tema es con el 32KHz :cry:
Los resultados: Pues el reloj se atrasa, en promedio un segundo cada 30minutos, es demasiado.
 
while(TRUE)
{
if(contS!=contS_ant){lcd_gotoxy(8,1);printf(LCD_PUTC,"%Lu:%Lu:%Lu",contH,contM,contS);contS_ant=contS;}
lcd_gotoxy(1,1);printf(LCD_PUTC,"%1.4f/",CorA);
lcd_gotoxy(1,2);printf(LCD_PUTC,"%Lu/%1.3f/%1.3f",tension,tensionV,tension2V);
}
He sacado el codigo de la interrupcion y lo he puesto en e main, he tratado de pintar en el LCD solo cuando hay cambio entre segundo y segundo, para optimizar recursos pero el retrazo continua...

comparado con un cronometro de un movil NOKIA,muy pronto colocare el video, por ahora una foto
6glbi1.jpg

PD.PIC=11:23 (pasaron 11 minutos 23 segundos), NOKIA= 11:27, el PIC se atraza
 
Última edición:

Solo un comentario, en el video se observa la conversion analogica digital , para esto se coloca un sensor de temperatura LM que arroja la temperatura en milivoltios, 0.23 quiere decir 23°C, aver si a nuestro reloj tambien le sumamos, la temperatura ambiente y un cronometro, creo que con esto quedaria mejor, y si se puede poriamos colocarle un anemometro, y asi, medimos las condiciones de tiempo en general no?... saludos desde Lima Peru
 
Última edición:
Atrás
Arriba