Forum: Compiler & IDEs Einstig in WinAVR


von Olaf P. (bronko)


Angehängte Dateien:

Lesenswert?

Hi

Ich bin recht neu im Umgang mit MC. Ich habe ein kleines Board mit
Mega8 chip, welches ich bis jetzt mit BasCom programiert habe.
(lauflicht, Tastendruckzähler, Frequenzermitteln).

Nun wollte ich WinAVR ausprobieren, um auch mal einige Programme in C
schreiben zu können. ich habe mich dabei an die Anleitung hier(AVR-GCC
tut) und bei kreatives-chaos gehalten.

-Also Winavr installiert
-einen Ortner für das Programm erstellt ( "LCD")
-mit MFile die Makefile Datei (s. Anhang) erstellt und im verzeichniss
LCD gespeicher.
-Das Notepad von WinAVR gesartet und eine einfache ausgabe geschrieben
-die Datei im verzeichniss LCD gespeichert und lcd.o genannt
-unter Tools Make all gestartet

ich erhalte dann folgende Fehlermeldung:
Linking: lcd.elf
avr-gcc -mmcu=atmega8 -I. -gdwarf-2 -DF_CPU=8000000UL  -Os
-funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall
-Wstrict-prototypes -Wa,-adhlns=lcd.o  -std=gnu99 -MD -MP -MF
.dep/lcd.elf.d lcd.o --output lcd.elf -Wl,-Map=lcd.map,--cref    -lm
lcd.o: file not recognized: File format not recognized
make.exe: *** [lcd.elf] Error 1

kann mir jemand helfen was ich falsch mache?
Vielen Dank schonmal

von Thomas (Gast)


Lesenswert?

Deine Datei muss lcd.c heißen, dann klappts auch mit dem kompilieren.
Dateien mit *.c Endung sind Quellcode-Dateien, die mit *.o sind
Objektdateien.
Ein entsprechender Blick ins Makefile zeigt auch nochmal, welche
Dateien kompiliert werden:

# Target file name (without extension).
TARGET = lcd

# List C source files here. (C dependencies are automatically
generated.)
SRC = $(TARGET).c

von Olaf P. (bronko)


Lesenswert?

cool funktionert  :-)

und wenn ich das auch gleich in den MC schreiben möchte welchen
Programmer muss ich dann auswählen.

Ich  programiere über den Druckeranschluss und den ISP anschlüßen am
MC. Der Programmieradapter sieh so wie hier
http://rumil.de/hardware/pics/avrisp10-sch.png
 auf dem Bild aus nur mit einem 74LS255

von Olaf P. (bronko)


Lesenswert?

avrdude -p atmega8 -P lpt1 -c avrisp    -U flash:w:lcd.hex
avrdude: serial_open(): can't set buffers for "lpt1"
make.exe: *** [program] Error 1

von Μαtthias W. (matthias) Benutzerseite


Lesenswert?

Hi

das ist kein avrisp. Nim mal stk200 als Programmer.

Matthias

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.