mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik ARM welche Entwicklungsumgebung, welches JTAG Interface ?


Autor: MicroMann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich möchte mich privat in die Welt der ARMs einarbeiten. Dazu habe ich
einen schönen Starterkit von MSC entdeckt, der mir sehr gut gefällt.

Schaust du da : http://www.msc.de/frame/d/newsletter/newsletter_8.html

Nur die Beschränkung auf ATMEL Prozessoren ist nicht so toll, da ich
mich nicht schon vorher auf einen Hersteller festlegen will.

Und auch die Codegrößenbeschränkung lässt Wünsche übrig, ich denke aber
dass ich das mit dem ARM GCC löse.

Was haltet Ihr von dem Angebot, oder kennt ihr bessere, die evtl. auch
nicht auf ATMEL Controller beschränkt sind ?

Autor: Ppp Mmm (sanic)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Preistechnisch hört sich das ganz gut an.
Board + JTAG ist immer ne gute Sache.
Die Frage ist halt inwiefern du JTAG-Debugging mit dieser
eingeschränkten Entwicklungsumgebung machen kannst.

Wenn du dich generell mit ARMs befassen möchtest kann ich dir noch den
folgenden Wiki Eintrag empfehlen:
http://www.mikrocontroller.net/articles/LPC2000_Ph...

Da geht´s um den LPC von Philips der vielleicht eine Alternative für
dich ist.
Schau doch mal rein.

Grüße,
Patrick

Autor: Micro Mann (micromann)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Die Frage ist halt inwiefern du JTAG-Debugging mit dieser
> eingeschränkten Entwicklungsumgebung machen kannst.

Der Debugger des Angebotes ist nicht beschränkt. Nur der Compiler ist
auf 32kB C-Code eingeschränkt. Assembler ist davon (wie ich wo anders
gelesen habe) nicht betroffen. Würde ich aber vor dem Kauf nochmal
abklären.

> Wenn du dich generell mit ARMs befassen möchtest kann ich dir noch
> den folgenden Wiki Eintrag empfehlen:
> http://www.mikrocontroller.net/articles/LPC2000_Philips_...

THX.

Habe daraus folgende für mich interessante JTAG Interfaces entnommen:

J-LINK von Segger
U-LINK von Keil

Weiß jemand, ob es zur Zeit bei irgendeinem Anbieter Starterkits mit
einem dieser JATG-Interfaces gibt ?

Autor: mthomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das SAM-ICE aus der Anzeige ist ein J-Link "OEM". Nach Informationen
von at91.com funktioniert das SAM-ICE nur mit Atmel-Controllern jedoch
kann das RDI-Interface und die Flash-Software von Segger
lizenzkostenfrei genutzt werden. RDI wird von einigen Softwareanbietern
unterstuetzt, es existiert auch eine GDB-RDI-Schnittstelle (z.B. im
codesourcery-Paket). Fuer das J-Link wird von Segger einiges an
Zusatzsoftware angeboten. Das ULINK ist sehr aehnlich aufgebaut, kann
aber meines Wissens ausschliesslich von der Keil Software (uVision)
genutzt werden, funktioniert damit auch gut (noch nicht viel getestet,
nutze es im Moment nur als Flash-Hardware). uVision kann ueber die
RDI-Schnittstelle ebenfalls mit einem J-Link Kontakt aufnehmen, man
benoetigt aber scheinbar bei einem original J-Link zusaetzlich eine
RDI-Lizenz von Segger, zumindest erscheint "hier" eine Aufforderung,
den Lizenzcode einzutippen. GDB-RDI-Schnittstelle funktioniert beim
J-Link ohne diese Lizenz wohl auch nicht, kann aber auch einen anderen
Grund haben, nur kurz getestet. Beim SAM-ICE muss die RDI-Lizenz wohl
nicht erworben werden. ULINK kann man bei Starterkits von Keil
(Google-Futter: MCB2100, MCB2130, MCB2140) mitbestellen. Es gibt von
Rowley noch ein vergleichbares gnuenstiges Geraet, scheint aber
ausschliesslich mit Rowley-Softare nutzbar.

Martin Thomas

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kennt jemand diese Teil?
http://www.amontec.com/

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn denn Rowley Crossworks nicht so teuer wäre (500 UK/750 EUR), dann
könnte man das ja zusammen mit 'nem einfachen
Parallelport-JTAG-Adapter ("Wiggler") verwenden - das ist, soweit ich
weiß, die einzige Software, die auch unter den ernstgemeinten*
Windows-Versionen anständig mit 'nem "Wiggler" klarkommt.

Warum "OCD Remote" resp. "OCD Commander" von Macraigor praktisch
vollkommen unbrauchbar ist, wird nur Macraigor selbst wissen; den
Gebrauch des "OCD Remote" zusammen mit GDB/Insight schränkt es
jedenfalls ziemlich ein.

Gibt es da eigentlich weitergehende Erfahrungen, welche (andere)
Software unter den ernstgemeinten Windows-Versionen mit einem
"Wiggler" klarkommt?


*) Windows NT 4.0 - 5.1, jedoch kein Windows 95 und ähnlicher Quark

