Hallo zusammen,
ich wollte mich mal mit den AVRs beschäftigen weil ich überall gehört
hab das es da viel bessere Entwicklungsmöglichkeiten gäbe als für die
von mir bis her genutzten PIC-Controller. Außerdem höre ich and er Uni
gerade eine Veranstaltung "Systeme mit Contollern" in der wir uns im 2.
Teil mit AVRs beschältigen.
Also hab ich mir einen kleinen Programmer gebaut (einen abgespeckten
siprog) und das AVR-Tutorial angefangen durchzuarbeiten. Dazu hab ich
auf meinem Ubuntu Linux 7.10 erst mal folgende Software installiert:
1 | $ apt-show-versions | grep avr
|
2 | avrdude/gutsy uptodate 5.4-1
|
3 | gdb-avr/gutsy uptodate 6.4.90.dfsg-1
|
4 | gcc-avr/gutsy uptodate 1:4.2.1-1
|
5 | avra/gutsy uptodate 1.2.1-1
|
6 | avr-libc/gutsy uptodate 1:1.4.5-2
|
7 | binutils-avr/gutsy uptodate 2.17
|
8 | avrdude-doc/gutsy uptodate 5.4-1
|
9 | simulavr/gutsy uptodate 0.1.2.2-5
|
Gescheitert bin ich dann am ersten Beispiel:
Da ich keine vernünftige IDE für Linux gefunden habe, hab ich mich
zunächst mal auf die Konsole zurückgezogen. Das sollte ja auf jeden Fall
erst mal gehen. Beispielcode kopiert und versucht zu kompilieren:
(die Ausgabe mit avra sieht ähnlich aus)
1 | $ avr-as -mmcu=atmega8 test.asm
|
2 | test.asm: Assembler messages:
|
3 | test.asm:1: Can't open m8def.inc for reading: No such file or directory
|
4 | test.asm:4: Error: constant value required
|
5 | test.asm:7: Error: constant value required
|
ok, ich hatte nicht erwartet das das mit dem Include funktioniert. Also
habe ich mein gesamtes System nach diesen Includes abgesucht, ohne
Erfolg. Woher die kommen sollen ist im Tutorial für Linux auch nicht
erklärt. Sicher ist das in einem der AVR-Tools drin, aber wie bekomme
ich das da raus? (setup.exe will mein Linux weder ausführen noch
entpacken ;-).
--> Also ab zum AVR-GCC-Tutorial, vielleicht hat man da ja mehr Glück.
Programme waren ja schon installiert, also auf zum ersten Beispiel.
Programmcode nach main.c kopiert, Beispiel Makefile 1 nach Makefile
kopiert (der Inhalt schien mir zunächst mal OK) und "make all"
eingegeben.
1 | $ make all
|
2 |
|
3 | -------- begin --------
|
4 | avr-gcc (GCC) 4.2.1
|
5 | Copyright (C) 2007 Free Software Foundation, Inc.
|
6 | This is free software; see the source for copying conditions. There is NO
|
7 | warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
8 |
|
9 | make: *** Keine Regel vorhanden, um das Target »main.elf«,
|
10 | benötigt von »elf«, zu erstellen. Schluss.
|
Ja was sagt man da? Bin ich einfach zu blöd, sind die AVRs den
Windows-Usern vorhebalten oder was mach ich falsch?
Danke für eure Hilfe,
Gruß
Lukas