Ich würde gerne einen Arduino Leonardo via AVRDUDE programmieren....
Den Bootloader möchte ich aber vorerst erstmal darauf lassen, nun
geschieht dies ja so:
- Leonardo ist angestöpselt und bekommt COM7 als UART zugewiesen
- Der Com Port muss mit 1200 Baud geöffnet werden und wieder geschlossen
werden
- Der Leonardo geht in den Programmiermodus (via Atmel Appnote 109) und
bekommt COM17
- AVDUDE brennt die HEX
Nun, wie kann ich unter windows eine Befehlszeile hinbekommen der den
Leonardo mit 1200Baud öffnet und schließt?!?
Jemand nen Tipp?!
In z.b. Atmel Studio wird das ganze dann so aufgerufen:
Command = pyhton.exe
Argument= “C:\Documents and Settings\Adam\My Documents\Atmel
Studio\Serial Uploader.py” “C:\Program Files\Arduino” leonardo
“$(ProjectDir)Debug\$(ItemFileName).hex” COM6 COM7
Rene K. schrieb:> - Der Com Port muss mit 1200 Baud geöffnet werden und wieder geschlossen> werden
Dies ist eine Funktion der Arduino-HAL/Framework.
Wenn du ein Programm drauf Flasht das dies nicht benutzt geht der Trick
nicht mehr, und man muss per Hand den Reset-Knopf drücken.
Rene K. schrieb:> Nun, wie kann ich unter windows eine Befehlszeile hinbekommen der den> Leonardo mit 1200Baud öffnet und schließt?!?
Mit Windows Boardmittel ist das nicht möglich.
Du kannst das Terminal-Programm PuTTY verwenden, und es mit den
richtigen Commandline-Parameter aufrufen.
Wird der Reset ausgelöst sobald die Verbindung geöffnet wird, oder erst
wenn sie geschlossen wird?
Bei ersteres wird PuTTY eine Fehlermeldung ausspucken, da das USB-Gerät
durch den Reset verschwunden ist. Bei letzterem müsstest du noch den
PuTTY-Prozess abschießen.
http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
Rene K. schrieb:> Ich würde gerne einen Arduino Leonardo via AVRDUDE programmieren....>> Den Bootloader möchte ich aber vorerst erstmal darauf lassen, nun> geschieht dies ja so:>> - Leonardo ist angestöpselt und bekommt COM7 als UART zugewiesen
Er bekommt irgend einen COM-Port zugewiesen.
> - Der Com Port muss mit 1200 Baud geöffnet werden und wieder geschlossen> werden> - Der Leonardo geht in den Programmiermodus (via Atmel Appnote 109) und> bekommt COM17> - AVDUDE brennt die HEX>> Nun, wie kann ich unter windows eine Befehlszeile hinbekommen der den> Leonardo mit 1200Baud öffnet und schließt?!?
Gar nicht?
Wenn der Bootloader auf dem Leonardo gemäß Atmel Appnote AVR109
funktioniert, dann sollte man einfach den dafür den passenden Modus von
avrdude verwenden:
Ja das ist ja das Problem, der Leonardo geht bloß nach einem Reset oder
halt eben durch das Öffnen des Ports in den Resetmodus um den Bootloader
zu laden, ansonsten is er im Arduino Loader.
Ich hab es nun ganz anders gemacht und programmiere ihn eben über die
ISP Schnittstelle. Ich benötige den Arduino Bootloader auch nicht
unbedingt. Ich will ja eh nur einen USB-Serial Konverter über die USB
Schnittstelle laufen lassen.
Das Phyton Script funktioniert zwar, aber er überschreibt mir dann
jedesmal den kompletten AVR incl. Bootloader. Kann man das irgendwie
verhindern?!
>Kann man das irgendwie verhindern?!
Normalerweise steht die Startadresse im Hex-File. Du musst dem Linker
mitteilen, wo das Programm beginnt und dann das entsprechende Hex-File
compilieren.
Im Anhang ein kleies EXE welches ich in Pureb@sic geschrieben habe.
Aufruf: leonardoReset COM-Port
Der Leonardo wird zurückgesetzt und es meldet sich der Bootloader mit
einem anderen(!) COM-Port am PC. Jetzt kannst du mit AVRDUDE mit AVR109
Protokoll dein Programm flashen.
Räusper: den Source zum Pureb@sic Programm hab ich leider nicht mehr da
mir durch eine Blödheit der Source anhanden gekommen ist :-(.
Ich weiß, es ist Vertrauen nötig, um das Programm zu nutzen, aber bei
mir macht es keinen Blödsinn.
Rene K. schrieb:> Das Phyton Script funktioniert zwar, aber er überschreibt mir dann> jedesmal den kompletten AVR incl. Bootloader. Kann man das irgendwie> verhindern?!
Da ist nicht möglich, der Bootloader kann sich nicht selbst
überschreiben.
Bootloader und Fuse lassen sich nur über ISP oder JTAG ändern.
So, damit keiner glaubt, ich habe oben irgendeine bösartige SW
hochgeladen, hier gibt es den Source, den ich eben nochmal geschrieben
habe. Ist ja nicht so lang und mich hat es auch genervt, dass ich den
Source nicht mehr hatte. Die neue EXE dazu gibt es auch.
Wer der EXE nicht traut, kann den Source mit der Testversion der
PureB@sic-Version übersetzen.
Für diese kleinen Tools ist Pureb@sic wirklich klasse. Und auch große
Programme lassen sich gut damit machen.
900ss D. schrieb:> ür diese kleinen Tools ist Pureb@sic wirklich klasse. Und auch große> Programme lassen sich gut damit machen.
Das kann ich bestätigen...
...
Auf der Suche den Arduino Leonardo via USB Bootloader außerhalb der
Arduino-IDE zu programmieren, bin ich hier gelandet. Die
leonardoReset.exe s.o. scheint aber einen Virus zu haben. Bei mir
schlägt der Virenscanner an.
Gibt es Alternativen mein Vorhaben ohne ISP aber mit USB-Bootloader
umzusetzen?
Typischer Fall von false positive.
Die Datei, die ich hochgeladen habe, hat keinen Virus. Na gut, must du
glauben.
Ich habe mal die Suchmaschine danach befragt. Ist bei Pureb@sic
Executables nicht selten, wenn sie so klein sind. Da melden Virenscanner
scheinbar gerne.
No N. schrieb:> Gibt es Alternativen900ss D. schrieb:> Wer der EXE nicht traut, kann den Source mit der Testversion der> PureB@sic-Version übersetzen.
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