WTV020 Sketch läuft nicht

habe heut mal versucht das leidige Thema wtv020 in angriff zu nehmen.
also lib hinzugefügt
code aus Internet

/*
Example: Control a WTV020-SD-16P module to play voices from an Arduino board.
Created by Diego J. Arevalo, August 6th, 2012.
Released into the public domain.
*/

#include <Wtv020sd16p.h>

int resetPin = 2;  // The pin number of the reset pin.
int clockPin = 3;  // The pin number of the clock pin.
int dataPin = 4;  // The pin number of the data pin.
int busyPin = 5;  // The pin number of the busy pin.

/*
Create an instance of the Wtv020sd16p class.
1st parameter: Reset pin number.
2nd parameter: Clock pin number.
3rd parameter: Data pin number.
4th parameter: Busy pin number.
*/
Wtv020sd16p wtv020sd16p(resetPin,clockPin,dataPin,busyPin);

void setup() {
 //Initializes the module.
 wtv020sd16p.reset();
}

void loop() {
 //Plays synchronously an audio file. Busy pin is used for this method.
 wtv020sd16p.playVoice(0);
 //Plays asynchronously an audio file.
 wtv020sd16p.asyncPlayVoice(1);
 //Plays audio file number 1 during 2 seconds.
 delay(5000);
 //Pauses audio file number 1 during 2 seconds.  
 wtv020sd16p.pauseVoice();
 delay(5000);
 //Resumes audio file number 1 during 2 seconds.
 wtv020sd16p.pauseVoice();
 delay(5000);  
 //Stops current audio file playing.
 wtv020sd16p.stopVoice();
 //Plays synchronously an audio file. Busy pin is used for this method.  
 wtv020sd16p.asyncPlayVoice(2);
 delay(2000);  
 //Mutes audio file number 2 during 2 seconds.
 wtv020sd16p.mute();
 delay(2000);
 //Unmutes audio file number 2 during 2 seconds.
 wtv020sd16p.unmute();
 delay(2000);    
 //Stops current audio file playing.
 wtv020sd16p.stopVoice();
}

und Fehler

C:\Program Files\Arduino\libraries\sketch_apr06a\sketch_apr06a.ino:7:25: fatal error: Wtv020sd16p.h: No such file or directory

 #include <Wtv020sd16p.h>

                         ^

compilation terminated.

exit status 1
Fehler beim Kompilieren für das Board Arduino/Genuino Uno.
Ungültige Bibliothek C:\Program Files\Arduino\libraries\libraries in C:\Program Files\Arduino\libraries\libraries gefunden
Ungültige Bibliothek C:\Program Files\Arduino\libraries\MCP4725_DAC in C:\Program Files\Arduino\libraries\MCP4725_DAC gefunden
Ungültige Bibliothek C:\Program Files\Arduino\libraries\Scanner_I2C in C:\Program Files\Arduino\libraries\Scanner_I2C gefunden
Ungültige Bibliothek C:\Program Files\Arduino\libraries\sketch_apr06a in C:\Program Files\Arduino\libraries\sketch_apr06a gefunden
Ungültige Bibliothek C:\Program Files\Arduino\libraries\sketch_apr06b in C:\Program Files\Arduino\libraries\sketch_apr06b gefunden
Ungültige Bibliothek C:\Program Files\Arduino\libraries\Steuereinheit_01 in C:\Program Files\Arduino\libraries\Steuereinheit_01 gefunden
Ungültige Bibliothek C:\Program Files\Arduino\libraries\TFT_IL9163C_simple in C:\Program Files\Arduino\libraries\TFT_IL9163C_simple gefunden
Ungültige Bibliothek C:\Program Files\Arduino\libraries\libraries in C:\Program Files\Arduino\libraries\libraries gefunden
Ungültige Bibliothek C:\Program Files\Arduino\libraries\MCP4725_DAC in C:\Program Files\Arduino\libraries\MCP4725_DAC gefunden
Ungültige Bibliothek C:\Program Files\Arduino\libraries\Scanner_I2C in C:\Program Files\Arduino\libraries\Scanner_I2C gefunden
Ungültige Bibliothek C:\Program Files\Arduino\libraries\sketch_apr06a in C:\Program Files\Arduino\libraries\sketch_apr06a gefunden
Ungültige Bibliothek C:\Program Files\Arduino\libraries\sketch_apr06b in C:\Program Files\Arduino\libraries\sketch_apr06b gefunden
Ungültige Bibliothek C:\Program Files\Arduino\libraries\Steuereinheit_01 in C:\Program Files\Arduino\libraries\Steuereinheit_01 gefunden
Ungültige Bibliothek C:\Program Files\Arduino\libraries\TFT_IL9163C_simple in C:\Program Files\Arduino\libraries\TFT_IL9163C_simple gefunden

