Go Down

Topic: tone() function on sanguino (Read 1 time) previous topic - next topic

Ardukopter

Hello,

I'm not sure, if this topic fits in here. Maybe anybody can help me.
I was trieing to generate melodies with the tone() function. This was no problem with a duemilanove. On a Sanguino board the tone() function is not declared. See Code and error messages below. Can anybody find a reason?
thanks a lot!
obert

Code (from arduino.cc):
int melody[] = {
 NOTE_C4, NOTE_G3,NOTE_G3, NOTE_A3, NOTE_G3,0, NOTE_B3, NOTE_C4};

// note durations: 4 = quarter note, 8 = eighth note, etc.:
int noteDurations[] = {
 4, 8, 8, 4,4,4,4,4 };

void setup() {
 // iterate over the notes of the melody:
 for (int thisNote = 0; thisNote < 8; thisNote++) {

   // to calculate the note duration, take one second
   // divided by the note type.
   //e.g. quarter note = 1000 / 4, eighth note = 1000/8, etc.
   int noteDuration = 1000/noteDurations[thisNote];
   tone(8, melody[thisNote],noteDuration);

   // to distinguish the notes, set a minimum time between them.
   // the note's duration + 30% seems to work well:
   int pauseBetweenNotes = noteDuration * 1.30;
   delay(pauseBetweenNotes);
   // stop the tone playing:
   noTone(8);
 }
}

void loop() {
 // no need to repeat the melody.
}

Error:
tone_nur_duemilanove_.cpp: In function 'void setup()':
tone_nur_duemilanove_:122: error: 'tone' was not declared in this scope
tone_nur_duemilanove_:129: error: 'noTone' was not declared in this scope

Senso

What is your Arduino IDE version?
Have you put this in the first line of your sketch outsid of any function?
#include "pitches.h"

Ardukopter

Hello,
I have tried it in version 0018 and 0022.
Yes, I have pitches.h included. As I wrote before, same code worked on the duemilanove but not on the sanguino.

Senso

So, it compiles if you select duemilanove but not sanguino?

Go Up
 


Please enter a valid email to subscribe

Confirm your email address

We need to confirm your email address.
To complete the subscription, please click the link in the email we just sent you.

Thank you for subscribing!

Arduino
via Egeo 16
Torino, 10131
Italy