Flashen von ARM-Controllern via J-Link/J-Trace über Kommandozeile

Gast #2855920
Lesenswert?

Hallo,

ich habe über die Entwicklungsumgebung IAR EWARM V6.3 ein 
Mikrocontrollerprogramm für Cortex-M3 Controller geschrieben und würde 
diese gerne mittels Kommandozeilenbefehl über JTAG flashen. 
Angeschlossen ist das ganze mittels JTAG über einen J-Link Debugger von 
Analog Devices. Momentan sieht das so aus, dass ich IAR öffnen muss und 
dann auf den Button "Download & Debug" klicken muss und dann über "Go" 
das Programm starte. Den Vorgang möchte ich aber über ein Skript 
automatisieren und finde leider keinerlei Hinweisse dazu über welche 
Kommandozeilenbefehle ich das bewerktstelligen kann.
Ich hoffe, dass jemand ein paar Tipps für mich hat. Bin schon sowohl 
SEGGER- als auch IAR-Dokumente durchgegangen, habe aber leider nichts 
dazu gefunden.

Gruß
VH
Gast #2856070
Lesenswert?

hallo vh,
zuerst musst du dir in der workbench deinen code in einer dateiformat 
erezugen lasen, welches typischerweise zum flash benutzt wird (motorola 
oder intel-hex-datei):
options => output converter => generate additional output => output 
format auswählen.

wie schon erwähnt kannst du j-flash benutzen, welches auch über die 
kommandozeile steuerbar ist. um j-flash nutzen zu können, muss dei 
nj-link eine entpsrechende lizenz aufweisen.

alternativ kannst du auch openocd einsetzen. das ist ein 
open-source-tool welches meines wissens auch den j-link unterstützt.
infos zu openocd findest du u.a. unter:
http://sourceforge.net/projects/openocd/
hier ein link zu einem forum über openocd
https://forum.sparkfun.com/viewforum.php?f=18

gruss
gerhard
Gast #2856083
Lesenswert?

@armanfänger
wusste gar nicht dass das flash programmieren über den j-link commander 
auch möglich ist, danke für den tip!
btw: mit loadbin kann nur eine binär-datei geladen werden!

gruss
gerhard
Gast #2856099
Lesenswert?

Hallo ArmAnfänger

ArmAnfänger schrieb:
> Das geht mit der Software "J-Link Commander" und dem Befehl "loadbin".UNGEFÄHR 
so:Jlink.exe < skript.txtInhalt der skript.txt:power onsi 1loadbin xxxxx.hexrgqc

Danke für dein Posting.
Das ist ungefähr die Richtung mit der es klappen könnte.
Hab grad etwas rumprobiert, hab aber noch Probleme damit, dass ich einen 
AD mIDAS-Link verwende und der über den J-Link Commander anscheinend 
irgendeinen Grund zum meckern wegen dem Cortex-M3-Controller (ADUCM301) 
sieht. Über IAR klappt ja alles einwandfrei.
IAR 6.3 liefert mir ja als Ausgabe eine .out Datei. Muss ich diese 
unbedingt in ein .hex-File umwandeln für loadbin? Ich werd mal an dem 
"skript.txt" weiter rumdoktoren in der Hoffnung das es irgendwann 
klappt.
Gast #2856178
Lesenswert?

>IAR 6.3 liefert mir ja als Ausgabe eine .out Datei. Muss ich diese
>unbedingt in ein .hex-File umwandeln für loadbin?
mit loadbin kann nur eine binär-datei geladen werden.
also beim output converter einfach binary einstellen und ggf. einen 
dateinamen eintragen.
>Ich werd mal an dem "skript.txt" weiter rumdoktoren in der Hoffnung das es 
>irgendwann klappt.
ich würde dir empfehlen statt "rumzudoktern" das manual des j-link zu 
studieren, kapitel J-Link Commander (Command line tool) ist sehr zu 
empfehlen wenn es um die bedienung/steuerung des j-link commander geht.

gruss
gerhard
Gast #2856337
Lesenswert?

Andre Frage:
Kann ich durch eine Option bei IAR 6.31 anwählen, dass der Debugger ein 
Log-File mit den Command lines erstellt die er beim Klick auf "Download 
& Debug" ausführt? Für C-Compiler, Assembler und Linker gibt es ja die 
Option unter "List" > "Output list file" bzw. "Generate linker map file" 
- beim Debugger hab ich derartiges nicht gefunden. Gibt es da die 
Möglichkeit?
Gast #2857291
Lesenswert?

>Kann ich durch eine Option bei IAR 6.31 anwählen, dass der Debugger ein
>Log-File mit den Command lines erstellt die er beim Klick auf "Download
>& Debug" ausführt?
options => Debugger => J-Link/J-Trace => Connection => Log communication

damit wird aber nur die koommunikation zw. c-spy und j-link geloggt.

gruss
gerhard

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren