fbpx

Expresate

Si además quieres enviarnos un Artículo para el Blog y redes sociales, pulsa el siguiente botón:

Avisos
Vaciar todo

¿Como cuento 1 segundo con un cristal de 32 KHz?

14 Respuestas
3 Usuarios
0 Reactions
3,724 Visitas
morgoz
Respuestas: 208
Topic starter
(@morgoz)
Estimable Member
Registrado: hace 18 años

Hola!!

Quisiera recrear un temporizador/contador que se incrementase o decrementase en función del tiempo real, es decir, por ejemplo que a cada segundo se incremente en 1.

Al parecer con un cristal de 32.768 KHz se puede hacer ya que esta frecuencia equivale a 2 elevado a 15 * 1 Hz, es decir a 32768 incrementos en 1 segundo suponiendo incrementos en 1 ciclo de reloj.

Por otro lado, el temporizador/contador que voy a usar es el de un Atmega16, con el que puedo usar tanto uno de 8 bits (Máximo de 255) como de 16 bits (máximo de 65535).

Mi pregunta es, ¿qué valor se supone que tiene que tener el máximo del contador (suponiendo el cristal de 32.768) para que, una vez sea alcanzado equivalga a 1 segundo de tiempo real? ¿Debo de usar por lo tanto el contador de 8 bits o el de 16?¿Me valdría usar el contador de 16 bits poniendo como tope los 32768?

Gracias por vuestra ayuda!!!

Responder
13 respuestas
morgoz
Respuestas: 208
Topic starter
(@morgoz)
Estimable Member
Registrado: hace 18 años

Hola Beamspot,

el tema es que en ningún momento puedo meter el micro a dormir en modo power save, sólo en iddle, con lo que no veo la utilidad de meter el reloj de 32 a la entrada asincrona del temporizador cuando puedo utilizar el mismo reloj tanto para el micro como para el temporizador, ya que no necesito una alta frecuencia para las operaciones "cotidianas" del micro, con 32KHz me basta.

De paso, me gustaría saber cómo se conecta un reloj externo al temporizador de 16 bits. Según el manual, se debe meter la entrada del reloj en T1, pero mi duda es ¿cómo conecto el reloj en T1?

Gracias!!

Responder
beamspot
Respuestas: 1132
(@beamspot)
Noble Member
Registrado: hace 17 años

Perdón por ser tan cotilla, pero porqué no puedes usar el modo PowerSave? Recuerda que cada segundo se te va a despertar el micro. Si tienes problemas de consumo, quizás sea mejor ir pensando en otro micro (mega324p, por ejemplo) que tenga menor consumo y más opciones de reducción del mismo.

Conectar un reloj a T1 es tan sencillo como tirar una pista directamente de la salida del reloj que tengas (salida digital, ojo) al pin de T1. Aún así, te recomendaría usar un pequeño filtro RC (100 ohms, 22pf) por si las moscas.

Si tu reloj no tiene salida digital, entonces quizás sea mejor poner un inversor 'trigger schmitt' a la entrada del micro, alimentado a la misma tensión del mismo. La entrada del inversor, a la salida 'analógica' del reloj.

Lo mejor sería que elaborases un poco más sobre el tipo de reloj o que y cómo pretendes hacer.

Responder
morgoz
Respuestas: 208
Topic starter
(@morgoz)
Estimable Member
Registrado: hace 18 años

Pues el micro básicamente se encarga de, cada pongamos, 30 minutos, lee el estado de una entrada analógica por un pin del ADC y la manda por USART a un dispositivo transceptor de radiofrecuencia.

Después se duerme durante otros 30 minutos y vuelve a lo mismo.

La necesidad de mantener el micro en iddle es porque el dispositivo de radiofrecuencia (unos 60mA en recepción) sólo se duerme (5uA) si recibe un 1 por una entrada determinada, luego me compensa más energéticamente mantener el micro consumiendo en iddle unos 25uA (reloj de 32KHz) que ponerle una puerta lógica, transistor o solución similar para mantener el 1 mientras el micro duerme en PowerSave (15uA), ya que me sale más barato en componentes y en complejidad en el diagrama.

Sobre el reloj en T1.
La idea era poner un cristal.... no he utilizado nunca relojes digitales, ¿me podrías dar alguna referencia?

El por qué estoy mirando como conectar un reloj a T1 es porque no estoy seguro de que pueda alimentar el micro a 32KHz, ya que al parecer, en las especificaciones del micro dice que el ADC debe trabajar entre 50KHz y 200KHz. Esta duda está expuesta en otro post, pero ya que hemos llegado a este punto de la coversación, si me la resuelves te lo agradecería mucho. ¿Puede trabajar el ADC con 32KHz? O las conversiones resultarían menos precisas...

Gracias por tus respuestas y tu interes.
Saludos!!

Responder
beamspot
Respuestas: 1132
(@beamspot)
Noble Member
Registrado: hace 17 años

Bueno, que yo sepa, el ADC puede funcionar a frecuencias muy bajas, pero yo seguiría usando frecuencias superiores.

Respecto del consumo y del modo de funcionamiento, puede que vaya equivocado, pero el puerto te puede mantener la salida que tu quieras en cualquier modo de funcionamiento. Otra cosa es que el pin no te haga nada más. O sea, que si es necesario mantener el 1, y no tienes nada más que necesite funcionar (puerto serie, por ejemplo), entonces sí que puedes usar el modo PowerSave. Incluso puedes usar un pull up externo (una resistencia que te fuerce el pin a 1, pongamos de 10K, entre el pin y Vcc)

Lo del cristal para ser usado como reloj, se suele usar con dos inversores trigger schmitt. Googlea un poco al respecto y seguro que encontrarás un esquema fácil. Y la salida sería digital directamente. Un reloj digital es básicamente un encapsulado metálico que contiene justo lo que te acabo de comentar. A un precio generalmente superior...

De todas maneras, sigo pensando que la solución que yo propongo es la más adecuada a las especificaciones que me has contado.

Responder
morgoz
Respuestas: 208
Topic starter
(@morgoz)
Estimable Member
Registrado: hace 18 años

Manteniendo el pin a 1 en modo Power Save y siempre y cuando el resultado del ADC sea más preciso con una frecuencia superior a 32KHz, desde luego que tu opción es la más optima. Pero si puedo tener la CPU a 32KHz, tan solo en el caso de poder mantener el pin a 1 en modo Power Save seguiría optando por tu solución, si no, creo que el no aprovechar la propia frecuencia de reloj del micro para el temporizador, ahorrando de paso energía en modo activo, sería una tontería.

Pero como con todo, para gustos los colores.

Gracias por tus ideas Beamspot, siempre son bien recibidas y útiles 😉

Saludos!!!!

Responder
Página 2 / 3
Compartir: