Forum: Compiler & IDEs Fehler beim Compilieren (ADC aus Tutorial)


von Sandra Schaefer (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,
ich versuche gerade den Cuellcode aus dem GCC tutorial zum Thema ADC zum 
laufen zu bekommen.

Leider kommt folgender Fehler:
../adctest.c:5: error: expected '=', ',', ';', 'asm' or '__attribute__' 
before '{' token

Ich kann den Fehler nicht finden.

Den Quellcode hab ich mal angehängt...

Würde mich über Hilfe sehr freuen...

Danke!

von Stefan E. (sternst)


Lesenswert?

In ReadChannel.h fehlt ein Semikolon.

von Sandra Schaefer (Gast)


Lesenswert?

> uint16_t ReadChannel(uint8_t mux);

macht es aber nicht besser :(

von Johannes M. (johnny-m)


Lesenswert?

Um die Typen wie uint16_t usw. aus der stdint.h benutzen zu können, muss 
die auch eingebunden werden...

Abgesehen davon: Es ist vermutlich nicht sehr sinnvoll, wenn ReadChannel 
nur ein einziges Mal ausgeführt wird und das Programm dann ins Nirvana 
geht. main() wird von keiner höheren Instanz aufgerufen, deshalb kann 
main auch nirgendwohin einen Wert zurückgeben. Wenn das "return 0;" 
erreicht wird, gibt's nen Warmstart. Es ist sinnvoller (und bei 
µC-Systemen ohne Betriebssystem auch üblich), das Programm in einer 
Endlosschleife laufen zu lassen.

von Stefan E. (sternst)


Lesenswert?

Johannes M. wrote:

> Wenn das "return 0;"
> erreicht wird, gibt's nen Warmstart.

Nein. Nach main wird _exit aufgerufen, und die AVR-Libc 
Default-Implementierung dieser Funktion enthält ein cli und eine 
Endlosschleife, hält den µC also quasi an.

von Johannes M. (johnny-m)


Lesenswert?

Stefan Ernst wrote:
> Nein. Nach main wird _exit aufgerufen, und die AVR-Libc
> Default-Implementierung dieser Funktion enthält ein cli und eine
> Endlosschleife, hält den µC also quasi an.
Stimmt natürlich. Ist aber nicht weniger sinnlos...

von Sandra Schaefer (Gast)


Lesenswert?

Danke,nun Funktionierts. :)

Es war mir zum testen egal was der uPC danach macht. Hauptsache die 
Compilerfehler sind mal wech :)

Schönes Wochenende :)

Sandra

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
Noch kein Account? Hier anmelden.