- 1 Fotorresistencia
- 1 Buzzer
- 1 Resistencia de 10 kΩ
En esta práctica, haremos un aparato similar a un theremín, que es un instrumento musical electrónico el cual es manipulado sin contacto físico, pues funciona por ondas de radio (adjuto foto). Para ello realizaremos las siguientes conexiones:
El código usado es el siguiente:
//variable del sensor de luz
int sensorValue;
// variable para calibrado inferior
int sensorLow = 1023;
// variable para calibrado superior
int sensorHigh = 0;
// pin del LED
const int ledPin = 13;
void setup() {
// declara el pin del LED como salida y lo enciende
pinMode(ledPin, OUTPUT);
digitalWrite(ledPin, HIGH);
//calibra durante los primeros 5 segundos de programa
while (millis() < 4000) {
// guarda el valor máximo del sensor
sensorValue = analogRead(A0);
if (sensorValue > sensorHigh) {
sensorHigh = sensorValue;
}
//guarda el valor mínimo del sensor
if (sensorValue < sensorLow) {
sensorLow = sensorValue;
}
}
// apaga el led para señalar que ha acabado el calibrado
digitalWrite(ledPin, LOW);
}
void loop() {
//lee la señal analógica del A0 y la guarda como valor
sensorValue = analogRead(A0);
//mapea los los valores del sensor en un rango de frecuencias
int pitch = map(sensorValue, sensorLow, sensorHigh, 50, 4000);
//ejecuta el tono durante 20 ms en el pin 8
tone(8, pitch, 20);
delay(10);
}
La simulación en circuits.io es la siguiente:
Y este el resultado en formato físico:
No hay comentarios:
Publicar un comentario