Tone Library will nicht..

Hallo,

hab mir hier die Tone Library geladen:

http://code.google.com/p/rogue-code/wiki/ToneLibraryDocumentation

Wenn ich nun dieses einfache Beispiel ausführen möchte…

#include <Tone.h>

Tone tone1;

void setup()
{
  tone1.begin(8);
  tone1.play(NOTE_A4);
}

void loop()
{
}

…kommen diese Fehlermeldungen:

/Users/bla/Documents/Arduino/Sketchordner/libraries/Tone/Tone.cpp: In member function ‘void Tone::begin(uint8_t)’:
/Users/bla/Documents/Arduino/Sketchordner/libraries/Tone/Tone.cpp:121: error: ‘bitWrite’ was not declared in this scope
/Users/bla/Documents/Arduino/Sketchordner/libraries/Tone/Tone.cpp:123: error: ‘digitalPinToPort’ was not declared in this scope
/Users/bla/Documents/Arduino/Sketchordner/libraries/Tone/Tone.cpp:123: error: ‘portOutputRegister’ was not declared in this scope
/Users/bla/Documents/Arduino/Sketchordner/libraries/Tone/Tone.cpp:124: error: ‘digitalPinToBitMask’ was not declared in this scope
/Users/bla/Documents/Arduino/Sketchordner/libraries/Tone/Tone.cpp: In member function ‘void Tone::play(uint16_t, uint32_t)’:
/Users/bla/Documents/Arduino/Sketchordner/libraries/Tone/Tone.cpp:198: error: ‘OUTPUT’ was not declared in this scope
/Users/bla/Documents/Arduino/Sketchordner/libraries/Tone/Tone.cpp:198: error: ‘pinMode’ was not declared in this scope
/Users/bla/Documents/Arduino/Sketchordner/libraries/Tone/Tone.cpp:294: error: ‘bitWrite’ was not declared in this scope
/Users/bla/Documents/Arduino/Sketchordner/libraries/Tone/Tone.cpp: In member function ‘void Tone::stop()’:
/Users/bla/Documents/Arduino/Sketchordner/libraries/Tone/Tone.cpp:361: error: ‘digitalWrite’ was not declared in this scope

Kann mir jmd. erklären, was mir das sagen soll?

Danke.

Gruß Chris

Tone.cpp: In member function 'void Tone::begin(uint8_t)': /Users/bla/Documents/Arduino/Sketchordner/libraries/Tone/Tone.cpp:121: error: 'bitWrite' was not declared in this scope

Entweder die library ist nicht an der richtigen Stelle ( siehst du sie bei der Funktion Sketch -- Import Library ? ) Oder sie braucht blöderweise vorher andere #include Anweisungen. Das sollte dann aber dort wo du sie her hast, beschrieben sein.

Bei mir sind libraries nicht im users Pfad unter Sketchordner, sondern da wo das Programm selbst installiert ist.

C:\Program Files (x86)\arduino-1.0\libraries\...

michael_x: siehst du sie bei der Funktion Sketch -- Import Library ?

Oder sie braucht blöderweise vorher andere #include Anweisungen. Das sollte dann aber dort wo du sie her hast, beschrieben sein.

Bei mir sind libraries nicht im users Pfad unter Sketchordner, sondern da wo das Programm selbst installiert ist.

C:\Program Files (x86)\arduino-1.0\libraries\...
  1. Ja.
  2. Das mit den #include Anweisungen ist mir gänzlich neu und sagt mir nix, ich werde mich aber entspr. belesen.
  3. Ok.

Gruß Chris

Falls es Wayne interessiert:

Ich musste per Texteditor innerhalb der Tone.cpp-Datei “”<wiring.h>" durch “<Arduino.h>” ersetzen.

Warum?

Keine Ahnung.

Jetzt gehts jedenfalls.

Gruß Chris

Chris72622:
Ich musste per Texteditor innerhalb der Tone.cpp-Datei “”<wiring.h>" durch “<Arduino.h>” ersetzen.

Warum?

Weil die Library für eine ältere Arduino Umgebung geschrieben wurde und sich mit Version 1.0 einige Namen geändert haben.

Hallo zusammen,

ich hab ds mit der Änderung wiring --> Arduino probiert, aber mit meinem DUE funktioniert die Library immer noch nicht. Kann mir BITTE jemand ganz Dringend helfen?

DANKE =)

Der Due ist eine ganz andere Geschichte. Wenn der Due in den supported Devices nicht aufgeführt ist, wird es nur schwer machbar sein, den mit der Libary am laufen zu bekommen

MIt dem DUE wird die Lib nicht funktionieren. Sie ist für die 8-Bit Atmegas (atmega8 (also auch 168 und 328) und 1280) geschrieben. Da direkt die HW-Timer verwendet werden, geht das auf dem Due auf keinen Fall.

Für den Due gibt es doch eine Audio-Lib, warum verwendest Du nicht die?

Mario.