domingo, 22 de octubre de 2017

Práctica 9

En esta práctica vamos a seguir utilizando la variable map pero ahora lo que realizara mediante un potenciometro sera regular la luz de un LED. Lo que hace el potenciometro es limitar el paso de la corriente eléctrica

Materiales:

- ArduinoUno
-Protoboard
-Cable USB
-Potenciometro
-Cables Dupont
-LED
-Resistencia de 220 ohm

Código:

// Declaramos las constantes que vamos a usar
const int pinSensor = 0; // pin del sensor analogico, con
un potenciometro
const int pinLed = 9; // pin con el led, tiene pwm
// Declaramos las variables que vamos a usar
int brilloLed = 0; // variable para guardar el valor
con el que se iluminara el led
int valorPotenciometro = 0; // variable para guardar el
valor leido del sensor
void setup() {
// Incializa el pin del boton como entrada
pinMode(pinSensor, INPUT);
// Incializa el pin del led como salida, aunque no es
necesario
pinMode(pinLed, OUTPUT);


void loop() {
// Lee el valor del sensor
valorPotenciometro = analogRead(pinSensor);
// Transforma este valor en el valor que
usaremos para el led
// Para ello usaremos la funcion map()
brilloLed = map(valorPotenciometro, 0, 1023,
0, 255);
// Utilizamos este valor para iluminar el led
analogWrite(pinLed, brilloLed);
// manda los valores por el serial
Serial.print("Valor del Potenciometro = ");
Serial.print(valorPotenciometro);
Serial.print(" Brillo del Led = ");
Serial.println(brilloLed);
delay(100);
}

Foto:




Vídeo:

Práctica 9.1

para esta práctica vamos a crear un piano utilizando pulsadores y un altavoz piezoelectrico que es el que generara las notas musicales ( Do,Re,Mi,Fa,Sol,La,Si).

Materiales:

-AruduinoUno
-Cable USB
-Protobord
-Botones
-Altavoz piezoelectrico
-7 resistencias de 10 k ohm
- 1 resistencia de 100 ohm

Código:
// se declaran las frecuencia de las notas básicas
const int NOTA_DO = 262;
const int NOTA_RE = 294;
const int NOTA_MI = 330;
const int NOTA_FA = 349;
const int NOTA_SOL = 392;
const int NOTA_LA = 440;
const int NOTA_SI = 494;
// se declaran los pines asociados a las notas básicas
const int pulsador_DO = 8;
const int pulsador_RE = 7;
const int pulsador_MI = 6;
const int pulsador_FA = 5;
const int pulsador_SOL = 4;
const int pulsador_LA = 3;
const int pulsador_SI = 2;
// se define las notas que se reproducirán
int notas_basicas[ ] = {NOTA_DO, NOTA_RE, NOTA_MI,
NOTA_FA, NOTA_SOL, NOTA_LA, NOTA_SI};
int pulsadores [ ] = {pulsador_DO, pulsador_RE, pulsa
dor_MI, pulsador_FA,
pulsador_SOL, pulsador_LA, pulsad
or_SI};
int pulsador_activado = 0;

void setup() {
// se define los pines de entrada y salida
for(int pin=6; pin>0; pin--) {
pinMode(pulsadores[pin] , INPUT);
}
}
void loop() {
int pulsador_actual; // se declara como variable local
// el bucle analiza el estado de los 7 pulsadores
for (int pulsador=0; pulsador<7; pulsador++) {
pulsador_actual = digitalRead(pulsadores[pulsador]);
// se lee el estado del pulsador
// si se presiono, se procede a reproducir la nota
asociada
if (pulsador_actual == HIGH) {
tone(13, notas_basicas[pulsador]); // reproduce
la nota
// grabamos el pulsador que ha sido apretado
pulsador_activado = pulsadores[pulsador];
break;
}
}
// su soltamos el pulsador activo apagamos cortamos
el sonido
if (digitalRead(pulsador_activado) == LOW) {
noTone(13);
}
}

Foto:


Vídeo:






No hay comentarios:

Publicar un comentario