Attention : la borne + du buzzer doit être reliée à une broche PWM (exemple 9) 


tone( pin number, frequency in hertz, duration in milliseconds);

Exemple d’utilisation d’un Buzzer avec un NE 555 :


Simple Beep :

 void setup() {   
  // declare pin 9 to be an output:  
  pinMode(9, OUTPUT);  
 void loop() {   
 void beep(unsigned char delayms){  
  analogWrite(9, 20);   // Almost any value can be used except 0 and 255  
               // experiment to get the best tone  
  delay(delayms);     // wait for a delayms ms  
  analogWrite(9, 0);    // 0 turns it off  
  delay(delayms);     // wait for a delayms ms    

Exemple d’utilisation de la fonction Tone() avec un Buzzer Piezzo :

La résistance est de 100 Ohms

 Hardware connections:  
  Connect the positive pin to Arduino digital pin 9.  
  (Note that this must be a PWM pin.)  
  Connect the negative pin to GND.  
 This sketch uses the buzzer to play songs.  
 The Arduino's tone() command will play notes of a given frequency.  
 We'll provide a function that takes in note characters (a-g),  
 and returns the corresponding frequency from this table:  
  note frequency  
  c   262 Hz  
  d   294 Hz  
  e   330 Hz  
  f   349 Hz  
  g   392 Hz  
  a   440 Hz  
  b   494 Hz  
  C   523 Hz  
 For more information, see  
 const int buzzerPin = 9;  
 const int songLength = 18;  
 // Notes is an array of text characters corresponding to the notes  
 // in your song. A space represents a rest (no tone)  
 char notes[] = "cdfda ag cdfdg gf "; // a space represents a rest  
 // Beats is an array of values for each note and rest.  
 // A "1" represents a quarter-note, 2 a half-note, etc.  
 // Don't forget that the rests (spaces) need a length as well.  
 int beats[] = {1,1,1,1,1,1,4,4,2,1,1,1,1,1,1,4,4,2};  
 // The tempo is how fast to play the song.  
 // To make the song play faster, decrease this value.  
 int tempo = 150;  
 void setup()   
  pinMode(buzzerPin, OUTPUT);  
 void loop()   
  int i, duration;  
  for (i = 0; i < songLength; i++) // step through the song arrays  
   duration = beats[i] * tempo; // length of note/rest in ms  
   if (notes[i] == ' ')     // is this a rest?   
    delay(duration);      // then pause for a moment  
   else             // otherwise, play the note  
    tone(buzzerPin, frequency(notes[i]), duration);  
    delay(duration);      // wait for tone to finish  
   delay(tempo/10);       // brief pause between notes  
  // We only want to play the song once, so we'll pause forever:  
  // If you'd like your song to play over and over,  
  // remove the above statement  
 int frequency(char note)   
  // This function takes a note character (a-g), and returns the  
  // corresponding frequency in Hz for the tone() function.  
  int i;  
  const int numNotes = 8; // number of notes we're storing  
  // The following arrays hold the note characters and their  
  // corresponding frequencies. The last "C" note is uppercase  
  // to separate it from the first lowercase "c". If you want to  
  // add more notes, you'll need to use unique characters.  
  // For the "char" (character) type, we put single characters  
  // in single quotes.  
  char names[] = { 'c', 'd', 'e', 'f', 'g', 'a', 'b', 'C' };  
  int frequencies[] = {262, 294, 330, 349, 392, 440, 494, 523};  
  // Now we'll search through the letters in the array, and if  
  // we find it, we'll return the frequency for that note.  
  for (i = 0; i < numNotes; i++) // Step through the notes  
   if (names[i] == note)     // Is this the one?  
    return(frequencies[i]);   // Yes! Return the frequency  
  return(0); // We looked through everything and didn't find it,  
        // but we still need to return a value, so return 0.  

Voir aussi ROBOTPLAY :

Exemples de musique :—v32/experiment-11-using-a-piezo-buzzer

Références :—v32/experiment-11-using-a-piezo-buzzer


Votre commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:


Vous commentez à l’aide de votre compte Déconnexion /  Changer )

Image Twitter

Vous commentez à l’aide de votre compte Twitter. Déconnexion /  Changer )

Photo Facebook

Vous commentez à l’aide de votre compte Facebook. Déconnexion /  Changer )

Connexion à %s

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur la façon dont les données de vos commentaires sont traitées.

Articles récents
Commentaires récents
fatima dans Bienvenue !
AdminDroid dans Bienvenue !
fatima dans Bienvenue !
%d blogueurs aiment cette page :