martes, 31 de marzo de 2020

Reloj. Cronómetro

El siguiente programa implementa un reloj muy básico de horas y minutos. Para poder visualizarlas juntas en el display de cuatro dígitos, multiplicaremos las horas por cien y le sumaremos los minutos:
                 horas*100 + minutos
Ejemplo: 16 horas y 35 minutos
                  16*100   +   35  
                   1600      +   35 = 1635




Ahora vamos a hacer un cronómetro que mida las centésimas de segundo transcurridas desde que accionamos el pulsador 1 hasta que presionamos el pulsador 3 para detenerlo. 

También podríamos usar un único pulsador para iniciarlo y detenerlo. En ese caso, hay que modificar el valor de la variable "cronometro" cada vez que lo presionemos, si valía 0 la ponemos en 1 y si estaba en 1 la ponemos en 0:

En los programas anteriores hemos utilizado la instrucción "espera" para contar el tiempo, 60 segundos en el reloj y 0.01 segundos en el cronómetro. Esta instrucción detiene por completo el funcionamiento del programa; si el tiempo es pequeño, como en el cronómetro, puede que no genere mayores problemas, pero si es grande (en el reloj se detiene durante 1 minuto) impedirá que se pueda atender el funcionamiento de otros dispositivos, por ejemplo, unos pulsadores para que podamos ponerlo en hora en cualquier momento. Para evitar que el programa se mantenga sin hacer nada durante tanto tiempo podemos usar los bloques "temporizador" y "reiniciar temporizador" del apartado sensores.

"Temporizador" es una especie de variable en la que se va almacenando el tiempo transcurrido desde que se inicia el programa o desde que la reiniciamos. Utilizando estos bloques el programa del reloj quedaría de la siguiente manera:

De esta forma el programa no se detiene nunca y podríamos incluir la atención a otros dispositivos (ejercicio 2).


Ejercicios propuestos:

1.- Realizar un cronómetro similar al anterior en el que se visualicen los minutos y segundos transcurridos.

2.- Hacer un reloj que se pueda poner en hora con los pulsadores.




El potenciómetro                                                         ⇒  Conectar un servo. Parking




No hay comentarios:

Publicar un comentario