kann mir jemand auf anhieb sagen was nun schon wieder falsch ist

habe hier noch ein Bild

Du hast vermutlich die Library falsch installiert.

eigendlich wie immer:
download bei Github
dann Sketch/Bibliothek einbinden/.Zip Bibliothek hinzufügen...

wenn ich den include so Scheibe:
#include <WTV020SD16P.h>
hängt er sich bei dieser Zeile
WTV020SD16P(ResetPIN, clockPin, dataPin, busyPin);
mit folgender Fehlermeldung auf:

sketch_apr06a:9: error: expected ')' before ',' token

 WTV020SD16P(ResetPIN, clockPin, dataPin, busyPin);

                     ^

sketch_apr06a:9: error: conflicting declaration 'WTV020SD16P clockPin'

 WTV020SD16P(ResetPIN, clockPin, dataPin, busyPin);

                       ^

C:\Program Files\Arduino\libraries\sketch_apr06a\sketch_apr06a.ino:4:12: note: previous declaration as 'const int clockPin'

  const int clockPin= 3;

            ^

sketch_apr06a:9: error: conflicting declaration 'WTV020SD16P dataPin'

 WTV020SD16P(ResetPIN, clockPin, dataPin, busyPin);

                                 ^

C:\Program Files\Arduino\libraries\sketch_apr06a\sketch_apr06a.ino:5:12: note: previous declaration as 'const int dataPin'

  const int dataPin= 4;

            ^

sketch_apr06a:9: error: expected initializer before ')' token

 WTV020SD16P(ResetPIN, clockPin, dataPin, busyPin);

                                                 ^

C:\Program Files\Arduino\libraries\sketch_apr06a\sketch_apr06a.ino: In function 'void setup()':

sketch_apr06a:13: error: expected unqualified-id before '.' token

 WTV020SD16P.reset ();

            ^

sketch_apr06a:15: error: expected unqualified-id before '.' token

 WTV020SD16P.playVoice(1);

            ^

exit status 1
expected ')' before ',' token

Gundelputz:
eigendlich wie immer:
download bei Github
dann Sketch/Bibliothek einbinden/.Zip Bibliothek hinzufügen...

Dann solltest du die Library mal manuell hinzufügen und die jetzige löschen.

Da du den Beispielsketch verwendest, kann ich dir sagen, dieser wird fehlerfrei (auf meinem System) kompiliert.

bin jetzt über die ersten Hürden gestiegen(bild ich mir jedenfalls ein).
Sketch sieht wie folgt aus:

#include <WTV020SD16P.h>

int resetPin = 2;  // The pin number of the reset pin.
int clockPin = 3;  // The pin number of the clock pin.
int dataPin = 4;  // The pin number of the data pin.
int busyPin = 5;  // The pin number of the busy pin.

int sound_1 = 0001;

WTV020SD16P WTV020SD16P(int resetPin,int clockPin,int dataPin,int busyPin);

void setup() {
WTV020SD16P.setVolume(7);
}

void loop() {
// WTV020SD16P.playVoice(sound_1);
}

jetzt kommt folgende Fehlermeldung:
C:\Program Files\Arduino\libraries\sketch_apr06a\sketch_apr06a.ino: In function 'void setup()':

sketch_apr06a:13: error: request for member 'setVolume' in 'WTV020SD16P', which is of non-class type WTV020SD16P(int, int, int, int)'

WTV020SD16P.setVolume(7);

exit status 1
request for member 'setVolume' in 'WTV020SD16P', which is of non-class type 'WTV020SD16P(int, int, int, int)'

was will mir die IDE damit sagen?

Es ist nicht gut, die Variable genau so zu schreiben, wie die Klasse.
Mach z.B. das W zu w.

