Check mal, ob "Max3421e_constants.h" der Arduino IDE bekannt ist.
Sonst:
1. Sketch->Library importieren->Add Library
2. #include "Max3421e_constants.h" in #include <Max3421e_constants.h> umwandeln
Hallo nettes Forum
Ich habe eine Librarie aus dem Netz gezogen und jetzt bekomme ich immer den netten Fehler: expected class-name before '{' token.
Code:#ifndef MAX3421E_h #define MAX3421E_h #include <SPI.h> //#include <Arduino.h> #include "Arduino.h" #include "Max3421e_constants.h" class MAX3421E : public SPI { <--- In der Zeile ist der Fehler //byte vbusState public: MAX3421E( void ); byte getVbusState( void ); void toggle( byte pin ); static void regWr( byte, byte ); char * bytesWr( byte, byte, char * ); static void gpioWr( byte ); byte regRd( byte ); char * bytesRd( byte, byte, char * ); byte gpioRd( void ); boolean reset(); boolean vbusPwr ( boolean ); void busprobe( void ); void powerOn(); byte IntHandler(); byte GpxHandler(); byte Task(); private: void init(); friend class Max_LCD; }; #endif //_MAX3421E_H_
Nun ich weiß nicht weiter. Vielleicht übersehe ich auch nur ein Punkt oder so.
Mit freundlichem Gruss
BEADG
Check mal, ob "Max3421e_constants.h" der Arduino IDE bekannt ist.
Sonst:
1. Sketch->Library importieren->Add Library
2. #include "Max3421e_constants.h" in #include <Max3421e_constants.h> umwandeln
Ich habe beide Punkte ausprobiert. Ich habe auch: #include "Max3421e_constants.h" rausgenommen und probiert. Er sagt immer den gleichen Fehler:/
Hast du's mal versucht ohne ': public SPI'?
Ja habe ich. Dann ist der Fehler weg, aber dann bekomme ich zwei neue Fehler. Einmal undefined reference to `setup' und undefined reference to `loop'.
Der setup-Fehler ist in der Zeile mit MAX3421E( void ); und der loop-Fehler static void regWr( byte, byte );.
Ka was jetzt. :/
Der Fehler muss an dem SPI liegen, dass ist nicht bekannt. Check das mal.
mfg
Hallo,
die Klasse MAX3421E leitet von der Klasse SPI ab. Das ist Code technisch an dieser Stelle auch richtig so umgesetzt. (Siehe hierzu auch https://de.wikibooks.org/wiki/C++-Pr...ung:_Vererbung)
Der Fehler kann auftreten, wenn der Compiler die Klasse SPI nicht findet. (Leider sind die GCC Fehlermeldungen oftmals nicht sehr aussagekräftigt)
Deswegen überprüfe zuerst die Includes (Also ob #include<SPI> tatsächlich existiert)
Ansonsten kann man den Fehler auch produzieren wenn man ungeschickt im "Ring" includet. Also man eine Datei "b.h" hat die z.B. "a.h" includet und "a.h" wiederum "b.h" includet.
In manchen Fällen kann man das Lösen in dem man ein (in deinem Fall) : class SPI; vor die includes schreibt.
Lesezeichen