Hallo, ich habe in einem Sketch-Dateiordner einen Unterordner angelegt. 1) Warum muss ich den geasmten Pfad angeben um die Headerdatei zu includieren, also: #include <C:\Users\seppel\Documents\Arduino\My_WaveGen\pwm_mod\pwm_mod.h> 2) Ich habe in der Headerdatei eine Funktion, die er aber nicht finden kann: Header: void mod_pwm(void); Source: void mod_pwm(void){ //blabla} INO: mod_pwm(); // 7,8 Khz fuer Pin 5 und 5 Output: My_WaveGen.cpp.o: In function `setup': C:\software\install\arduino-1.6.5-r5/My_WaveGen.ino:30: undefined reference to `mod_pwm()' collect2.exe: error: ld returned 1 exit status Fehler beim Kompilieren. Kann mir jemand sagen woran es liegt, ich komme nicht drauf. Vielen Dank, Grüße Seppel
Seppel schrieb: > Kann mir jemand sagen woran es liegt, ich komme nicht drauf. es liegt nicht an der Headerdatei, das ist ein Fehler vom Linker. Du scheinst die .C Datei wo die Funktion vorhanden ist nicht mit zu bauen.
Seppel schrieb: > #include > <C:\Users\seppel\Documents\Arduino\My_WaveGen\pwm_mod\pwm_mod.h>
1 | #include "pwm_mod/pwm_mod.h" |
sollte reichen. Für 'eigene' Header-Dateien besser "..." benutzen; <...> ist für System-includes. Wie aber Peter II schon sagte: der Fehler kommt vom Linker, nicht vom Compiler.
Seppel schrieb: > 1) Warum muss ich den geasmten Pfad angeben um die Headerdatei zu > includieren, Vielleicht liest Du mal die Anleitung(en) zur Arduino-IDE, wie man zusätzliche .h-Dateien ablegt?
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.