Autor: dose (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
die Info brauche ich auch.


Wie kann man ohne "ocd remote" leben.

Ich hatte mal was von den Jtag-tools gelesen, doch bis zur brauchbaren
Verwendung wurde es nie getrieben.

Eine andere mögliche Veriante könnte

http://sources.redhat.com/ecos/multi-ice.html

Sein.
Ich habe es nie ausprobiert.

Autor: Micro Mann (micromann)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
THX @ all, besonders an mthomas für den äußerst kompetenten Beitrag.

Ich habe mich umgesehen, und werde mir das MSC Startup-Paket holen. Das
auf ATMEL geloggte J-Link was da dabei ist, kann mit diversen
Toolchains bzw. Debuggern zusammenarbeiten. Aber leider nur mit ATMEL
AT91. Zum Glück sind ATMEL Prozessoren aber günstig, gut verfügbar, und
in vielen Leistungsklassen erhältlich. Damit kann (werde) ich also
leben.

Dabei kostet JTAG-Interface, Eval-Board und (auf 32k beschränkte) Soft
weniger als nur das J-Link von Segger alleine. Andere J-Link Bundles in
vernünfigen Preisregionen habe ich leider nicht finden können.

Das Upgrade von 32k auf 511K kostet übrigens schon 2990,- Netto :O
Ich werde mich da mal nach ner preiswerteren Toolchain umsehen.
Hat jemand ne Idee ?

@ Sanic : Du hattest recht, die 32 k betreffen den Debugger.
Ausgenommen von der Beschränkung ist Assembler (Aber wer will schon
einen ARM in Assembler programmieren ....)

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Preiswerter als der von Dir genannte Preis für IAR ist dann doch Rowley
Crossworks, das kostet "nur" 750 EUR. Und arbeitet, wie ich schon
gelegentlich anmerkte, sogar anständig mit Parallelport-JTAG-Adaptern
("Wiggler") zusammen.

Autor: Micro Mann (micromann)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Rufus
Ein ordendlicher Wiggler kostet auch schon ein bisschen was ...

Und ein schlabbriger Nachbau kommt für mich nicht in Frage,
da es meiner Ansicht nach nicht schlimmeres gibt, als ein
unzuverlässiges Entwicklungswerkzeug.

Übrigens gibts die Entwicklungsumgebung winIDEA von iSYSTEM
auch "schon" für ca.1000 Euronen.

Ich suche aber noch was preiswerteres. Gerne auch mit (vernünftiger)
Beschränkung.

Wie siehts denn mit dem GCC-Zeug aus ? Läßt sich damit vernünftig
arbeiten ?

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe mir mal einen Original-Wiggler angesehen und mit dem hier im
Shop verkauften Olimex-Nachbau verglichen.
Die "Schlabberigkeit" ist bei beiden annähernd vergleichbar. Einziger
Nachteil des Olimex-Wigglers ist das angelötete Kabel, davon abgesehen
ist der eher noch besser verarbeitet als das Original.
Das Layout des Originals sieht aus wie ein Erstlingswerk von jemandem,
der noch nie eine Digitalschaltung aufgebaut hat, in der Frequenzen
jenseits von 1 kHz auftreten. Wüst geführte dünne Leiterbahnen für
alles, sehr "luftiges" Layout, keine Masseflächen, keine vernünftigen
Versorgungsleiterbahnen ...

Der bislang am saubersten aufgebaute Adapter war ein Wiggler-Nachbau
der Firma Phytec (große Masseflächen, vernünftiges Layout etc.)

Man kann, wenn man einen Lötkolben am richtigen Ende anfassen kann und
etwas über das Grundschulniveau im Aufbau von digitalen
Logikschaltungen herausgekommen ist, sich einen Wiggler auch
selbstbauen.

Wen das überfordert, der bekommt auch keine Schaltung mit einem
Microcontroller zum Laufen.

Das "GCC-Zeug" leidet unter der Debugger-Unterstützung, hier ist
nämlich GDB und "OCD Remote" zu verwenden ... und das ist unter den
ernstgemeinten Windows-Versionen praktisch vollkommen nutzlos.

Autor: Dirk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

ich denke hier duerfte meine Frage richtig sein.

Ich habe noch vom LPC Contest die ID zum Bestellen des JTAG
Programmer/Debugger.
Funktioniert dieser nur mit Keil Umgebung? bzw. ist der nur LPC
tauglich?

In wie weit ist das Winarm Packet zum arbeiten geeignet? Ist es schon
so ausgereift wie WinAVR?

Hoffe auf ein bischen Feedback.

Gruß,
Dirk

Autor: Micro Mann (micromann)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hmmm.

Das hört sich auch vernünftig an.
Evtl. täts dann auch ein brauchbarer Wiggler mit einem Linux-Rechner
zum Entwickeln.

Muss ich mir mal durch den Kopf gehen lassen...

Danke für den Tip.

Autor: dose (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie wärs mit einem Raven Nachbau?

http://www.amontec.com/

Autor: Micro Mann (micromann)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Dirk

Was ist denn das für ein JTAG Interface ? Link ?

Autor: Micro Mann (micromann)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@dose
Hab ich mir auch schon angeschaut.
Der kost aber "naggisch" (ohne Soft und Eval) auch schon 159 Euronen.
Dafür ist er wesentlich universeller was das Target angeht.
Gefällt mir eigendlich so vom ersten Eidruck recht gut.
Hat damit schon mal jemand gearbeitet ? "Taucht" der was ?

Autor: dose (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe noch nicht damit gearbeitet. Er läuft auch mit dem OCD Remote.
Das wird Rufus nicht freuen.

Ich hab ein Angebot von Digi für ein WLAN Entwicklungsumgebung mit
einem RAVEN. Da hätte der Debugger über 850Euro gekostet.

Andere Fragen hat jemand die 30Tage Version von Rowley schon geteset?
Ist der Debugtreiber auch von den 30Tagen betroffen?


Dose

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Warum sollte mich das nicht freuen?
Ich finde nur den "Raven" bzw. dessen Nachbauten zu hochpreisig.

Soweit ich weiß, ist der Debugger in Crossworks integriert, da gibt es
keinen externen Debuggertreiber, den man losgelöst mit anderen
Debuggern verwenden könnte.
Schön wär's, da die Kommunikation von Crossworks mit einem Wiggler
extrem deutlich viel besser funktioniert als die Kommunikation des
"OCD Commander" bzw. "OCD Remote".
("Extrem deutlich viel besser" bedeutet eine Übertragungsrate von
mehreren kByte pro Sekunde im Gegensatz zu vielleicht 300 Byte pro
Sekunde und zig Fehlermeldungen. Liegt nicht am "Wiggler"-Nachbau, da
es sich mit einem Original(TM)-Wiggler von Macraigor genauso verhält)

Autor: Robert Teufel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Schaut Euch doch mal den sehr schnellen USB -> JTAG von PLS an.  Hab
kuerzlich mit denen gesprochen und der Preis, der mir genannt wurde war
unter 500 Euro mit einem vollwertigen (sehr guten) Debugger und einem
vorgetesteten GCC ohne Einschraenkungen.
Sieht so aus als ob der Fokus etwas auf dem STR7 ist aber auch AT91 und
LPC2000 werden unterstuetzt.
Hab mit dem Debugger auf C167 gearbeitet, war sehr gut und der Support
ist auch erstklassig.  Sollte ein Bedarf an Trace da sein, dann bietet
PLS eine Hardware fuer 1500 Euro.  Natuerlich muss dazu der Micro auch
Trace unterstuetzen, dann wuerde nur noch LPC2000 uebrig bleiben.

Autor: dose (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da Manko ist, dass die Opensourcegemeinde noch nicht ein Äquvalent für
den Wiggler-Treiber geschrieben hat. Rowley hat bewiesen, dass die
Hardware Wiggler ausreichend ist. Da ganz doofe bei der Benutzung von
Macraigor ist auch die Cygwin Umgebung.

Das wäre mal eine Diplomarbeit wert. Gibt es denn keinen Prof., der
sein Rechenkabinett mit einem ARM ausstatten will und kein Geld für den
Debugger hat?

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Naja, wenn man mehr Ahnung von JTAG hätte als beispielsweise ich (der
ich nicht viel drüber weiß), dann ließe sich sicherlich auch eine
kostengünstige Alternative zum Parallelport-Gefrickel finden.

Wenn ich das richtig einschätze, sollte das sogar mit bedeutend weniger
Programmieraufwand möglich sein, als für eine "richtige" Ansteuerung
des "Wiggler" erforderlich wäre.

Der FT2232C von FTDI enthält eine sogenannte "Multi-Protocol
synchronous serial engine" (MPSSE), mit der sich synchrone serielle
Schnittstellen wie I²C und SPI implementieren lassen.
Das bedeutet, daß ein großer Teil des "Bitwackelns", das für
Parallelportadapter erforderlich ist, hier von Hardware erledigt wird
und so einem das Leben deutlich vereinfachen dürfte.

Obendrein gibt es von FTDI bereits eine für JTAG-Funktionen
geschriebene DLL, die weitere grundlegende Funktionen zur Verfügung
stellt (http://www.ftdichip.com/Projects/MPSSE/FTCJTAG.htm).

Alles, was jetzt "noch" erforderlich ist, ist eine Software zu
schreiben, die einerseits das Debuggerinterface zur Verfügung stellt,
das GDB und Konsorten gerne sehen möchten und die andererseits mit der
JTAG-DLL kommuniziert.

Na? Jemand Lust (und Ahnung) dazu?

Autor: Ppp Mmm (sanic)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn das JTAG Protokoll mal so offen/verständlich wäre dass man es
"mal" eben implementieren kann. Dann würde es sicherlich viele JTAG
Debug-Programme geben.

Grüße,
Patrick

Autor: dose (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Rufus,
die MPSSE des FT2232C dafür zu nutzen finde ich genial.
10Euro kostet der IC.


>Der FT2232C von FTDI enthält eine sogenannte "Multi-Protocol
>synchronous serial engine" (MPSSE),

Jezt müsste man wissen was auf dem Jtag Interface ab geht.

Doss

Autor: dose (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da fällt mir ein, ich hatte ca. vor einem halben Jahr einen
Email-Kontakt zu einem Prof. aus Spanien oder Portugal. Der hatte den
ARM9 als VHDL Code. Aus Geheimhaltungsgrüden durfte er den VHDL-Code
nicht herausrücken. Leider weiß ich nicht, ob das Jtag Interface
Bestandteil des VHDL-Cores war.

Autor: dose (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: mthomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Betr. JTAG und JTAG an ARM-Controllern gibt es eigentlich schon relativ
viel Code, an dem man sich orientieren kann, um die verschiedenen
Zustaende der "state-machine" zu aktiviern und anzusprechen. Z.B. auf
sourceforge (Projectsuche JTAG, auch fuer "Wiggler"-Hardware) und eine
Application-Note von Atmel (ein AT91 steuert einen anderen AT91 ueber
JTAG an). Aber das reine Interface ist nicht alles: zusaetzlich muss
auch ein Treiber zu einer Debugsoftware (z.B. gdb) erstellt oder aus
Vorlagen (gdb-Quellcode/CVS, avrice, msp-gcc-Projekt) angepasst werden.
Zur Flash-Programmierung sind auch noch controllerspezifische Routinen
zu erstellen (Routine via JTAG ins RAM, Daten paeckenweise via JTAG ins
RAM, fuer jedes Paeckchen Aufruf der Routine "RAM->Flash", vgl.
flash-Tool aus ucLinux). Scheint alles kein Hexenwerk, da man nicht von
Null anfangen muss, aber kostet sicher einiges an Zeit. Fuer das
Hardware-Interface wuerde ich nicht "nur" auf den FT-Chip und deren
JTAG-dll setzen, da die DLL scheinbar nur fuer MS Betriebessysteme
verfuegbar ist (nicht so genau geschaut). Mitstreiter fuer eine eigene
Entwicklung findet  man wahrscheinlich eher bei Nutzern von
Nicht-MS-Systemen, denn fuer Windows gibt es einige nicht allzu teuere
fertige Loesungen. Software selbst kann portabel programmiert werden,
damit alle "froh" werden (ist bei einigen der sourceforge-Projekte so
gemacht).

Autor: Unbekannter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wegen dem gdb-Debugger: Es gibt auch grafische Frontends, z.B. DDD.

Autor: dose (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also die Botschaft von mthomas ist die Hardware beim wiggler belassen
und nur die Software aufpolieren.

Autor: Sepp (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ruhig, Brauner...

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Rufus: Apropos OCD Remote und "ernst gemeinte Windows Versionen":
Deine Ausdrucksweise suggeriert, dass OCD Remote auf Win9x und Co
besser läuft. Was dank dessen Netzwerktauglichkeit dann eigentlich kein
grossen Problem darstellen sollte.

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das soll meine Ausdrucksweise nicht suggerieren; da hab' ich mich
vielleicht etwas ungeschickt ausgedrückt. Ich verwende diese
Windows-Versionen nicht und kann daher keine Aussagen über die
Funktionsweise von OCD {Remote|Commander} darunter treffen.

Das will ich auch nicht näher untersuchen, weil ich mir dieses Zeugs
nicht antun will.

Autor: Clemens Helfmeier (sum)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe mich nun schon einige Wochen intensiv mit den SAM7S-ARM's von
Atmel beschäftigt (AT91SAM7S64 um genau zu sein). Per JTAG kann weder
mein Code, noch der Code aus dem ucLinux (armtool) noch der von
Sourceforge (gdb-jtag-arm) was aus ihm herausquetschen ausser der
Default ARM-IDCODE. Ich habe den Eindruck, dass das, was im Datenblatt
des SAMs steht, stimmt:
"IEEE 1149.1 JTAG Boundary Scan is enabled when JTAGSEL is high. The
SAMPLE, EXTEST and BYPASS functions are implemented. In ICE debug mode,
the ARM processor responds with a non-JTAG chip ID that identifies the
processor to the ICE system. This is not IEEE 1149.1 JTAG-compliant."
Das finde ich sehr ärgerlich. Nun ist man darauf angewiesen den
Debug-Port oder USB zu verwenden - beides unter Windows.
Im ICE-Mode ist das Instruction Register z.B. nicht 4 Bit sondern 3 Bit
breit (siehe .bsd-File). Wer noch weitere Informationen hat, bitte hier
Posten! Ich bin gerne dabei, eine Software für JTAG-Adapter (Serielle
oder Parallele Schnittstelle, vll auch USB) zu schreiben.

Clemens

Autor: XKSascha (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich entwickle zur Zeit in einem größeren Projekt eine günstige
Möglichkeit ARM7TDMI Controller wie den AT921SAM7 über JTAG
anzusprechen. Ist noch in der Anfangsphase, es existieren aber schon
konkretere Pläne. Vorerst für Windows, bei Interesse auch für Linux.
Betatester werden dann sicher gebraucht werden.
Ich hoffe spätestens Ende des Jahres etwas konkreteres vorweisen zu
können.

Autor: Clemens Helfmeier (sum)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo XKSascha,

das finde ich gut. Was hälst du davon, Kontakt miteinander aufzunehmen?
Geteiltes Leid ist halbes Leid ;-)

Hat bei dir schon etwas funktioniert? Register lesen, Status lesen,
o.Ä? Würde mich wirklich interessieren.

schöne Grüße, Clemens

Autor: dose (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo XKSascha,

das klingt gut, das ist ein Meilenstein.

Dose

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Rufus, Du magst das nicht so gemeint haben, aber ausprobieren kann ich
es ja trotzdem. Ich habe deshalb mal ein Exponat aus meinem AMD-Museum
reaktiviert, und siehe da:

OCDremote WinXP: max s=5 (80KHz)
OCDremote Win98: max s=1 (380KHz)

Da OCDremote, wie der Name schon suggeriert, netzwerkfähig ist...
Irgendeine Pentium-Kiste wird sich wohl noch finden lassen. Und die
biegt man ggf. so zurecht, dass OCDremote automatisch hochkommt.

Sicher, es ist nicht der Brüller. Aber spürbar besser.

Autor: dose (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe ein nicht zu Ende geführtes Projekt gefunden.

http://jtager.sourceforge.net/

Ansonsten schon der richtige Weg.

Autor: René König (king)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Robert

Was beinhaltet das Angebot von PLS genau? Ist das die Hardware (UAD2
compact?) oder die Software oder ist das ein Bundle?

Autor: Robert Teufel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Rene,

soweit ich weiss ein Bundle, software in diesem Falle ohne Support, Du
bezahlst fuer die Hardware und bekommst auch die SW.
Bin mir aber nicht absolut sicher, hab das Paket auf einem ARM Forum
gesehen und ware beeindruckt.

Ach ja, hatte dein Link vergessen:
http://www.pls-mc.de/

Robert

Autor: René König (king)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

Na, dann muß ich Herrn Bauch von PLS am Montag nochmals interviewen.
Ich habe nämlich heute ein Angebot von ihm bekommen: 1790.- Euro,
allerdings mit Support für ein Jahr.

Einen guten Eindruck macht das Paket aber, ganz im Gegensatz zu Seggers
JLink-Zeugs.


Gruß,
René

Autor: Robert Teufel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Rene,

moeglich, dass ich da was falsch verstanden hab, aber ich dachte das
Paket fuer 1790 beinhaltet Trace und waere damit das gunestigste mir
bekannt Paket mit Trace Untersteutzung.
Die Sache mit Trace ist allerdings so, dass von dem ARM7 eigentlich nur
Philips eine Trace Unterstuetzung auf dem Chip anbietet, die anderen
bieten nur reines JTAG Debugging an.

Robert

Autor: dose (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe gerade den Elektor Newsletter gelesen. Dort ist von 400Euro die
Rende.

http://www.elektor.de/Default.aspx?tabid=1&mid=386...

Autor: René König (king)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie ich soeben erfahren habe, fehlt der günstigen Version nicht nur der
Support. Diese ist auch in Downloadbaren Code-Größe auf 32 KB begrenzt
und damit wieder eher uninteressant.

Und wenn ich dem Ganzen richtig folgen konnte, liegt die 'richtige'
Version mit Trace (und Support) bei um die 3000,- Euro.

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@MicroMann

Hast Du Dir das MSC-Starterkit besorgt und kannst etwas dazu sagen ?

Autor: René König (king)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich bin zwar nicht MicroMann, habe das Kit hier aber trotzdem seit
einiger Zeit liegen. Meiner Meinung nach ist das rausgeworfenes Geld,
ich habe das als Lehrgeld verbucht:

- Die wollten doch tatsächlich satte 14,50 EUR Versand haben

- IARs EWB überzeugt nicht. Im Vergleich mit anderen mir bekannten
Umgebungen wirkt das auf mich einigermaßen unübersichtlich. Außerdem
ist die Code-Beschränkung nicht alles, denn zusätzlich kannst Du auch
keine Listings erzeugen und alle Libraries kommen ohne Quell. Dafür
wollen die aber alles über Dich wissen, sonst kommst Du nicht einmal
über die Installation hinweg. Beseonders nett fand ich in diesem
Zusammenhang die Ansage, daß das Produkt komplett ohne Support verkauft
wird (für AFAIK ~3000 EUR). Du kannst aber natürlich einen extra
Support-Vertrag abschliessen. ;-)

- Seggers SAM-ICE ist das Allerletzte, da fährst Du mit jedem
Parallel-Port Adapter besser. Daß sich das Gerät mit der Seriennummer
123456 am PC anmeldet, obwohl auch eine echte Seriennummer vorhanden
ist', ist dabei nur die erste unangenehme Auffälligkeit...

Besorg Dir lieber irgendein günstiges Olimex-Board und dazu das Buch
'Embedded System Design on a Shoestring: Achieving High Performance
with a Limited Budget' von Lewin Edwards, da hast Du sicherlich mehr
von.

Der Beitrag spiegelt meine Meinung wieder. Es steht natürlich jedem
frei, das Ganze anders zu beurteilen.

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@René

Vielen Dank für Deinen Beitrag ! Die Kosten sind bei mir kein Problem;
ich suche eine Möglichkeit, ohne viel Zeitaufwand die Hardware zu
testen. Letztlich würde ich dann wohl sowieso GCC einsetzen. Aber bei
IAR persönliche Daten abzuliefern, kommt nicht in die Tüte; vermutlich
haben die dann auch noch irgendwelche Art von Dongle, abgelehnt. Und
keine Listings: wie soll ich denn dann die Compilerfehler finden ???
Andererseits lese ich hier die Beiträge, daß einige Anbieter Bastelware
für gutes Geld anbieten, auch kein Bedarf.

Mir würde es reichen, ein Board mit µC zu haben, in das ich effizient
Programme laden kann - und wenn es mit einer .bat unter DOS läuft; das
ist mir lieber, als mich per Maus durchzuklicken. Debugger brauche ich
auch nicht - habe ich noch nie gebraucht :-)

So muß ich wohl doch noch weitersuchen.
Danke noch einmal !

Autor: Fabian Scheler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ah ... Kosten sind kein Problem. Wenn das so ist, kannst du dich ja auch
mal bei Lauterbach Datentechnik nach einem Trace32 umsehen ;-)

Ciao, Fabian

Autor: Thomas Ploeger (tomdooley)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

hier wurde vom selbstbau eines JTAG ("Wiggler") gesprochen. Hat
jemand ein Schaltbild für einen JTAG. Ich möchte meinen LCP2292 mit
WinArm oder crossworks proggen und habe keine Lust noch mehr Euros für
einen Wiggler in die Hand zu nenehmen.
Ist eh schon alles teuer genug,

Thomas

Autor: Robert Teufel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Thomas,

schau mal in der "Files" section nach
http://groups.yahoo.com/group/lpc2000/files/

Unter JTAG gibts das was.  Keine Ahnung ob das mit Crossworks
zusammenarbeitet aber mindestens gibt as dort schematics.

Robert

Autor: Thomas Ploeger (tomdooley)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Robert,

vielen Dank. Ich werde das gleich mal abchecken.

Gruss

Thomas

Autor: Ralf Brederlow (armcnc)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Thomas,


die meisten günstigen Entwicklungsumgebungen, die ich bisher gesehen
habe, sind in ihrer Codegrösse auf 32, oder weniger, beschränkt. Wenn
diese Begrenzung aufgehoben werden soll, dann wird es richtig teuer.
Hast Du schon mal unter www.armkits.com die Entwicklungssysteme
angeschaut? Sind in der Codegröße ohne Beschränkung, JTAG-Adapter ist
dabei und auch das Flashen ist inbegriffen.
Falls Du interesse hast, dann kannst Du das auch über mich, bei
www.bsm-technik.de beziehen.
Wollte das nur erwähnen weil ich selbst vor einem Jahr bei der Suche
nach einem günstigen System beinahe verzweifelt bin.


Ralf

Autor: Thomas Ploeger (tomdooley)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Ralf,

vielen Dank für die Info.
Ja, die Embest IDE hab ich mir mal angeschaut und sie gefiel mir auch
ganz gut. Da ich aber z.Z. in der Prototypen Phase bin, möchte ich noch
nicht soviel investieren, da der "Schuß auch nach hinten losgehen
kann". Ich habe mir aus dem www ersteinmal Crossworks besorgt und
einen JTAG von Olimex. Ich werde damit mein µC Prototypen fertigstellen
und falls es zur Serie kommt in die Vollen gehen mit NI LabView
Embedded.

Nochmals vielen Dank.

Thomas

Autor: Fabian Scheler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

wie so zum Te..el reden eigentlich immer alle Leute von IDE's und so
einem Zeug? Besonders für ARM-Prozessoren?
Es gibt ein GNU Toolchain für ARM-Prozessoren, make, 100000 freie
Quelltexteditoren, darunter auch richtige IDE-Monster wie Eclipse -
alles freie Software ... wozu (als Hobby-Mikrocontroller-Bastler) eine
kommerzielle IDE???
Wenn es ums debuggen/flashen geht - prinzipiell sollte da doch der JTAG
von Olimex und der GDB ausreichen, was braucht es mehr? Und wer kein
JTAG "mag", der kann sich ja mal Redboot anschauen (ist in eCos
enthalten, das für viele LPC-Derivate verfügbar ist), das ist ein
ROM-Monitor, der auch einen GDB-Stub implementiert.
Klar - wenn man kommerzielle Softwareentwicklung betreibt und die
Entwicklungszeit eben ein ernstzunehmender Kostenfaktor ist, dann
helfen schicke Debugger wie der Trace32 evtl. diese Entwicklungszeit
immens zu verkürzen, aber auch in den muss man sich einarbeiten und
außerdem sollte dann auch der Preis keine Rolle spielen.
Aber selbst dann ist die GNU Toolchain zum Übersetzen immer noch eine
gute Wahl, die dürfte inzwischen auch recht reif sein, schließlich wird
sie ja auch in kommerziellen Projekten eingesetzt (Linux/uC-Linux wird
ja mit der GNU Toolchain übersetzt - ich glaube nämlich nicht, dass
irgendjemand Linux auf den ADS-Compiler portieren will).
Also Ende vom Lied: nehmt die GNU Toolchain + make + z.B. xemacs + gdb
+ JTAG, das sollte reichen.

Ciao, Fabian

Autor: Ppp Mmm (sanic)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Fabian,

die freien Compilersachen funktionieren ja auch bestens, es ist eben
nur das JTAG Programm was murrt. Der Adapter ansich ist nicht langsam,
nur OCDRemote ist etwas lahm auf XP (laut dieser Erfahrungsberichte
hier).
Ich habe mir schon nen Wiggler gebaut und werde demnächst mal anfangen
damit rumzuprobieren.

Grüße,
Patrick

Autor: Daumen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>an Fabian Scheler

im Pirinzip hast du recht doch leider ist dem nicht so. An einer IDE
mangelt es nicht es fehlt die Debug Möglichkeit. Deshalb ist auch das
Thema dieses Beitrages mit der Zusatzfrage Welcher JTAG angehangen. Ich
bin auch auf der Suche nach einer Debug Variante. Von der Hardware ist
der Wiggler funktionsfähig, Rowley hat es bewiesen, nur an einer freien
Software harpert es. Das OCDRemote hat etliche Macken. Man kann z.B.
nicht in den Flash schreiben, was ein Programmieren über das JTAG
unmöglich macht. Man kann nur in den RAM schreiben. Von der
Zuverlässigkeit der Verbindung ganz zuschweigen. Also das OCDRemote
gehört auf den Müll.
Weitere günstige Varianten sind nicht auf getaucht.

Dann gibt es die Variante eines Softwaredebuggers als GDB-Stub in einem
Betriebssystem wie ECOS. Leider habe ich festgestellt, dass die ECOS
Portierung auf die LPC-Chips nicht vollsändig ist und gerade der von
dir erwähnte Gdb-stub fehlt. Ansonsten hättes du recht. Falls jemand so
eine vollständige Portierung hat bitte melden.

Autor: Hubert Hoegl (hubert)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

zum Debuggen von Controllern mit einem ARM Kern kann ich
"OpenOCD" (Open On-Chip Debugger) empfehlen:

    http://openocd.berlios.de

Die Software arbeitet als Server, der Debug-Kommandos
entweder ueber den GNU Debugger GDB oder ueber eine Telnet-Verbindung
entgegennimmt und in JTAG Bitstroeme umsetzt.

Ich habe OpenOCD schon mit Philips LPC2, Analog Devices ADuC7020,
Oki 67Q4002 und Atmel AT91SAM7 ausprobiert. Sicher gehen auch andere
ARM7TMDI und ARM7TDMI-S.  Auch ein paar ARM9 gehen, z.B. der Atmel
AT91RM9200.

Man kann zur Zeit folgende JTAG Interfaces anschliessen:

   - den Wiggler (auch im Eigenbau)
   - den Amontec Chameleon Pod in einer von zwei Konfigurationen:
         Wiggler oder JTAG Accelerator (siehe www.amontec.com)
   - den FT2232C USB Controller (eine moegliche Ausfuehrung ist
     hier:
http://www.fh-augsburg.de/~hhoegl/proj/volksmikro/...

Da die Software offen ist (GPL-lizenziert wie Linux) kann man
eigene JTAG-Interfaces dazufuegen. OpenOCD laeuft unter
Linux und Windows (unter Windows braucht man Cygwin, siehe
www.cygwin.com).

Gruesse,

Hubert

Autor: dose (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe jetzt den Raven als Jtager. Die Zuverlässigkeitsproblem sind
die gleichen wie beim Wiggler. Er läuft nur etwas schneller, wenn er
läuft. Es hängt von der Tagesform etwas ab.

Die UNI aus Dresden hat auch schon ein Aktivität für den ARM7 gelestet
und will es für den ARM9 erweitern.

Autor: dose (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Clemens Helfmeier (sum)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe mir jetzt einen USB-Jtag Adapter gebaut.
Dazu einfach einen FTDI2232C nehmen, anschließen und fertig. Als
Software kommt dann OpenOCD zum Einsatz. Flashen funktioniert wohl bei
LPC und SAM7S, bei letzteren kann ich es sogar bestätigen.
Debuggen per Insight auch möglich. Ich bin derzeit dabei, ein paar
Scripte für Linux zu bauen, die den Compilier-Flash-Debug-Prozess etwas
vereinfachen.

Schöne grüße, Clemens

Autor: MicroMann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Funktioniert eigentlich der Parallelport-Wiggler mit Linux zusammen
einwandfrei ? Oder gibt es da auch Fehler ohne Ende und
Performance-Probleme wie unter WinXP ?

Bin am Überlegen das Debug-Problem mit Linux zu umschiffen. Denn wo ich
die Firmware entwickele ist ja zunächst mal Wurscht.

@ Clemens
Wie sieht es mit der Zuverlässigkeit und Geschwindigkeit der FT2232C
USB Lösung unter Windows XP aus ? Mit dem Teil kann man doch alles
proggen, was man mit dem Wiggler auch bedienen kann. Oder braucht man
da spezielle Zieldevice-Firmware / Treiber ?
Gibts da auch fertige Lösungen zum Kaufen ?

Autor: mthomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: MicroMann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Anleitrung ist cool :)

Taugt der Amontec JTAGkey unter XP ? Hat das jemand in Betrieb ?

Autor: Florian Baumann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo
Was haltet ihr von Tantino von Hitex. Hat jemand schon Erfahrung damit
gesammelt.
Gruß Flo

Autor: GEO (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi, arbeite mit der Entwicklungsumgebung von Hitex. Die Boards von Hitex
sind die gleichen wie die Keilboards. Habe dazu die Boards mit dem
LPC2138 und dem LPC2148. Boards sind sehr gut!!!
Mit dem Tantino (JTAG Schnittstelle) kann man entweder mit dem Keil
oder mit Hitop,der IDE von Hitex arbeiten.
Hatte jetzt bei größeren Projekten schon des öfteren Probleme mit der
IDE Hitop.
z.B. mit Libary einbinden oder mit dem Aufteilen des Programms in
mehrere Module. IDE stürtzt des öfteren auch manchmal ab.
Wenn man von den Fehlern absieht aber ganz angenehm damit zu arbeiten.
Ähnelt dem Keil.
Sehr hilfreich ist der Start Easy von Hitex. Ein Programm zur erzeugung
des Startup codes (ähnlich dem Dave von Infineon)

Gibts vom Keil einen Startcode Generator zu den LPCs???

Bzw. würde mich auch interessieren ob andere mit Hitop arbeiten und ob
auch hier des öfteren Probleme auftreten???
MfG

Autor: dose (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Keine Ahnung über die Funktionalität,
wollte nur in die Runde schmeißen.


http://www.devlf.com/armdbg.html

Autor: Dose (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich habe auf der Seite von Macraigor einen USB2Wiggler gesehen. Die 
freie Software von Macraigor unterstützt ihn auch schon. Hat jemand eine 
Ahnung ob dieser Debugger zu dem USBJtager kompatibel zu den Olimex 
debuggern ist?

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Keine Ahnung, aber ist das Teil denn so günstig, daß es sich lohnt, 
darüber nachzudenken? Das FT2232-basierende OpenOCD-Design besticht ja 
gerade durch seinen günstigen Preis ... und wird mittlerweile auch von 
kommerziellen IDE-Herstellern direkt unterstützt, wie beispielsweise von 
Rowley mit Crossworks for ARM 1.7

Autor: Dose (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nein die Frage ist andersherum. Kann die Macraigor Software OCD 
Commander den Olimex JATG ansprechen?
Ich habe einen ARM, der noch nicht von openOCD unterstützt wird, jedoch 
von Macraigor.

Autor: Jörn Kaipf (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Dose:
was für einen ARM hast du denn?

Autor: Dose (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
NS9360 von Netsilicon. Das ist ein ARM9

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hmm. Zwei Möglichkeiten:
1 - Ausprobieren
2 - Analysieren, was für Devicetreiber in hwsupport-2.22-windows.exe
    enthalten sind. Wenn tatsächlich der "Olimex-JTAG-Adapter" auf
    Basis des FT2232 unterstützt würde, wären FTDI-Devicetreiber
    enthalten.

Das halte ich jedoch für nicht sehr wahrscheinlich.

Autor: Dominic R. (dominic)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Macraigor hat wohl keinerlei Interesse daran, andere Hardware mit ihrer 
Software zu unterstützen - ein Großteil des Aufwands liegt in der 
Software, die Hardware selbst ist in den meisten Fällen sehr einfach.

Der OpenOCD sollte den NS9360 sehr wohl unterstützen - ARM926EJ-S wird 
seit Anfang diesen Jahres unterstützt. Ein Problem könnte allenfalls ein 
Big-Endian Target sein - der CFI Flash Code hat hier scheinbar noch ein 
paar kleinere Bugs, allerdings sind das keine gravierenden Probleme, die 
nur gründlich getestet werden müssten.

Gruß,

Dominic

Autor: Dose (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe vor kurzem einen Praktikanten angesetzt. Er hatte es nicht zum 
Laufen bekommen.

Autor: Dominic R. (dominic)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Heh, das ist was anderes - die Konfiguration des OpenOCD ist defintiv 
aufwendiger als die eines proprietären Debuggers. Das liegt allein schon 
an der Vielzahl unterstützter JTAG Interfaces, aber auch daran, dass mir 
bei der Entwicklung maximale Flexibilität über einfach Handhabung ging.

Den ARM926 Support konnte ich bisher selbst auf NXP LPC3180 und Atmel 
AT91SAM9260 testen, mit einem Freescale i.MX21 wurde er wohl auch schon 
erfolgreich getestet.

Autor: Dominic R. (dominic)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kleiner Nachtrag: Macraigor schreibt, dass es sich bei dem USBWIGGLER um 
ein USB 2.0 Hi-Speed (480mbit) Interface handelt - damit laesst sich ein 
FT2232 sicher ausschliessen, da dieser nur USB2.0 Full-Speed (12mbit) 
unterstützt.

Autor: dose (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo  Dominic R.

ich habe mich mal selbst hingesetzt. Ich habe es geschafft Addressen 
auszulesen.

Es scheint so als würde openocd nicht alle GDB Anfragen richtig 
abarbeiten.
Die Initialisierung des GDB´s erfolgt über ein script.

Bei der Abarbeitung des Scriptes erhalte ich:

Warning:jtag.c:1068 jtag_read_buffer(): value captured during scan 
didn`t pass the requested check: captured:0x00 check_calue:0x01 
check_mask:0x0f

Autor: Dominic R. (dominic)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

das Problem wurde in Revision 144 gefixed, die aktuelle Version von 
Yagarto (ich vermute mal, dass du die benutzt) basiert aber noch auf 
141. Du kannst entweder die aktuellen SVN Sourcen selbst übersetzen 
(setzt MinGW oder Cygwin voraus), auf einen neuen Yagarto Release warten 
(dürfte in einigen Tagen, max. 1-2 Wochen so weit sein), oder die 
Version von Jörn Kaipf ausprobieren, die er in 
Beitrag "at91sam7s512 und openocd" geposted hatte.

Wenn du Probleme damit hast kann ich dir auch eine Version ohne Cygwin 
übersetzen, muss dazu aber mein w2k Image mal wieder anwerfen...

Gruß,

Dominic

Autor: Dominic R. (dominic)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
/me mag autotools & GNU Toolchain:

vmaster@magrathea:~/openocd/mingw/trunk$ uname -a
Linux magrathea 2.6.22-ck1 #2 PREEMPT Sat Jul 28 16:14:50 CEST 2007 i686 
GNU/Linux

./bootstrap
./configure --host=i586-mingw32msvc --enable-parport 
--enable-ft2232_ftd2xx --enable-amtjtagaccel --enable-gw16012 
--enable-presto --enable-parport_giveio 
--with-ftd2xx=/home/vmaster/jtag/cdm_2_02_04/i386/
make

Produziert:
http://mmd.ath.cx/openocd/openocd_mingw_r188.exe

Ohne Garantie - vmware laesst sich für meinen 2.6.22er Kernel gerade 
nicht übersetzen, da ist wohl wieder ein UPdate nötig - aber prinzipiell 
sollte die Binary ohne externe Abhängigkeiten funktionieren.

Gruß,

Dominic

P.S.: Der OpenOCD unterstützt in R188 auch ETM+ETB des LPC3180 ;)

Autor: dose (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Dominic,

es sieht schon besser aus. Es läuft noch nicht korrekt. Ich bleibe dran. 
Muss erst einmal heute was schaffen.

Ich habe hier den Raven und kann mit dem Raven vergleichen.

Mit dem Raven habe ich 147664 bits/sec

und mit dem OLIMEX schaffe ich bei JTAG Speed=0
106134bits/sec

Autor: dose (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der OpenOCD unterstützt in R188 auch ETM+ETB des LPC3180 ;)

Keine Ahnung was ETM und ETB ist. Klingt zu mindest interessant.

Autor: Dominic R. (dominic)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ETM: Embedded Trace Macrocell - ein Trace Port, mit dem Daten- und 
Befehls-Trace möglich ist, das heisst man sieht sowohl ausgeführte 
Befehle als auch die Daten, die bei Load/Store Anweisungen verarbeitet 
wurden.

ETB: Embedded Trace Buffer - On-Chip Puffer, der die Daten der ETM via 
JTAG zur Verfügung stellt, so dass kein teures Trace Equipment nötig 
ist.

Die Ausgabe sieht dann z.B. so aus:
--- tracing enabled at 0x800007fc ---
0x800007fc      0xe12fff1e      BX r14
0x800008b0      0xe2833121      ADD r3, r3, #0x40000008
0x800008b4      0xe3a02080      MOV r2, #0x80
0x800008b8      0xe5832000      STR r2, [r3]
0x800008bc      0xe3a03902      MOV r3, #0x8000
0x800008c0      0xe2833004      ADD r3, r3, #0x4
0x800008c4      0xe1833783      ORR r3, r3, r3, LSL #0xf
0x800008c8      0xe3a02040      MOV r2, #0x40
0x800008cc      0xe5832000      STR r2, [r3]
0x800008d0      0xebffffb7      BL 0x800007b4
0x800007b4      0xe1a0c00d      MOV r12, r13
0x800007b8      0xe92dd800      STMDB r13!, {r11, r12, r14, r15}

Gruß,

Dominic

Autor: dose (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Domenic R.

ich habe gerade weiter getested.

Das GDB init script wird noch nicht richtig abgearbeitet.
Folgende Befehle weigert sich openOCD:

monitor reg ctrl
monitor reg ctrl =0x50058

Fehlermeldung:
 register ctrl not found in current target


monitor long 0x90600104 = 0x33313333
Fehlermeldung:
command long not found

Autor: Dominic R. (dominic)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"monitor" leitet Befehle direkt an das Remote Target weiter (Remote mit 
Bezug auf GDB, in diesem Fall OpenOCD). Das Target muss dann einen 
Interpreter mitbringen, der diese Befehle versteht - in deinem Fall 
weiss der OpenOCD leider nicht, was diese Befehle bedeuten sollen.
Da du den Raven einsetzt vermute ich, dass du ocdremote verwendest.

Das Equivalent zu "monitor long" wäre "monitor mww <address> <value>". 
Zum Speicherzugriff existieren:
md[bhw] <address> [count]: lesen von byte, halfword (16 bit) oder word 
(32 bit), optionales Argument [count] gibt die Anzahl an.
mw[bhw] <address> <value>: schreiben von byte, halfword (16 bit) oder 
word (32 bit)

Welches Register mit "reg ctrl" gemeint ist weiss ich leider nicht.

Gruß,

Dominic

Autor: dose (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Domenic,

genau, momentan benutze ich Raven mit ocdremote. Dieser ist auch für den 
NS9360 beschnitten. Ich kann diesen Debugger für keinen anderen 
Controller verwenden. Da ich auch auf andere ARMs abziehle, und nicht 
für jeden ARM einen eigenen Debugger mir anschaffen will, will ich 
openOCD einsetzen. Mit einem Raven ist es sehr knapp. Wenn man ein 
Praktikanten mit im Projekt hat, dann gibt man den Debugger ungern aus 
der Hand.

Mit dem Register ctrl habe ich auch noch nie gearbeitet.
Ich vermute:

System control processor (CP15) registers
The system control processor (CP15) registers configure and control most 
of the options in the ARM926EJ-S processor. Access the CP15 registers 
using only the MRC and MCR instructions in a privileged mode; the 
instructions are provided in the explanation of each applicable 
register. Using other instructions, or MRC and MCR in unprivileged mode, 
results in an UNDEFINED instruction exception.

CP15 uses 16 registers.

R1: Control register
Register R1 is the control register for the ARM926EJ-S processor. This 
register specifies the configuration used to enable and disable the 
caches and MMU (memory management unit). It is recommended that you 
access this register using a read modify-write sequence.

Autor: Dominic R. (dominic)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

an das CP15 control register dachte ich auch erst, aber der Wert 0x50058 
ist nicht ganz richtig, Bits 6-3 sind Reserved, und sollten mit 1 
geschrieben werden. Mein LPC3180 hat 0x50078 nach dem Reset im CP15 
Control Register.

Der OpenOCD bietet zum Zugriff auf CP15 Register den Befehl:

arm926 cp15 <opcode_1> <opcode_2> <CRn> <CRm> [value]

so kann z.B. das ID Register ausgelesen werden
> arm926 cp15 0 0 0 0
0 0 0 0: 41069264

oder das Configuration Register geschrieben werden
> arm926 cp15 0 0 1 0 0x00050078
0 0 1 0: 00050078

Gruß,

Dominic

Autor: dose (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Dominic,

Entschuldigung der Wert ist

monitor reg ctrl = 0x500F8


Das kommt gut. Wenn dein LPC3180 den Wert 0x50078 hat, dann wurde das 
Bit 7 auf High gesetzt.

Als Erklärung für bit 7 habe ich gefunden:

[7] B bit Endianness
0 Little endian operation
1 Big endian operation
Set to the value of BIGENDINIT on reset.

Autor: dose (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Dominic,

ich habe es geschafft!!  Es gibt noch einen Error, jedoch habe es 
geschafft das Programm in den RAM zu laden und zu starten.

Autor: dose (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
die Transfer rate ist auf 53067 bits/s

Eine Idee warum nur noch die Hälfte?

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.