-         
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 14

Thema: N-Link ARM JTAG - Hopp oder top?

  1. #1
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.06.2004
    Ort
    Bad Schussenried in Oberschwaben
    Alter
    28
    Beiträge
    1.461

    N-Link ARM JTAG - Hopp oder top?

    Anzeige

    Hi

    Da ich ein bisschen in die ARM-Geschichte einsteigen will dachte ich mir; "Gut, legst dir mal nen JTAG für die Dinger zu".
    Klar, der AT91SAM7S64, den ich jetzt zum spielen hier habe hat einen Bootloader über UART, aber ich wollte was gescheites zum Programmieren und auch zum Gebuggen.

    Und wie der Himmel so will fand ich bei ebay den N-Link ARM JTAG von OLIMEX
    (http://www.micro4you.com einfach nach N-Link suchen)

    Frage: Taugt das Teil was? Ich meine mit $50 ist es ja nicht ganz billig.
    UND, wenn nein, was würdet ihr empfehlen?

    Viele Grüße,
    Tobi
    http://www.tobias-schlegel.de
    "An AVR can solve (almost) every problem" - ts

  2. #2
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    21.12.2004
    Alter
    34
    Beiträge
    165
    falls es fuer den Anfang was billigeres sein soll, und du in der Lage bist LQFP-48 zu loeten; dann wuerde ich dir ein JTAG auf Basis des FT2232 empfehlen.

    Ist von der Schaltung supereinfach. Einfach die Jtag Pins (TCK, TMS...) von PortA des FT2232 ueber ein paar Widerstaende an nen Connector legen und den Rest laut Datenblatt aufbauen.
    Kostet dich einen FT2232 (8.80E@reichelt) ein paar Widerstaende, ne Hand voll Kondensatoren, nen Quarz und ne selbstgemachte Platine.
    Empfehlenswert ist auch noch nen 3 Pin Header, damit kann man dann gleich den Debugoutput der CPU an den Rechner uebertragen; der muss dann natuerlich an PortB.


    Das Ding hat dann aber keine Levelkonvertierung. Aber falls dein Controller 5V kompatibel ist sollte das kein Problem sein. Die AT91SAM-Serie schafft das. Kannst auch die Levels auf 3.3V stellen, ist auch im Datenblatt erklaert.


    Ist natuerlich die Frage welche Entwicklungsumgebung du benutzen willst. Hab das ganze bis jetzt nur in Zusammenarbeit mit OpenOCD getestet. Und das funktioniert natuerlich wunderbar.

    Falls du oft mehrere Seriell-USB Wandler benutzt kannst du fuer die Luxusvariante auch noch ein kleines EEPROM auf die Platine packen. Damit der Rechner immer weiss welcher der Adapter nun das JTAG ist.


    Fertigen Schaltplan kann ich jetzt zwar nicht liefern, der wird sich aber wahrscheinlich ueber google finden. Kann man mit n bisschen Denken auch aus dem FT2232 Datenblatt nehmen



    Sorry fuer die wirre Schreibweise...

  3. #3
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.06.2004
    Ort
    Bad Schussenried in Oberschwaben
    Alter
    28
    Beiträge
    1.461
    Hi

    Der FT2232 gefällt mir ja mal ausserordentlich gut!
    Kann ich den einfach zum programmieren von ARMs benutzen (Also von solchen, die "5V-resistent" sind)?
    Das wäre ja dann absolut supergenial, denn das wäre unabhängig von der Zielhardware und absolut universell...

    "Und das geht wirklich?!"

    Man wird wohl einen speziellen FTDI-Treiber brauchen, oder?

    Ich habe ehrlichgesagt keinen blassen Schimmer von ARM Entwicklungsumgebungen.
    Was muss die können um den FT2232 zu unterstützen?

    VLG Tobi
    http://www.tobias-schlegel.de
    "An AVR can solve (almost) every problem" - ts

  4. #4
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    21.12.2004
    Alter
    34
    Beiträge
    165
    die Treiber sind die FTDI Standard Treiber, du brauchst zusaetzlich noch openOCD. Dann kannst du einfach mit ein paar Befehlen flashen, und via Telnet kannst du debuggen.
    Das ganze kann man afaik zB in eclipse einbauen. Persoenlich nutze ich einfach nur die Kommandozeile getrennt von kdevelop, war bis jetz einfach zu faul das ganze da irgendwie zu integrieren.
    Bei winarm (vgl. winavr) sollte eigentlich alles dabei sein was du brauchst.

    Lies einfach mal hier weiter: http://www.siwawi.arubi.uni-kl.de/av...tro/index.html

  5. #5
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.06.2004
    Ort
    Bad Schussenried in Oberschwaben
    Alter
    28
    Beiträge
    1.461
    HI.

    Das hört sich echt gut an. Der FT mit passender USB-Büchse ist schon auf der Bestellliste.

    Unter welchem Punkt wurd denn JTAG im FT2232-Datasheet geführt?

    VLG Tobi
    http://www.tobias-schlegel.de
    "An AVR can solve (almost) every problem" - ts

  6. #6
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    21.12.2004
    Alter
    34
    Beiträge
    165
    soooo, erstmal sorry das ich immer recht lange brauch mit einer Antwort; zumindest sollten die Antwortbenachrichtigungen nun wieder bei mir ankommen, hab nun nen aktiven Mailaccount eingetragen...

    im Datenblatt steht jetzt nicht sooo viel zum Thema JTAG, halt nur die Pinzuordnungen von TCK TDI TDO und TMS. Mehr braucht man ja normal auch nicht; irgendwo in irgendwelchen Appnotes findet man sicher mehr zum Thema MPSSE (Multi-Protocol Synchronous Serial Engine). Irgendwo in der Diplomarbeit zu OpenOCD findet sich wahrscheinlich naeheres => http://openocd.berlios.de/thesis.pdf


    http://www.fh-augsburg.de/~hhoegl/pr...g/usbjtag.html
    Da gibt es 2 unterschiedliche Varianten, eine Luxusvariante mit allem Schnickschnack und die einfach Variante die ich gebaut hatte, nur das ich in die JTAG Verbindungen noch Strombegrenzungswiderstaende eingebaut habe.

  7. #7
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    18.03.2004
    Beiträge
    111
    Ich habe mir ebenfalls einen JTAG Adapter mit einem FT2232C und 2 ADUM1401CRW gebastelt. Diese Levelconverter /Schutztreiber sind deutlich schneller als die auf http://www.fh-augsburg.de/~hhoegl/pr...g/usbjtag.html verwendete Variante.
    Ich habe die dort und im Datenblatt des FT2232 verwendete Pinbelegunf für JTAG verwendet, die ja von der Pinbelegung des Amontec Teils abweicht.
    Wie muss meine .ini File aussehen? Oder kann ich meinen Adapter als Amontec oder Olimex anmelden?
    Muss man mit MProg von FTDI das EEPROM neu beschreiben?

  8. #8
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    21.12.2004
    Alter
    34
    Beiträge
    165
    uuuh. Ich hab meine openocd.cfg mehr oder weniger per Try and error zusammengepfuscht.
    Ist nicht sehr huebsch aber vielleicht hilft es ja ein wenig
    fuer den adapter relevant duerften eigentlich nur die 2 Zeilen interface und ft22.... sein.
    Code:
    telnet_port 4444
    gdb_port 3333
    
    daemon_startup reset
    
    interface ft2232
    ft2232_vid_pid 0x0403 0x6010
    #ft2232_layout "olimex-jtag"
    
    jtag_speed 5
    
    #reset_config trst_and_srst srst_pulls_trst
    reset_config srst_only
    
    jtag_device 4 0x1 0xf 0xe
    #jtag_device 5 0x1 0x1F 0x1
    
    target arm7tdmi little run_and_halt 0 arm7tdmi
    
    run_and_halt_time 0 30
    working_area 0 0x00200000 0x4000 nobackup
    flash bank at91sam7 0 0 0 0 0

  9. #9
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    18.03.2004
    Beiträge
    111
    Hast du das EEPROM irgendwie beschrieben?
    Und welches Layout hast du verwendet?

  10. #10
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    21.12.2004
    Alter
    34
    Beiträge
    165
    ich habe garkein eeprom auf meinem JTAG (meins entspricht ungefaehr dem Protype1 von der FH Augsburg Seite); das hat sich zwar mittlerweile als Fehler herausgestellt, aber benoetigen tut man das nicht zwingend.
    Man hat mit eeprom nur den Vorteil das man das JTAG eindeutig als JTAG ausweisen kann, und openocd dann immer genau dieses verwendet. Wenn man mehrere FT2232 Boards verwendet um mehrere serielle Schnittstellen zu haben, kommt man frueher oder spaeter in die Situation das irgendwas am JTAG haengt; was man nur durch abklemmen vom USB loesen kann.
    Und dann hat man das Problem das openocd nicht weiss auf welchen der Boards nun das JTAG ist. Dann heisst es alle Programme schliessen, alle Boards abziehen und in der richtigen Reihenfolge wieder anklemmen.

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •