Semáforo micro:bit con Pulsador en MakeCode

Proyecto PMB1

Micro:bit Nivel Básico

Material Necesario

Componente Cantidad Descripción Comprar
BBC micro:bit1 udPlaca BBC micro:bit
Protoboard1 udPlaca Prototipado
Breakout1 udBBC micro:bit Breakout
Led Rojo1 ud
Led Amarillo1 ud
Led Verde1 ud
Resistencia 220 Ω 3 uds
Cables Prototipado7 uds

En este Proyecto, vamos a realizar un Sencillo Semáforo con una placa BBC micro:bit, un un led rojo, un led amarillo y un led verde que irán encendiéndose de forma secuencial conforme presionemos el Pulsador A de la tarjeta micro:bit.

Puedes encontrar información complementaria sobre los componentes que vamos a utilizar en este Proyecto de Nivel Básico en la Sección Formacion o haciendo click directamente en los siguientes enlaces.

Lo primero que debemos realizar es el montaje que se detalla en el siguiente esquema (recuerda que puedes pinchar sobre cualquier imagen para ampliarla).

Figura PMB1.1 Esquema Principal del Proyecto

Es un montaje sencillo, en el que solo cabe resaltar

  • El Pulsador que vamos a utilizar es el que tiene integrado la placa micro:bit etiquetado como “A”
  • Resistencias de los Led serán de 220 Ω
  • Las resistencias no tienen polaridad, luego da igual el sentido de su colocación pero en el caso de los Leds si es importante tener en cuenta la misma

Una vez realizado el montaje, vamos a poner a continuación el pseudocódigo para entender mejor el algoritmo que vamos a implementar posteriormente.

Programa semaforo_microbit_con_pulsador_en_makecode

  Procedimiento Al_iniciar
    mostrar_icono ("cuadrado");  // Mostramos un cuadrado en la matriz de leds. Usamos esta acción como 
                                 // "banderín" para indicar que el programa se inicia correctamente
    led_encendido := "ninguno";  // Inicialmente inicializamos la variable a "ninguno"
    escribir (P0 , 0);  // También apagamos todos los leds escribiendo un 0 en los pines P0, P1, P2
    escribir (P1 , 0);
    escribir (P2 , 0);  
  Fin Procedimiento al_iniciar;


  Procedimiento para_siempre
    Si (Pulsador_A == pulsado) entonces
      Si ((led_encendido == "ninguno") o (led_encendido == "verde")) entonces   // Si es la primera vez que pulsamos, es decir no hay ningún led encendido
                                                                                // o el led encendido ahora es el verde
        led_encendido := "rojo";  // Asignamos led_encedido a "rojo"
        escribir (P0 , 1);        // Escribimos un 1 el P0 que conecta el led rojo
        escribir (P1 , 0);        // Escribimos un 0 en el resto de leds para apagarlos
        escribir (P2 , 0);  
        hacer_pausa (200 ms);  // Evitar que una sola pulsación del Pulsador_A sea leída mas de una vez 
    
      Sino
        Si (led_encedido == "rojo") entonces  // El led encendido es el rojo
          led_encendido := "amarillo";  // Asignamos led_encedido a "amarillo"
          escribir (P0 , 0);            // Escribimos un 1 el P1 que conecta el led amarillo
          escribir (P1 , 1);            // Escribimos un 0 en el resto de leds para apagarlos
          escribir (P2 , 0);  
          hacer_pausa (200 ms);  // Evitar que una sola pulsación del Pulsador_A sea leída mas de una vez         
    
        Sino  // En este caso ya solo puede tratarse del led amarillo el que esta encendido
          led_encendido := "verde";     // Asignamos led_encedido a "verde"
          escribir (P0 , 0);            // Escribimos un 1 el P2 que conecta el led verde
          escribir (P1 , 0);            // Escribimos un 0 en el resto de leds para apagarlos
          escribir (P2 , 1);  
          hacer_pausa (200 ms);  // Evitar que una sola pulsación del Pulsador_A sea leída mas de una vez            
        Fin Si
      Fin Si
    Fin Si
  Fin Procedimiento para_siempre
Fin Programa semaforo_microbit_con_pulsador

Una vez visto el pseudocódigo que define nuestro algoritmo, vamos a ver la programación del mismo mediante Microsoft MakeCode.

El proceso de conversión de pseudocódigo a código de programación (MakeCode, JavaScript, Python, etc) con la práctica, se hará un proceso metódico y rutinario, es decir, muy sencillo.

Realmente el proceso clave de la programación es el diseño del algoritmo, que es donde definimos lo qué queremos hacer y cómo.

Por eso es tan importante la realización del pseudocódigo de nuestro algoritmo y la documentación mediante comentarios del mismo, pues pasado un tiempo nos permitirá comprender y recordar rápidamente su funcionamiento.

También nos servirá para que un programador diferente entienda nuestro algoritmo de forma ágil y rápida.

A continuación la implementación de nuestro algoritmo mediante Microsoft MakeCode.

En la imagen siguiente podemos ver una vista general de todo el Proyecto.

Figura PMB1.2 Programación del Proyecto con Microsoft MakeCode

A continuación mostraremos con más detalle, en dos imágenes, el anterior código.

Figura PMB1.3 Programación del Proyecto con Microsoft MakeCode – Al Iniciar
Figura PMB1.4 Programación del Proyecto con Microsoft MakeCode – Para Siempre

Y como suele ser habitual, para finalizar pondremos unas imágenes del Proyecto.

Figura PBM1.5 Imágenes del Montaje del Proyecto

Espero hayas aprendido y disfrutado con este Proyecto.

Si tienes dudas o quieres hacer cualquier aportación que consideres de interés, puedes realizar todos tus comentarios a continuación.

Compártelo en tus Redes Sociales

Deja un comentario

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.plugin cookies

ACEPTAR
Aviso de cookies