Hallo Kann mir jemand sagen, was ich in die Komandozeile eingeben muss, um eine .elf Datei auf einen Atmega32 zu flashen.( ohne Makefile)
Ein bischen mehr Informationen währen nicht schlecht. z.B. Welche Entwicklungsumgebung benutzt du...
Ich benutze keine Entwicklungsumgebung. Ich schreibe mir ein C- File(main.c) in Notepad++ und erzeuge mir über folgende Eingabe: avr-gcc -O2 -mmcu=atmega32 main.c -o main.elf ein .elf File. Das muss ich dann irgendwie per Befehl über die Komandozeile auf den Atmega flashen können. Diesen Befehl bräuchte ich. Gruß Daniel
>ein .elf File. Ein .elf File kannst du nicht in den uC flashen. Du brauchst ein .hex oder .bin File. >Das muss ich dann irgendwie per Befehl über die Komandozeile auf den >Atmega flashen können. >Diesen Befehl bräuchte ich. avrdude mit Parametern für deinen Prommer (welcher ?)
Daniel Schillinger wrote: > Das muss ich dann irgendwie per Befehl über die Komandozeile auf den > Atmega flashen können. Ich weiß ja nicht, ob Deine Kommandozeile so lang ist, daß sie bis zum AVR reicht. Du brauchst in jedem Fall eine Programmierhardware und die muß irgendwie mit dem PC verbunden sein. Und dann hast Du zu dieser Hardware ein passendes Frontend, mit dem Du ein Hex-File einlesen und flashen kannst. Ein PC ohne irgendwas kann das jedenfalls nicht, er hat keinen "Befehl" dafür. Peter
Danke für die Antworten, jetzt bin ich schon mal einen Schritt weiter. Jetzt stellen sich aber 2 neue Fragen: 1) wie erzeuge ich ein Hex File 2) Ich weiß nicht genau, was ich für nen Programmieradapter habe. Ich hab den vom BlueMP3 Projekt(http://www.bluemp3.de/). Da steht aber nicht dabei was das für ein Typ ist. Wäre es möglich , in WinAVR in mfile einfach mal alle Typen durch zu probieren, bis einer funktioniert? Oder kann man da was kaputt machen, wenn man den falschen Adapter einstellt( z.B. weil die Pin Belegung anderst ist, oder so)?
1/ Daniel, das steht doch alles im AVR-GCC-Tutorial. Über den Weg Kommandozeile macht das fast keiner mehr. Normalerweise benützen die Leute eine bequeme Entwicklungsumgebung mit einem vernünftigen MAKE-Tool. 2/ Der Programmieradapter vom BLUEMP3-Projekt ist ein einfacher AVRISP I/O für den Parallelport aka STK200-kompatibler ISP. http://www.heise.de/ct/Redaktion/cm/klangcomputer/index1.htm Wie man damit und der AVRDUDE Software umgeht steht u.a. hier: http://wiki.ctbot.de/index.php/AVR_ISP_Programmer
1 | Vorsicht: Beim BlueMP3 ISP Programmer ist unbedingt darauf |
2 | zu achten zuerst den c't-Bot (bzw. das zu programmierende |
3 | Targetboard) einzuschalten und dann den ISP Steckverbinder |
4 | zu stecken. Und nach dem Flashen zuerst den ISP Steckverbinder |
5 | zu ziehen und dann den c't-Bot (bzw. das zu programmierende |
6 | Targetboard) auszuschalten. Sonst riskiert man, das die LPT |
7 | Schnittstelle des PCs zerstört wird. Bei anderen STK200 |
8 | kompatiblen Programmern mit eingebauter Schutzdiode besteht |
9 | diese Gefahr nicht. |
Das mit dem Makefile habe ich schon probiert. Habs auf ganze 17 errors geschaft.(Fehlermeldung als Bitmap, die main.c Datei und das makeFile sind im Anhang). Ich hab in mfile fogendes eingestellt: mcu=atmega32 output format= ihex optimization level=s debug format=ELF/DWARF2 c standard level = gnu99 printf() options=none/standard scanf() options=none/standard External Ram options=none programmes=stk200 port=ltp1(hab nur einen ltp Port,das ist also nicht der fehler) Bin in der Komadozeile auf C:\> gegangen und habe dann make all eingegeben. Hat jemand ne Idee, wo der Fehler liegen könnte? Wäre es eventuell auch möglich, das der Fehler dadurch zu stande kommt, das die Platine mit dem atmega nicht funktioniert( wollte sie hiermit eigentlich testen), oder ist das bei make all egal, da ja noch nichts geflasht wird? Wäre für Hilfe sehr dankbar, da ich keine Ahnung habe, was da falsch läuft. Gruß Daniel
Das Problem hat sich geklärt. Der gcc Compiler hat sich mit dem Borland Compiler nicht so ganz vertragen. Seit dem ich den Borland Compiler deinstaliert habe klappt es mit dem make all. Danke nochmal für eure Hilfe. Daniel
Nicht die Compiler ,,haben sich nicht vertragen'', sondern du hast zwei völlig verschiedene Versionen von make.exe gehabt, die sich in ihrer Syntax eben doch gewaltig unterscheiden. Für das WinAVR-Makefile war dann das falsche make.exe zuerst im %PATH%.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.