Hallo, ich hab diese Frage auch schon in dem uC-Forum gepostet, bis ich dahinter gekommen bin, dass es hier vielleicht besser aufgehoben ist. Ich habe gerade versucht zum ersten mal eine C-Datei mit WinAVR zu compilieren und bekomme folgende Fehlermeldung: dep/interrupt.h:1: *** missing separator. Stop. Kann jemand damit etwas anfangen? Gruß Martin
> Kann jemand damit etwas anfangen?
Naja, es fehlt wohl ein Trennungszeichen. Was steht denn in Zeile 1 von
dep/interrupt.h und in der Datei, in der diese eingebunden ist?
die ersten Zeilen der interrupt.h: #ifndef AVR_INTERRUPT_H #define AVR_INTERRUPT_H #include <avr/io.h> und die ganze Datei, aus der interrupt.h aufgerufen wird: #include <io.h> #include <interrupt.h> #include <signal.h> #define XTAL 16e6 #define BAUD 57600 typedef unsigned char u8; typedef signed char s8; typedef unsigned short u16; typedef signed short s16; typedef unsigned long u32; typedef signed long s32;
Die Fehlermeldung ist aber vom make generiert. Klingt so, als hätte jemand versucht, dep/interrupt.h ins Makefile zu includen. Das kann nicht gut gehen. ;-) Weitere Kommentare: > #define _AVR_INTERRUPT_H_ Bitte keine Namen mit führenden Unterstrichen benutzen, die sind für Compiler und Bibliothek reserviert. > #include <io.h> (usw.) Bleib besser bei der Konvention, diese Dateien <avr/io.h> (usw.) zu nennen. > #define XTAL 16e6 Der Name dafür, den die meisten Leute bevorzugen, heißt F_CPU, daher haben wir den auch für die Verzögerungsfunktionen aus <util/delay.h> in der Bibliothek übernommen. > typedef unsigned char u8; Gewöhn' dich besser daran, die von C99 über <stdint.h> standardisierten Namen zu benutzen: uint8_t usw.
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.