Paso 4: Revisión de código
Variable de la nota los dos:
sinVal de flotador;
int toneVal;
SinVal variable Float guarda el cambio de seno correspondiente al grado. La onda de seno describe una suave oscilación repetitiva, por lo que lo utilizamos para crear la frecuencia del sonido. Así convertimos la sinVal a toneVal, que resulta adecuado a la salida de zumbador.
Sensor de la llama es el dispositivo de entrada, así que tenemos que leer el valor analógico del pin específico. La sintaxis se ve así:
analogRead(pin)
Lee el valor del especificado pin analógico. El kit Arduino Edison contiene un 6 canales 10-bit convertidor analógico a digital. Esto significa que trazará un mapa de tensiones de entrada entre 0 y 5 voltios en valores enteros entre 0 y 1023. Por ejemplo, el valor analógico 512 soportes de 2.5V.
La función sin() calcula el seno de un ángulo (en radianes). El resultado será entre -1 y 1. Para evitar la negativa, deberíamos restringir el grado entre 0 y 180. La realizamos mediante el uso de la declaración.
para (int x = 0; x < 180; x ++) {}
La función sin() utiliza radianes como entrada, por lo que la conversión debe hacerse al principio. Multiplicado por 3.1415/180 puede cambiar de grados a radianes:
sinVal = (sin(x*(3.1412/180)));
Después de eso convertir el sinVal a toneVal, que lo hace adecuado a la frecuencia del zumbador:
toneVal = 2000+(int(sinVal*1000));
Hay un punto aquí, que es cómo convertir el flotador a entero.
sinVal es un tipo de flotador, sólo usar int() para hacer la conversión:
int(sinVal*1000)
sinVal multiplicado por 1000 y más de 2000 resultados en toneVal. Entonces toneVal puede utilizarse como la frecuencia de timbre.
Después de eso, usar el tono para ejecutar el zumbador.
tono (8, toneVal);
Vamos a hablar sobre el tono:
(1)tone(pin,frequency)
Se utiliza para generar una onda cuadrada de la frecuencia especificada en un pin
Pin: el pin en el que se genera el tono
frecuencia: la frecuencia del tono en hertz - unsigned int
(2)tone(pin,frequency,duration)
Pin: el pin en el que se genera el tono
frecuencia: la frecuencia del tono en hertz - unsigned int
duración: la duración del tono en milisegundos (opcionales) - sin firmar largo
(3)noTone(pin)
Detiene la generación de una onda cuadrada por tone()