Ejercicio 13: Timbre musical (con 2 o más notas)
Requisitos:
- Un pulsador, una resistencia de 1 Kohmio.
- Un zumbador piezoeléctrico.
Planteamiento: Timbre ding-dong, músicas mínimas en cada puerta.
Este es un ejercicio sencillo en el seleccionamos elementos de una cadena a través de los valores de la variable que recorre su ordenación. Repasamos el uso del condicional para usar el pulsador y del procedimiento nota() para producir los sonidos.
Variaciones:
- Añade más notas y crea tu propio timbre carrusel.
VIDEO DEL EJERCICIO 13
VIDEO DEL EJERCICIO 13 (versión para el montaje del SIMON)
CODIGO FUENTE
Copyright (C) 2006 Juan Carlos Alonso de Mena
This program is free software; you can redistribute it and/or modify it under the terms
of the GNU General Public License as published by the Free Software Foundation;
See the GNU General Public License for more details?
int notas[] = {1915, 1700, 1519, 1432, 1275, 1136, 1014, 956};
int puls=5;
int zumb=10;
int tnota=150;
int n=0;
int m=0;
void setup (){
for(n=0;n<4;n++){
pinMode(zumb,OUTPUT);
pinMode(puls,INPUT);
}
}
void nota(){
for(m=0;m<=tnota;m++){
digitalWrite(zumb,HIGH);
delayMicroseconds(notas[n]);
digitalWrite(zumb,LOW);
delayMicroseconds(notas[n]);
}
}
void loop(){
if(digitalRead(puls)==HIGH){
n=0; //elegimos la primera nota del timbre
nota(); //que aquí es la primera de la cadena
delay(200);
n=6; //elegimos la segunda nota del timbre
nota(); //que aquí es la sexta de la cadena
delay(200);
}
}
Volver?
Copyright (c) 2006 Juan Carlos Alonso de Mena
Permission is granted to copy, distribute and/or modify this document under the terms of
the GNU Free Documentation License, Version 1.2 or any later version published by the
Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no
Back-Cover Texts. A copy of the license is included in the section entitled
GNU Free Documentation License?.