mikrocontroller.net

Forum: Compiler & IDEs Fehlermeldung: dep/interrupt.h:1: *** missing separator.


Autor: Martin Vojtek (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Rolf Magnus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> 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?

Autor: Martin Vojtek (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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;

Autor: johnny.m (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wo ist das #endif?

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.