Hallo zusammen,
ich stehe gerade auf dem Schlauch...
Habe das AVR Studio 5 beta mal getestet, finde aber keinen Butten um den
Microcontroller zu programmieren. Kann es nur umständlich über das
Programmier-Menü machen, dort die Hex-Datei & den Programmer (MK2)
auswählen und den "Program" - Button drücken.
Beim AVR Studio 4.18 gabs ja den Button "Write to flash" und sowas habe
ich in der 5er Version vergeblich gesucht.
Wie geht es denn vereinfacht? Habe nichts gefunden...
Sorry für die dumme Frage & Danke für die Antworten,
Gruß Ben
Habe die gleiche Frage, man muss beim AVR Studio 5 immer auf Extras-Avr
Programming, dann Apply und dann programmieren.
Das Fenster kann man nicht mal parallel zum programmieren offen lassen,
sondern muss es immer schließen und neu öffnen.
Gibts da eine schnellere/bessere Variante?
Beim alten AVR Studio musste man ja nur einmal den Programmer öffnen und
dann konnte man mit Write Flash Memory with Current Settings das
Programm einfach runterschicken.
Vermisse sowas beim neuen.
Wäre über Tipps dankbar.
grüße Mat
Mat schrieb:> Gibts da eine schnellere/bessere Variante?
Ich habe mir für den Zweck in den Post-Build-Actions einen
entsprechenden Aufruf des Kommandozeilen-Programmers abgelegt.
Ein Druck auf F7 reicht und das Projekt wird compiliert und auf den Uno
geschoben.
42m
Ich habe es wie folgt gelöst:
In den Project Properties wähle ich den Reiter "Build Events" und trage
unter "Post-build event command line" folgendes ein:
Damit ruft das AVR-Studio nach jedem Build den Kommandozeilenprogrammer
für den Jtagice auf.
Den Parameter für das Hex-File baut es sich dabei aus den
Projekt-Einstellungen zusammen (Pfad zu den Kompilaten und Namen des
Projekts mit angehängtem .hex), das Ziel-Device nimmt es sich ebenfalls
aus den Projekteinstellungen.
Daß ich mit (im Studio Macros genannten) Variablen arbeite hat den
Hintergrund, daß ich so diesen Text einfach in ein anderes Projekt
kopieren kann und mich nicht um die Anpassung z.B. des Pfades kümmern
muss.
Wird das Projekt jetzt erstellt (z.B. per F7) wird das soeben erstellte
Hex-File direkt im Anschluss über dieses Post-build Event auf den
Microcontroller übertragen.
Das sollte IMHO mit allen Kommandozeilen-Programmern funktionieren.
HTH,
42m
Super.
Das ist eine gute Hilfe gewesen. Ich habe die Zeile für meinen ARV-ISP
mk2 zusammengeschrieben:
stk500 -cUSB:000200080357 -d$(avrdevice) -e -pf -vf
-if$(OutputDirectory)\$(Name).hex
Nun schreibt er nach dem kompilieren: The command "...\test.hex" exited
with code 9009. Eine google-Suche ergab, dass es sich um eine Problem
mit der Visual Studio handelt:
http://support.microsoft.com/kb/908268
Man soll den Pfad der Regasm.exe vollständig angeben. Leider kann ich
nicht herausfinden, wie das gehen soll.
Ist jemand ebenfalls diesem Problem begegnet?
Gruß
bronko schrieb:> http://support.microsoft.com/kb/908268> Man soll den Pfad der Regasm.exe vollständig angeben. Leider kann ich
Das mit regasm.exe solltest Du nicht zu wörtlich nehmen :)
Befindet sich stk500.exe denn im Pfad, so daß das Programm auch gefunden
und gestartet werden kann?
Gib an der Kommandozeile (Start | Ausführen | "cmd" (ohne "")eintippen
und Enter drücken) mal stk500 ein und drücke Enter. Was bekommst Du als
Ergebnis?
42m
Nachtrag:
Worauf ich hinaus will ist folgendes: Wenn der Befehl/das Programm aus
den Build-Actions nicht gefunden wird, gibt es eine Fehlermeldung.
In dem Fall kannst Du zweierlei tun: Zum einen gibst Du den (absoluten)
Pfad zum Programm an, also z.B. statt "stk500.exe"
"C:\avr\tools\stk500.exe".
Zum anderen kannst Du das Programm irgendwo ablegen, wo es von überall
gefunden wird, weil es eben im Suchpfad auftaucht, in dem beim Aufruf
eines Programmes nach dessen Existenz gefahndet wird. In welchen
Verzeichnissen Windows sucht, kannst Du in den Umgebungsvariablen
(verstecken sich bei Win7 unter Systemsteuerung | System | Erweiterte
Systemeinstellungen | Erweitert). Die fragliche Variable heißt "Path".
Dort kannst Du auch den Pfad zum stk500.exe angeben. Die Angabe wird
dabei durch ein Semikolon abgetrennt.
Viel Erfolg,
42m
Hallo,
ich versuche grade das "Write to flash" hin zu bekommen, aber irgendwie
klappt das einfach nicht.
System:
Windows 7 SP1
AVR Studio 5.2 Beta
Jtagice MKII
Board:
XMega - A1 Xplained
Programmieren funktionert über "AVR Programmieren". Jedoch finde ich
diesen Weg sehr "lang"...
Ich habe schon bei Post-build events den ausdruck
Danke für die Antwort.
Es wird auch ein hex-File im Debug modus erstellt. Programmieren über
den langen weg funktioniert ja. Ich habe irgendwie das Gefühl das der
Programmierer nicht "gefunden" wird
grüße Tobias
Am besten den Befehl einfach mal direkt in der Konsole von Windows
ausprobieren. Wenn es dann dort funktioniert kannst du die
entsprechenden Werte durch die Variablen ersetzten. Dann siehst du auch
ob es am Studio liegt oder an was anderem.
hmm... wenn ich bei Windows Ausführen benutze meckert er das "jtagiceii"
nicht gefunden werden kann. Jetzt stellt sich die frage woher Windows
"jtagiceii" überhaupt kennen sollte.
Grüße Tobias
Dann wird das Studio das gleiche Problem haben, dass es die Datei nicht
findet!
Abhilfe:
Kompletten Pfad zur .exe mit angeben oder den Pfad mit in den
Umgebungsvariablen (Path) mit eintragen.
Bitte nicht hauen, aber zur welcher *.exe? Bei AVR studio 4 gab es noch
eine jtagiceii.exe aber die finde ich bei AVR studio 5 nicht.
Viele Grüße Tobias
Ist vermutlich ebenfalls bei WinAVR dabei. Das wird bei der v5 nicht
installiert und müsste dann manuell installiert werden.
Evtl. gibt es die Tools auch einzeln? Ich hab bei mir für avrdude aber
auch einfach WinAVR installiert, auch wenn es so nicht weiter benutzt
wird :)
Tobias S. schrieb:> OKey also Winavr ist installiert. Sprechen wir die ganze zeit über die> avrdude.exe?
Das Vorgehen ist eigentlich immer gleich, egal welchen Programmer Du
verwenden willst.
Wichtig ist, daß er (und ggf. benötigte Libs) gefunden werden.
Dazu gibt es grundsätzlich zwei Möglichkeiten, den
Kommandozeilen-Programmer zur Mitarbeit zu überreden.
1. Du packst ihn in den Suchpfad Deines Systems. Dann wird er gefunden,
egal von wo aus Du ihn aufrufst.
2. Du gibst bei Programmaufruf den Pfad zum Programmer mit an.
42m
funktioniert es jetzt bei mir. Leider bleibt die Schaltung nach dem
Programmieren im Reset und muss manuell nochmal neu gestartet werden,
aber das ist wohl ein anderes Problem...
Danke für die Hilfe
Leider passiert das auch wenn Release active ist. Nach dem Programmieren
muss ich die Schaltung (AVR XMega-A1 Xplaned) von der Versorgung (USB)
nehmen und dann wieder verbinden...auch ganz schön nervig...
Viele Grüße Tobias
der Pfad zur Exe muss ggf. angepasst werden (ggf. für dei Exe erst das
Studio4 installieren). Die Nummer des Programmers (-cUSB) muss auf jeden
Fall angepasst werden...
Das Problem waren bei mir die fehlenden Anführungszeichen beim Parameter
-if, da Pfade ja auch Leerzeichen enthalten können.
Gruß
Michael
Noch eine Ergänzung.
Bei importierten AVR Studio 4 Projekten ist '$(Name)' (in der
Projektdatei) nicht definiert. Stattdessen kann man
'$(MSBuildProjectName)' nehmen.
Carsten
Hi,
hab mir jetzt bei AVR-Studio 5 auch das post-build-event eingebaut,
sieht so aus
1
"C:\AVR\Programme\AVR Studio 4\STK500\Stk500.exe" -cUSB:000200058992 -d$(avrdevice) -e -pf -vf -if"$(OutputDirectory)\$(MSBuildProjectName).hex"
und funktioniert auch wunderbar.
Nun möchte ich aber nicht bei jedem Kompilieren gleichzeitig flashen,
also habe ich mir über "Tools\External Tools..." einen Button gebaut
mit:
Command:
Das Problem wurde mitlerweile auch von Atmel erkannt und in der Finalen
Version von Studio 5 angeganen:
Klickt man unter "Debug" auf "Start without debugging" wird das aktuelle
Hex-file geflasht. Wie aus Studio 4 gewohnt - ohne große Einstellungen.
Dabei scheint automatisch das richtige hex ausgewählt zu werden. Die
Einstellungen (welcher Programmer, ISP-Geschwindigkeit,...) scheinen in
den Project Properties unter "Debugging" festgelegt zu werden.
Allerdings hab ich es noch nicht geschafft, auf die Weise mit dem Dragon
über ISP zu flashen. Da besteht das Studio auf JTAG. Mit meinem ISP MKII
läufts aber Problemlos.
Auch das EEPROM wird auf die weise nicht geschrieben. Der Haken bei
"Preserve EEPROM" scheint leider auch keine Auswirkungen zu haben.
Gefunden hab ich das ganze bei den avrfreaks:
http://www.avrfreaks.net/index.php?name=PNphpBB2&file=viewtopic&t=105986
Sebastian
Danke für die Anregungen. Hatte hierbei auch Probleme. Konnte es
folgendermaßen Lösen:
AVRStudio Version 5.0.1163
AVRISP mkII
Unter den Projekteinstellungen auf Debugging klicken.
(Wählt man das nicht in den Projekteinstellungen aus, kommt später immer
ein Dialog, wo die vorhandenen Debuggingtools ausgelistet werden, nur
dass man da nicht den AVRISP mkII auswählen kann.)
Hier als Debugger den AVRISP mkII auswählen, des weiteren lassen sich
dann noch die ISP Geschwindigkeit auswählen und der EEProm-Schutz.
Da auch eine Einstellmöglichkeit für das Interface besteht, lässt sich
vielleicht auch der Dragon auf ISP umstellen.
Dann kann man einfach über F5 bzw. Start debugging das Projekt
kompilieren und den Controller programmieren.
Hallo Leuts, ich sitz hier grad' dran und hab das gleiche Prob.
Ich würde gerne die Lösung mit der build-project Eintragung versuchen.
> "C:\AVR\Programme\AVR Studio 4\STK500\Stk500.exe" -cUSB:000200058992 >-d$(avrdevice) -e -pf -vf >-if"$(OutputDirectory)\$(MSBuildProjectName).hex" > >$(MSBuildProjectDirectory)\controller_flashen.bat
-cUSB:000200058992 <- Ist das eine "Portbezeichnung"?
Wo/wie finde ich die? Die Device-ID ist vermutlich nicht, die sieht bei
mir ganz anders aus. Hab
XP pro
AVRStudio Version 5.0.1163
AVRISP mkII
floggy schrieb:> AVRStudio Version 5.0.1163> AVRISP mkII>> Unter den Projekteinstellungen auf Debugging klicken.> (Wählt man das nicht in den Projekteinstellungen aus, kommt später immer> ein Dialog, wo die vorhandenen Debuggingtools ausgelistet werden, nur> dass man da nicht den AVRISP mkII auswählen kann.)>> Hier als Debugger den AVRISP mkII auswählen, des weiteren lassen sich> dann noch die ISP Geschwindigkeit auswählen und der EEProm-Schutz.> Da auch eine Einstellmöglichkeit für das Interface besteht, lässt sich> vielleicht auch der Dragon auf ISP umstellen.> Dann kann man einfach über F5 bzw. Start debugging das Projekt> kompilieren und den Controller programmieren.
Wenn ich das mache, will der AVR-ISP mkII die DebugWire-Funktion
aktivieren. Wenn ich diese Aktion bestätige, ist mein Controller später
unbrauchbar. Es hängt ein Mega168 als Target dran...