Gruß Tommy

Gundelputz:
was will mir die IDE damit sagen?

das du vermutlich deine "Schreibweise" überprüfen solltest.

Warum verwendest du nicht das "original Beispiel" und baust darauf auf ?

Edit:

Und woher hast du die Anweisung: "WTV020SD16P.setVolume(7);" ?
Gibt es die in der Library ?

beim Original wird #include <Wtv020sd16p.h> verwendet
dies mahnt die IDE sofort an
beim einbinden des Sketches schreibt sie dann aber #include <WTV020SD16P.h>
also habe ich das ganze umgestrickt

in der WTV020SD16P.h steht dann folgendes:

 */

#ifndef WTV020SD16P_h
#define WTV020SD16P_h

class WTV020SD16P
{
public:
  WTV020SD16P(int clockPin,int dataPin,int busyPin);
  
  void playVoice(unsigned int voiceNumber);
  void asyncPlayVoice(unsigned int voiceNumber);
  void stopVoice();
  void pauseVoice();
  void mute();
  void unmute();
  void setVolume(unsigned int volume);

private:
  void sendCommand(unsigned int command);
  void delayMicros(unsigned long delayMicros);
  
  int _clockPin;
  int _dataPin;
  int _busyPin;
  int _busyPinState;
  unsigned int _currentVolume;
  unsigned long _lastMicros;
};

#endif

und in der Keywortdatei dieses:

#######################################
# Syntax Coloring Map For Wtv020sd16p
#######################################

#######################################
# Datatypes (KEYWORD1)
#######################################
WTV020SD16P	KEYWORD1

#######################################
# Methods and Functions (KEYWORD2)
#######################################

playVoice	KEYWORD2
asyncPlayVoice	KEYWORD2
stopVoice	KEYWORD2
pauseVoice	KEYWORD2
mute	KEYWORD2
unmute	KEYWORD2
setVolume	KEYWORD2

es gibt also zum Beispiel kein .reset

Ok, dann verwendest du eine andere Library.
da muss ich passen.

kannst du mir einen Link für deine Lib geben?

Gundelputz:
kannst du mir einen Link für deine Lib geben?

Den Link habe ich aktuell nicht.

Ändere deinen Sketch wie unten, dann kompiliert er.
Jedenfalls jetzt bei mir mit der neuen Lib.

#include <WTV020SD16P.h>

int clockPin = 3;  // The pin number of the clock pin.
int dataPin = 4;  // The pin number of the data pin.
int busyPin = 5;  // The pin number of the busy pin.

/*
Create an instance of the Wtv020sd16p class.
 1nd parameter: Clock pin number.
 2rd parameter: Data pin number.
 3th parameter: Busy pin number.
 */
 
WTV020SD16P wtv020sd16p(clockPin,dataPin,busyPin);

void setup() 
{
  wtv020sd16p.setVolume(7);
}

spitze jetzt läuft er durch.
zwar noch ohne irgend einen mux von sich zu geben aber er läuft durch.

#include <WTV020SD16P.h>

int clockPin = 3;  // The pin number of the clock pin.
int dataPin = 4;  // The pin number of the data pin.
int busyPin = 5;  // The pin number of the busy pin.

/*
Create an instance of the Wtv020sd16p class.
 1nd parameter: Clock pin number.
 2rd parameter: Data pin number.
 3th parameter: Busy pin number.
 */
 
WTV020SD16P wtv020sd16p(clockPin,dataPin,busyPin);

void setup()
{
  wtv020sd16p.unmute();
  wtv020sd16p.setVolume(7);
}
void loop()
{
  wtv020sd16p.playVoice("0001.ad4");
  delay(2000);
}

[code]

Prima.

Der Rest ist noch feintuning.

er brummt schon mal
melde mich dann noch mal wenn ich nicht weiter komme
Vielen Dank an euch

Gundelputz:
er brummt schon mal
melde mich dann noch mal wenn ich nicht weiter komme
Vielen Dank an euch

OK, ist zwar nicht toll, aber ein Anfang.

Viel Erfolg

Edit:
was mich jetzt aber doch wundert, im letzten Jahr bist du doch auf den DFPlayer umgestiegen.
Warum jetzt wieder dieses "billig-Teil" ?