En esta nueva práctica se trata de modificar el código de la práctica anterior de manera que al pulsarse el botón A, comience una cuenta atrás mostrando el tiempo que queda para que el semáforo cambie de color.
Finalmente, y si nos sobra tiempo también le añadimos señales sonoras para cuando el semáforo se encuentre en verde y en naranja.
Para crear la cuenta regresiva, de una forma un poco tosca, generamos una función, a la cual llamamos cuenta atrás. Para ver cómo se realiza puedes ver el vídeo que acompaña esta entrada. Dentro de la función introducimos una variable (tiempo) y fijamos, inicialmente, su valor al de la duración de la cuenta atrás (en el ejemplo 6 s).
Incluimos, también un bucle en el que dada 1000 ms se descuenta 1s a la variable de tiempo. Para que la Micro:bit muestre el tiempo que falta para el cambio del color del LED, incluimos el comando mostrar cadena, borrando dicho panel al terminar el bucle .
Una vez creada la función, debemos llamarla, en el momento que queramos usarla. En este caso, en cuanto pulsemos el botón A justo antes de que se iluminen los LED Neopixel de color verde.
AMPLIACIÓN
En un semáforo para invidentes, suele escucharse un sonido intermitente mientras se puede cruzar. Además el intervalo entre sonidos es menor cuando se acerca el momento en el que el semáforo se pondrá en rojo. Intenta modificar el código para lograr dicho comportamiento.
Inténtalo pero en caso de que no lo consigas, puedes adaptar la solución mostrada a continuación.
Comentarios
Publicar un comentario