Étape 4: Révision du Code
Variable de remarque les deux :
flotteur sinVal ;
int toneVal ;
Flotteur sinVal variable stocke le sinus changement correspondant au degré. Onde sinusoïdale décrit une oscillation répétitive lisse, afin que nous l’utilisons pour créer la fréquence du son. Ainsi, nous convertissons la sinVal à toneVal, ce qui le rend apte à la sortie de signal sonore.
Détecteur de flamme est le périphérique d’entrée, nous devons lire la valeur analogique de l’axe spécifique. La syntaxe ressemble à ceci :
analogRead(pin)
Lit la valeur de la broche analogique spécifiée. Le kit Arduino Edison contient un 6 canal 10-bit convertisseur analogique/numérique. Cela signifie qu’il mappe des tensions d’entrée compris entre 0 et 5 volts en valeurs entières entre 0 et 1023. Par exemple, la valeur analogique 512 est synonyme de 2.5V.
La fonction sin() calcule le sinus d’un angle (en radians). Le résultat sera comprise entre -1 et 1. Pour éviter le négatif, nous devons limiter la portée des fluctuations entre 0 et 180. Nous en rendent compte à l’aide de l’instruction.
pour (int x = 0; x < 180; x ++) {}
La fonction sin() utilise radian comme entrée, sorte de conversion doit être faite dans un premier temps. Multiplié par 3.1415/180 pouvez modifier de degré en radian :
sinVal = (sin(x*(3.1412/180))) ;
Après que convertir le sinVal à toneVal, qui le rend apte à la fréquence du buzzer :
toneVal = 2000+(int(sinVal*1000)) ;
Il y a un point ici, qui est de savoir comment convertir le flotteur en entier.
sinVal est un type de flotteur, il suffit d’utiliser int() pour faire la conversion :
int(sinVal*1000)
sinVal multipliée par 1000 et plus de 2000 résultats en toneVal. Puis toneVal utilisable comme la fréquence pour buzzer.
Après cela, utilisez le ton pour exécuter le buzzer.
ton (8, toneVal) ;
Nous allons parler de la tonalité :
(1)tone(pin,frequency)
Il est utilisé pour générer une onde carrée de la fréquence spécifiée sur une épingle
axe : l’axe sur lequel générer la tonalité
fréquence : la fréquence de la tonalité en hertz - unsigned int
(2)tone(pin,frequency,duration)
axe : l’axe sur lequel générer la tonalité
fréquence : la fréquence de la tonalité en hertz - unsigned int
Durée : la durée de la tonalité en millisecondes (facultatifs) - unsigned long
(3)noTone(pin)
Il s’arrête à la génération d’une onde carrée déclenchée par tone()