bclose

Pulsadores y condicionales

Controlando un led con un pulsador

Objetivos

 

    • Presentar los pulsadores.
    • Utilizar un nuevo tipo de bloques.
    • Aprender a crear estructuras condicionales.
 

Kit de inicio para seguir el curso

.

Programacion Mblock

Kit de inicio a mBlock

Para poder seguir este curso te recomendamos que compres nuestro kit de inicio mBlock.

Comprar Kit inicio mBlock

Los pulsadores

 

Vivimos rodeados de pulsadores, o si preferís llamarlo así, botones. Además, al menos de acuerdo a mi experiencia, desde pequeños tenemos ya una fijación con ellos y con tratar de pulsar todos los que tengamos a nuestro alcance. No hay más que ver a mi hija de 3 años… o a mí mismo peleando con mi hermana por ver quién los tocaba.

Así que, como definición de andar por casa, un pulsador es un dispositivo que activa algo al presionarlo. Normalmente los activamos al pulsarlo con un dedo y, al soltarlos, vuelven al lugar de reposo.

Nuestra placa tiene dos de estos pulsadores, que podamos utilizar para lo que nos dé la gana. De momento, como sólo hemos aprendido a usar los leds, vamos a utilizarlos para encenderlos y apagarlos.

 

Las estructuras condicionales

 

Pensad en cualquier decisión de las que solemos tomar a diario. Por ejemplo:

  • Si llueve -> Cojo el paraguas

Pues precisamente a eso es a lo que llamamos, cuando hablamos de programación, una estructura condicional. Al igual que en la vida real, nos sirven para tomar decisiones dentro del programa.  Y traduciendo esto a bloques, vamos a presentar el bloque “si … entonces”.

mblock

Este bloque tiene la misma forma exterior que los bloques “por siempre …” o “repetir …” que ya hemos utilizado. Pero en este caso, sólo llevará a cabo las acciones que le metamos dentro si se cumple la condición que le pongamos en la parte de arriba del bloque.

Para este ejemplo vamos a comprobar si se ha pulsado el pulsador 1 (SW1) del shield y a encender el led rojo en ese caso. Para ello tenemos el bloque “Apretamos pulsador …”. Si os fijáis tiene una forma diferente a los bloques que hemos usado anteriormente, de hexágono, y que “casualmente” encaja a la perfección en el hueco del bloque “si … entonces” de la estructura condicional.

Así que ahora seleccionamos el pulsador “SW1” en el bloque y lo colocamos en ese hueco. Como queremos encender el led rojo, metemos el bloque para hacerlo dentro del condicional, y para que lo compruebe continuamente hasta que lo pulsemos lo metemos todo dentro de un bloque “por siempre”.

mbloc

El problema de este programa es que se enciende el led y así se queda… pero tiene una (o varias) soluciones muy sencillas.

 
  • Una de las soluciones, aunque no la que buscamos, es apagarlo con el segundo pulsador del shield.
  • Simplemente tendríamos que añadir un segundo bloque “si … entonces”. Lo dejamos en vuestras manos. 

 

Si / Si no

 

Para ayudarnos a soluciona el problema anterior tenemos un bloque muy similar al que hemos usado ahora pero que incluye una segunda condición. Es el bloque “si … entonces, si no …”. Funciona de la misma forma, pero nos da una característica extra de lo más útil.

Con esto ya lo tenemos chupado para terminar el programa. Cambiamos el bloque condicional por este nuevo bloque, y en la segunda condición apagamos el led.

mblock

Bueno, pues ahora que tenemos dominados los condicionales, os queda para vosotros controlar el led azul con el pulsador “SW2”. Y seguro que se os ocurren más cosas para ir probando.

De momento nosotros os dejamos un vídeo en el que podéis ver cómo lo hemos ido haciendo nosotros:

 

Resumen de la sesión

 

En esta sesión hemos aprendido varias cosas importantes:

 
  • Hemos visto los pulsadores del shield.
  • Presentamos dos nuevos bloques para crear estructuras condicionales.
  • Hemos controlado los leds utilizando los pulsadores.