tone error with Software Version arduino-1.5.1r2 (Drduino Due)

I'm trying to compine toneMelody.ino (comes with the standard softare download as an example).

I get the following errors:

"toneMelody.ino: In function 'void setup()':
toneMelody:36: error: 'tone' was not declared in this scope
toneMelody:43: error: 'noTone' was not declared in this scope"

Any thoughts on how to fix this is appreciated.

The code is below:

/*
  Melody
 
 Plays a melody 
 
 circuit:
 * 8-ohm speaker on digital pin 8
 
 created 21 Jan 2010
 modified 30 Aug 2011
 by Tom Igoe 

This example code is in the public domain.
 
 http://arduino.cc/en/Tutorial/Tone
 
 */
 #include "pitches.h"

// notes in the melody:
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.
}

Moderator edit:
</mark> <mark>[code]</mark> <mark>

</mark> <mark>[/code]</mark> <mark>
tags added.

Where are you including the Tone header file?

I'm new to this, but I would think that the tone function would be part of the core library.

I added the following at the top of the file:

#include "tone.h"

I have also included "#include "tone.cpp", but that did not work at all.

I have copied the "tone.cpp" file everywhere I can think of.

I'm new to this, but I would think that the tone function would be part of the core library.

It is, but you still have to include the header file for the library.

I added the following at the top of the file:

#include "tone.h"

I have also included "#include "tone.cpp", but that did not work at all.

I have copied the "tone.cpp" file everywhere I can think of.

Now that you have f**ked up your installation of 1.5.1r2, you get to delete it and reinstall.

Quit moving tone.cpp around. Core library files are included using

#include <tone.h>

I tried reinstalling the software and running it (with and without the callout to tone).

If I change the board to the the Arduino Uno the program compiles fine.

I looked at the Tone.cpp using a text editor. I just started to try to understand it. It has if statements for (AVR_ATmega8) or for (AVR_ATmega1280)

not for the Atmel SAM3X8E ARM Cortex-M3 CPU.

I'm thinking code needs to be added to Tone.cpp so that it will work with the Arduino Due.

I'm thinking code needs to be added to Tone.cpp so that it will work with the Arduino Due.

That may well be the case, though adding it to Tone.h seems more likely. I don't see how moving Tone.cpp is going to have any affect on how it works, though.