Tono con un potenciómetro
Parte de la sección Salidas del Journey de Arduino de Coddy. Lección 12 de 24.
Una perilla puede hacer sonar el zumbador como un instrumento. La idea es la misma que con el regulador de intensidad: leer la perilla, convertir la lectura y usarla.
Esta vez el rango objetivo es una frecuencia. 200 Hz es un zumbido grave y 2000 Hz un silbido agudo, así que:
int reading = analogRead(A0);
int pitch = map(reading, 0, 1023, 200, 2000);
tone(8, pitch);map() no necesita que el nuevo rango empiece en 0: 0 se convierte en 200, 1023 se convierte en 2000 y el punto medio de la perilla queda cerca de 1100.
Volver a llamar a tone() con una nueva frecuencia cambia la nota de inmediato, así que el tono sigue la perilla mientras la giras. Un delay(10) breve evita que el sketch reinicie el tono miles de veces por segundo.
Desafío
FácilEl potenciómetro está conectado a A0 y el zumbador al pin 8. Haz que el potenciómetro establezca el tono:
- lee el potenciómetro
- convierte la lectura a una frecuencia de 200 a 2000 Hz con
map() - reprodúcela con
tone()y después espera 10 ms
Pulsa Run y gira el potenciómetro; después, pulsa Check.
Pruébalo tú mismo
const int knobPin = A0;
const int buzzerPin = 8;
void setup() {
}
void loop() {
// lee el potenciómetro, convierte su valor al rango de 200..2000 Hz y reproduce el tono
}
Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Salidas
Practica por tu cuenta: Playground de Arduino