www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik OpenOCD ARM9 programmieren über Debug Communication Channel


Autor: MicroMann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Ich möchte meinen AT91RM9200 über OpenOCD und Amontec JTAGKey
programmieren.
Dazu schiebe ich einen Bootloader in das interne SRAM, was die
Initialisierung des Controllers vornimmt und anschließend das Comms
data register pollt (gemäß ARM Appnote 38) , um dort das binary file zu
empfangen.
Die Daten werden dann direkt ins BootFlash geschrieben.

Soweit zur Theorie.

Nun bin ich mir aber unschlüssig, wie ich mit OpenOCD ein binary nicht
an eine bestimmte Adresse schiebe, sondern nur an das Comms data
register übergebe.
1. Ist das überhaupt möglich ?
2. Wenn ja, wie bewerkstellige ich das ? Die Doku von OpenOCD schien
mir kein passendes Kommando anzubieten.
3. Fällt das schon in die Kategorie des (nicht implementierten)
semihostings ?
4. Und falls Dominic auf diesen Post antwortet : Gibt es schon
Bestrebungen für Semihosting ? (Und nochmal 1024 dank für dein geniales
Programm !)

Autor: Dominic R. (dominic)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
1. Jein. OpenOCD verwendet den DCC selbst, um die Downloads zu
beschleunigen. Ich erreiche damit ~120kb/s beim Download via JTAGkey
auf ein LPC2294 board (ext. SRAM).
2. arm7_9 dcc_downloads enable, anschliessend verwenden load_binary und
'flash write' DCC downloads. Dazu muss eine working_area für das
Target definiert sein, die sich nicht mit dem Bereich überlappen darf,
in den Daten geschrieben werden. Z.B. internes SRAM des LPC2000, und
nur "flash write" verwenden, oder obere 4k des int. SRAM, und nur in
den Bereich darunter schreiben.
3. Jein. DCC würde man für Semihosting benutzen, aber das ist eben
nicht implementiert.
4. Im Moment nicht. Zur Zeit (bzw. wenn ich wieder Zeit habe) arbeite
ich an der Integration eines Patches für MinGW, was allerdings etwas
aufwendiger ist, da ich nicht zig Hacks für jede mögliche Plattform
habe will. Ausserdem steht die Unterstützung für Intel XScale zur Zeit
ziemlich hoch auf meiner Liste.

Gruss,

Dominic

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.