Informatica
El tiempo, la cuarta dimensión, está presente en todo momento, y medir su paso es un aspecto importante en casi cualquier aplicación electrónica. Una de las primeras aplicaciones desarrolladas en el mundo de la electrónica digital fueron los circuitos para medir el tiempo, y estos adquirieron tal importancia, que están presentes en casi cualquier dispositivo electrónico moderno.En nuestro caso, hablaremos de un grupo especial de estos dispositivos, los circuitos temporizadores de los microcontroladores.
El primer microcontrolador de la historia, el INTEL 8051, que salió al mercado en 1976, tenía dos temporizadores programables. Hasta el día de hoy, estos han tenido una evolución constante en el mundo de la electrónica digital, de modo que algunos microcontroladoresmodernos poseen varios contadores.
Contenido
[mostrar]
¿Cómo trabaja un temporizador?
El elemento fundamental del temporizador es un contador binario, encargado de contar los pulsos suministrados por algún circuito oscilador, con una base de tiempo estable y conocida.
El simple hecho de contar pulsos de una duración fija nos permite medir el tiempo con precisiones asombrosas, determinadasfundamentalmente por la estabilidad del generador de pulsos y por los circuitos electrónicos del contador binario. Sin embargo, un contador útil debe tener más elementos que permitan sacar provecho a ése circuito básico, es por ello que los microcontroladores utilizan un conjunto de circuitos auxiliares para poder manejar, con cierto nivel de libertad, las características básicas del contador binarioy convertir el conjunto en un temporizador/contador programable.
Se utilizan en…Editar sección
Hacer una lista completa es prácticamente imposible, pero algunos ejemplos de su aplicación, nos ayudarán a adentrarnos en los entresijos de su diseño y sacarle provecho a sus potencialidades.
Medición de tiempo
División de frecuencia
Medición de período y frecuencia
Conteo deeventos
El Reloj de Interrupciones [DEIT93]
Se dice que un proceso está en ejecución cuando tiene asignada la CPU. Si el proceso pertenece al sistema operativo, se dice que el sistema operativo está en ejecución y que puede tomar decisiones que afectan al sistema. Para evitar que los usuarios monopolicen el sistema (deliberadamente o accidentalmente), el sistema operativo tiene mecanismospara arrebatar la CPU al usuario.
El sistema operativo gestiona un reloj de interrupciones que genera interrupciones cada cierto tiempo. Un proceso mantiene el control de la CPU hasta que la libera voluntariamente (acaba su ejecución, o se bloquea), hasta que el reloj interrumpe o hasta que alguna otra interrupción desvía la atención de la CPU. Si el usuario se encuentra en ejecución y el relojinterrumpe, el sistema operativo entra en ejecución para comprobar, por ejemplo, si ha pasado el cuanto de tiempo del proceso que estaba en ejecución.
El reloj de interrupciones asegura que ningún proceso acapare la utilización del procesador. El sistema operativo, apoyándose en él, intenta distribuir el tiempo de CPU entre los distintos procesos ya sean de E/S o de cálculo. Por tanto, ayuda agarantizar tiempos de respuesta para los usuarios interactivos, evitando que el sistema quede bloqueado en un ciclo infinito de algún usuario y permite que los procesos respondan a eventos dependientes de tiempo. Los procesos que deben ejecutarse periódicamente dependen del reloj de interrupciones.
Como sabemos, todas las tareas de una computadora están sincronizadas por un reloj hardware. Lavelocidad de un procesador determina la rapidez con la que ejecuta un paso elemental o cambio en el sistema. Por ejemplo, si decimos de una máquina que tienen un microprocesador que va a una frecuencia de 100 MHz eso quiere decir que produce alrededor de 100 millones de pasos elementales o cambios en el sistema en un segundo. Pero una instrucción consume algunos de estos pasos mínimos. Supongamos que...
Regístrate para leer el documento completo.