mikrocontroller.net

Forum: Compiler & IDEs Standardpfad in avrdude


Autor: Fragender (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich versuche gerade, mit avrdude einen mega8 zu flashen... hab das schon 
eine Weile nicht mehr gemacht. Wie ist denn der Standardpfad von dem aus 
es losgeht in avrdude? Habe versucht, einen absoluten Pfad ala 
d:\programme\winavr\projects\projekt1\main.hex einzugeben in der 
Kommandozeile, aber das haut nicht hin...
Gruss
Fragender

Autor: Stefan B. (stefan) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
In meinen Projekten arbeite ich mit einem relativen Pfad. Ich wechsele 
in das Verzeichnis, in dem sich die HEX-Datei befindet und rufe dort 
AVRDUDE auf. Um Tipparbeit zu sparen mache ich das mit einer Batchdatei.

Beispiel aus 
http://www.mikrocontroller.net/articles/Pollin_Fun...
@echo off
echo Parallelport ISP Typ STK200
echo Programmiere Atmega8 Flash-ROM mit Datei atmega8.hex
d:\winavr\bin\avrdude -p atmega8 -c stk200 -P lpt1 -e -U flash:w:atmega8.hex

Man kann sich auch eine entsprechende Kommandozeile in seiner 
bevorzugten IDE eintragen. Oder den Verzeichniswechsel in die Batchdatei 
mit aufnehmen...

Ich bin mir nicht sicher, ob du den absoluten Pfad übergaupt verwenden 
kannst, denn die : in dem Teil -U flash:w:atmega8.hex könnten sich mit 
dem : aus dem absoluten Pfad beissen.

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

Bewertung
0 lesenswert
nicht lesenswert
Stefan "stefb" B. wrote:

> In meinen Projekten arbeite ich mit einem relativen Pfad. Ich wechsele
> in das Verzeichnis, in dem sich die HEX-Datei befindet und rufe dort
> AVRDUDE auf.

AVRDUDE benutzt selbst keinen Standardpfad, es macht mit dem übergebenen
Namen ein fopen().  Es wird das Verzeichnis dafür benutzt, welches
vom Betriebssystem impliziert wird, die Konzepte eines `current
working directory' unterscheiden sich dabei meines Wissens teilweise
selbst zwischen Windows-Versionen (wobei WinNT und Derivate eher
ähnlich zu Unix ist).

> Ich bin mir nicht sicher, ob du den absoluten Pfad übergaupt verwenden
> kannst, denn die : in dem Teil -U flash:w:atmega8.hex könnten sich mit
> dem : aus dem absoluten Pfad beissen.

Es geht, aber dann ist die volle -U-Spezifikation notwendig, also mit
allen Doppelpunkten: »-U flash:w:atmega8.hex:i«.  Wenn man im Dateinamen
keinen Doppelpunkt hat, lässt sich obiges zu »-U atmega8.hex«
verkürzen.

Da die Win32-Version von AVRDUDE gegen die MinGW-Bibliotheken gelinkt
wird (und folglich dessen fopen()-Implementierung benutzt wird),
müsste man einen absoluten Pfadnamen auch angeben können als

-U /d/programme/winavr/projects/projekt1/main.hex

Die Backslashes darf man getrost durch Vorwärtsstriche ersetzen, das
hat Windows intern schon immer verkraftet.  Nur command.com und
cmd.exe können das nicht, aber die reichen das ja in diesem Falle nur
weiter.  Wenn man den Aufruf aus einem Makefile (für GNU make) heraus
macht, dann liegt implizit eine bash als Shell dazwischen, die
wiederum könnte Zeichen wie \n fehlinterpretieren.  Da ist man mit
den Vorwärtsstrichen auf der sicheren Seite.

Autor: Fragender (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ok, ich geh wieder in das Verzeichnis direkt, so habe ich da glaube 
früher auch gemacht.

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.