Control e robótica

tecnoloxia.org

Array de LEDs e funcións

Descrición:

Arrays

Para definir un conxunto de variables podemos utilizar un array:
tipo nome[nº de variables]={valor1, …, valor n}

Podemos utilizar un array para almacenar, por exemplo, os pins nos que están conectados os LEDs. Isto resulta interesante, por exemplo, se os pins nos que están conectados os LEDs non son consecutivos.

Funcións

As funcións ou subrrutinas son programas que definimos antes do loop() e que recollen unha serie de instrucións. Cando queremos que esas instrucións se executen só temos que invocar a función no lugar do programa que nos interese e poderemos facelo tantas veces como queiramos, sen necesidade de repetir o código.

  • Para definir unha función sen parámetros escribimos, fóra do loop, void nomedafuncion(){ instrucións}
  • Para invocar a función xa dentro do loop escribimos nomedafuncion();
  • Tamén podemos definir unha función con certos parámetros, pero iso irémolo vendo máis adiante con exemplos concretos.

Programas:

1. Función luces

1. Función luces: Imos empregar unha función ou subrutina, que definiremos previamente. No noso caso chámase “luces”. Para definila usamos void luces() {…} Cando queiramos que se execute invocámola: luces ();

2. Ruleta de leds

2. Ruleta de leds: 5 LEDs se irán acendendo e apagando consecutivamente e volta a empezar. A persoa que xoga deberá premer no pulsador cada vez que se acenda o LED do medio, de cor verde (pin 11 no noso caso). No caso de acerto móstrase “Acertaches!” na consola e soará unha melodía. No caso de fallo móstrase “Fallaches” e soará outra melodía. Para ver como facer para que soe unha melodía bótalle unha ollada á sección “Xogando co son“. Neste caso conectamos un zumbador entre o pin 4 e a masa.

Simulación:

Propostas:

  1. Xogo de luces con funcións: Fai un xogo de luces creando varias funcións (por exemplo, acender e apagar os leds consecutivamente, acender e apagar varias veces, etc.). Despois fai un programa que inclúa estas funcións. Por exemplo, con varios pulsadores, cando prememos un pulsador determinado execútase unha función concreta.
  2. Ruleta mellorada. Podes mellorar o programa da ruleta engadindo novas accións. A) Engade máis LEDs, polo menos 9. Utiliza un array para definilos. B) Introduce variables para establecer un número máximo de intentos e para facer un contador co número de acertos en cada partida. Ao finalizar o xogo (esgotáronse os intentos) soa outra melodía diferente C) Fai que a medida que acertas o intervalo de tempo entre o acendido dos diferentes LEDs sexa menor, facendo o xogo máis difícil.
Tweet about this on TwitterShare on FacebookShare on Google+Email this to someone


     

Deixa unha resposta

Required fields are marked *.