Hi Leute,
ich bin neu hier und mein Eclipse spuckt mir sämtliche Fehler aus - ich
habe jetzt schon 2 Tage alles mögliche versucht, weiß aber echt nicht
mehr weiter.
Installiert habe ich das aktuelle Eclipse incl. CDT, das AVR Eclipse
Plugin und AVR CrossPack.
Als Programmer verwende ich einen USBasp und daran hängt ne Platine mit
nem ATmega8.
Über das Terminal bekomme ich auf
1
avrdude -c usbasp -p m8 -Pusb
als Antwort
1
avrdude: AVR device initialized and ready to accept instructions
avrdude: Expected signature for ATMEGA8 is 1E 93 07
7
Double check chip, or use -F to override this check.
8
9
avrdude done. Thank you.
Daraus schließe ich mal dass das Terminal über den Programmer korrekt
mit dem µC kommunizieren kann.
Allerdings gibts in Eclipse paar Probleme:
- Wenn ich in den Targeteinstellungen den µC-Typ auslesen lassen will
kommt die Meldung:
1
Programmer "usbasp" could not initialize the target hardware. Please check that the target hardware is connected correctly. Reason: avrdude: initialization failed, rc=-1
(Habe in er Konfiguration Release auf aktiv gestellt)
- Der Fehler
1
java.lang.NullPointerException
wird mir auch relativ oft angezeigt.
- Unter Problems erhalte ich immer die Warnung
(Die Datei ist vorhanden)
Hab ich vielleicht irgendwas vergessen einzustellen oder so?
Mir kommt es so vor als würden die 3 Programme nicht zusammen
funktionieren, die Pfade sind allerdings richtig
(/usr/local/CrossPack-AVR-20090415/bin).
Ich habe schon sämtliche Tutorials im Internet angeschaut, konnte aber
keinen Fehler finden.
Wäre euch echt dankbar wenn mir jemand helfen kann!
Als ich gerade versucht habe etwas Code zu schreiben ist mir noch
aufgefallen dass auch die Stadardheader wie z.B. avr/io.h nicht gefunden
werden...
Irgendwas passt da ganz und gar nicht.
Hallo,
ich arbeite vermutlich mit der gleichen Umgebung wie Du (OS X 10.6.2,
Eclipse Galileo CDT, AVR Eclipse Plugin 2.3.1, USBasp von U. Radig)
Zu Deinen Fehlern:
- "Programmer "usbasp" could not initialize the target hardware...."
Hast Du in Eclipse eine korrekte Programmer Configuration für AVRDude
erstellt? Bei mir funktionierte es auf Anhieb mit "USBasp". Das Auslesen
der Controllerparameter klappt damit ebenfalls.
- "Error launching external scanner info..." Diese Problemmeldung
bekomme ich auch, scheint aber belanglos zu sein. Zumindest laufen meine
Programme auf dem Controller. Allerdings wäre ich für einen Tipp, wie
man die Problemmeldung wegbekommt, auch dankbar.
- "avr/io.h nicht gefunden..." Hast Du den Pfad zu den Include-Dateien
richtig eingestellt? Das geht unter "Project Properties -> C/C++ General
->Paths and Symbols -> Includes: Dort den korrekten Pfad zu den
Include-Dateien einstellen.
Damit sollte alles klappen :-)
Falls Du noch Hilfe brauchst, melde Dich einfach!
Reicht es denn nicht die Include-Dateien global bei Preferences => Paths
=> AVR Header Files anzugeben?
Ist ja nervig dass man das für jedes Projekt immer wieder angeben
muss...
Ich hab jetzt den gleichen Pfad wie bei den AVR Header Files angegeben
(/usr/local/CrossPack-AVR-20090415/avr-3/include) und jetzt findet es
die Header - Danke!!!
Aber gibts da keine Möglichkeit dass man das global konfigurieren kann?
Allerdings bekomm ich beim Flashen immer noch den Fehler:
Programmer "usbasp" could not initialize the target hardware.
Reason:
avrdude: initialization failed, rc=-1
Die "Error launching external scanner info generator"-Meldungen konnte
ich von 3 auf eine reduzieren indem ich in den Project-Prefs unter c/c++
Build => Discovery Options die 2 Haken weggemacht hab.
weg, indem man in die Porject-Prefs geht, und dann unter C/C++ Build in
das Menü Discovery Options geht, den Haken "Automate Discovery of paths
and symbols" wegmacht und dann links daneben von "C Source Files" auf
"Unknown" wechselt und wieder den Haken "Automate Discovery of paths and
symbols" wegmacht - dann sind alle 3 Fehlermeldungen weg :D:D:D
Dank Deines Tipps bekomme ich die Warnungen jetzt auch weg, klasse!
Wenn ich den Pfad zu den Include-Dateien unter Preferences => Paths =>
Atmel Part Description Files eintragen möchte, kommt die Fehlermeldung
"Invalid path" in der Dialogbox....
Daher trage ich bis dato die Pfade immer pro Projekt ein. Das ist
lästig, aber ich habe im Moment keine bessere Idee...
Hallo zusammen,
ich sitze auch am selben Problem mit der Einbindung/Bekanntmachnung der
avr-libc-file.
So wie ich das hier sehe, liegen die betreffenden Dateien im
/usr/local/CrossPack.... usw. Der "/usr"-Ordner ist jedoch bei mir
standardmäßig nicht sichtbar, daher denk ich, dass der Fehler darin
liegt, dass der entsprechende Pfad in der allg. Einstellungen nicht
gefunden werden kann!
Man könnte ja den Ordner ja dauerhaft sichtbar setzen, ich jedoch denke,
dass es einen Grund hat, wieso dieser unsichtbar ist :) - daher wäre das
keine Lösung, sondern nur ein Umgehen des Problems.
Wenn jmd eine Idee diesbzgl. hat, nur raus damit, ist schon ärgerlich
jedes mal dem Projekt mitzuteilen, wo die Dateien sich befinden.
Schönes Wochenende weiterhin
kyrel
Der usr-Ordner heißt nicht "User" sondern "Unix System <irgendwas>", du
solltest lieber nicht an dem Ordner rumspielen... deswegen ist der auch
versteckt.
Hi,
die Probleme "Error launching external scanner info generator" und das
nicht-automatisch-erkennen der include Dateien hängen zusammen, den der
"external scanner info generator" startet den avr-gcc compiler mit ein
paar speziellen optionen um (unter anderem) die im Compiler fest
verdrahteten Pfade zu den Standard Includes (u.a. avr/io.h) zu
ermitteln.
Warum der Scanner unter MacOS nicht funktioniert weiß ich allerdings
auch nicht. Ich programmiere das Plugin unter Windows und teste es auch
mit Linux, habe aber keinen Zugang zu einem Mac um es dort auch zu
testen.
Eine Vermutung wäre, dass es möglicherweise ein Pfad Problem ist, d.h.
das avr-gcc nicht im normalen System Pfad ist. Das AVR Plugin sorgt zwar
dafür, dass der richtige Pfad zum avr-gcc für ein Build gesetzt wird,
aber evtl. nicht für den Scanner. Könnte mal jemand mit dem "Error
launching external scanner info generator" Problem ein Terminal
aufmachen, 'avr-gcc' eingeben und schauen was passiert?
BTW - der Pfad zu den "Atmel Part Description Files" wird derzeit vom
Plugin nicht verwendet und ignoriert. Der Pfad zu den "AVR Header Files"
wird vom Plugin nur für "AVR Device Explorer" View benutzt, nicht aber
für einen Build.
Thomas
Frank B. schrieb:
> Cool dass du uns helfen willst :)
Ich hoffe nur, das ich auch helfen kann :-)
>> Terminal spuckt aus:> avr-gcc: no input files
Das bedeutet, dass avr-gcc im System-Pfad liegt und es damit kein
Pfad-Problem ist.
OK, nächster Schritt: vielleicht erzeugt Eclipse zu dem Problem eine
interne Fehlermeldung. Dazu bräuchte ich mal ein Error-Log.
Der Zugriff darauf ist je nach Eclipse Version leicht unterschiedlich.
Bei 3.5 (Galileo) findet man es unter 'Help -> About Eclipse ->
Installation Details -> Configuration -> View Error Log'. Da das Log
meistens recht groß ist am besten mal als Datei anhängen.
Hi, trotz intensiven Studiums und des Error logs konnte ich den Fehler
nicht lokalisieren.
Allerdings hat ein anderer User eine Lösung gefunden:
https://sourceforge.net/projects/avr-eclipse/forums/forum/664382/topic/3309107
Mangels Mac kann ich es nicht ausprobieren, aber wenn die Lösung
funktioniert, dann ist es doch ein Pfad-Problem, bei dem eine APP nicht
den vollen System-Pfad (mit der avr-gcc toolchain) erbt.
Könnte das mal jemand ausprobieren/verifizieren?
Thomas
Hallo
Ich kann bestätigen, dass eclipse mit dem AVR plugin richtig
funktioniert, wenn NICHT mit dem aclipse.app gestartet wird.
Wieso das funktioniert kann ich allerdings im Detail auch nicht klären.
Jedoch habe ich avrdude und avrlibc mit macports installiert und
demzufolge liegen diese unter