HOME

PRODUCTOS

PROYECTOS

TUTORIALES

VIDEOS

FREEWARE

PROGRAMAS

FUNCIONES C

EMPRESA

ENGLISH

                   

 proyecto: reloj de tiempo real (RTC) realizado con rutina de interrupciones, con ingreso de la hora a través del teclado.

 

rtc.jpg (78142 bytes)

 

Descripción general:

La integración de rutinas para generar un reloj de tiempo real en los sistemas de microcontrol es una herramienta sumamente útil por ejemplo en la implementación de aplicaciones como temporizadores industriales, en los cuales se deben activar o desactivar ciertos dispositivos en ciertas horas, o en los sistemas en los cuales se deben detectar eventos y conocer la hora en la que ocurrieron, como los controles de acceso o los sistemas de telemetría.

El programa que se muestra está hecho en lenguaje ensamblador para los sistemas EDUPIC, EVOLUPIC, operando con los microcontroladores 16F84/F628/F88 acompañados de un LCD 16 x 1 y un teclado matricial, pero puede ser modificado para operar con cualquier otro microcontrolador de Microchip.

El uso del oscilador de cristal de cuarzo de 4 Mhz en los sistemas permite una precisión del reloj de 0.03%.

Descripción del programa:

El programa descrito funciona por interrupciones, lo cual garantiza la operación exacta de la base de tiempo. Además es posible añadir en el programa principal rutinas de control adicionales para resolver una aplicación particular sin afectar el funcionamiento de la base de tiempo, pudiendo en todo momento consultarse los registros con los datos de la hora en tiempo real.

Se emplea el temporizador TMR0 y su preescalador para generar ciclos de interrupción cada 65.536 milisegundos. Contadores adicionales generados por software, realizan la cuenta de segundos, decenas de segundos, minutos, decenas de minutos, horas y decenas de horas. Una vez que la cuenta alcanza 23:59:59 y se genera la cuenta de un segundo adicional, entonces la hora pasa automáticamente a 00:00:00.

Dentro de la subrutina de interrupción, se incluye un retraso cuyo objetivo es el ajuste fino de la base de tiempo.

Existen varias versiones del programa. En los archivos fuente se dan los detalles de cada uno de ellos.

 

wpe1.jpg (31968 bytes)

 

VERSION PARA INGRESAR LA HORA POR TECLADO

Para EDUPIC 16F628 Y EVOLUPIC Bootloader 16F88, el usuario ingresa desde el teclado los datos de la hora de inicio. En el propio archivo se dan las instrucciones para hacerlo.

Para EVOLUPIC Bootloader 16F88, el programa es:

 RTCV4F88TINY.asm

Vea también el proyecto temporizador programable descrito aquí, en donde el usuario puede también introducir desde el teclado la hora de activación y desactivación del relevador, para la implementación de un temporizador para usos industriales o caseros.