Hallo,
kennt jemand eine billige Alternative zu JTAG ICE u.ä. für mega128?
Programmieren geht z.B. super billig über ISP vom LPT-Port. Gibt es was
für JTAG?
Macht http://www.olimex.com/dev/avr-jtag.html es gut?
Das Olimex-Teil ist ein x-beliebiger Clone, wie du ihn dir auch mit
einem ATmega16, einem 7,3xx-MHz-Quarz, einem MAX232 und bissel
Hühnerfutter selbst löten kannst. Benutzt wird die Atmel-Firmware,
die du als Kunde (auf Grund der Atmel-Lizenzbedingungen) selbst da
rein bringen musst.
Für einen ATmega128 tut sowas, einen ATmega1281 kannste damit aber
nicht mehr debuggen, dafür ist das JTAG ICE mkI zu alt. Für neuere
Prozessoren geht der AVR Dragon als preiswerte Variante, aber der ist
zum Debuggen auf 32 KiB limitiert.
Schaltpläne gibt's genug davon (das Ding ist trivial, wenn man die
Pegelwandler weglässt). Die Firmware gibt's nur als Bestandteil
von AVR Studio. Der gängige Weg war/ist, dass man sich einen AVR910-
kompatiblen Bootloader in den ATmega16 popelt und danach avrprog.exe
anwirft und ihm sagt, dass es bitteschön die Firmware von diesem
JTAG ICE ,,upgraden'' möge.
> @Ulrich: Ist das einer von der neuen Generation, mit denen man> Breakpoints setzen und die Register/Speicher ansehen kann ?
Register anschauen kann man sich auch über die serielle Schnittstelle,
gerade bei 8-bittern geht das sehr einfach, und zwar ohne dass man das
(meist zeitkritische) Programm anhalten muss.
Hallo,
ich nutze WinAvr + Avr Studio für die Entwicklung von AVR-Programmen.
Mehr und mehr kommt dabei jetzt C++ zur Anwendung. Das Debuggen unter
Avr-Studio ist auf Grund der Inkompatibilitäten von AvrStudio und
avr-gcc
so gut wie nicht möglich.
Gibt es eine Beschreibung wie man mit
- avr jtag ice mkII (usb)
- avrice
- avr-gdb
- avr-insight oder ist DDD unter Windows eine Alternative ?
- atmega 128
auf der Hardware unter Windows debuggen kann. Auch ein einfaches
Beispielprojekt würde mir schon sehr helfen.
Die Beschreibung
http://www.fh-augsburg.de/~hhoegl/doc/avr/avrquick/avrquick.pdf
von Herr Hoehgl geht dabei leider nicht ins Detail.
Vielen Dank
Dirk
Die Inkompatibilitäten sind aber nicht zwischen AVR Studio und AVR-GCC,
sondern sie bestehen schlicht und ergreifend darin, dass AVR Studio
kein C++ unterstützt.
DDD geht nicht unter Windows.
Was genau funktioniert den bei dir nicht? Hast du zumindest das
Prinzip verstanden, wie die Komponenten ineinander greifen?
Hallo Jörg,
AVR Studio unterstützt C++ quasi nur halb, ältere Versionen von AVR
Studio
und avr-gcc (3.4.6) arbeiteten halbwegs zusammen (über den this
pointer).
Allerdings hast du recht von C++ Unterstützung kann man nicht sprechen.
Soweit ich weiß gibt es eine DDD Version (Cygwin) die unter Windows
startet,
ich hatte sie mal im Zusammenhang mit ARM uC's testen wollen, sie lief
aber
quälend langsam.
Das Prinzip habe ich schon verstanden, ich möchte nur wissen bevor ich
den Umstieg von AVR Studio auf AVR Insight vornehme, ob das alles auch
richtig
funktioniert und man damit gut arbeiten kann. Im Internet wird oft
beschrieben das prinzipiell alles funktioniert aber konkret wird, wie
gesagt, das C++ Debugging nicht beschrieben.
Letztendlich würde ich gern auf einem Beispiel aufsetzen.
C++-Debugging wird prinzipiell von GDB unterstützt (anders als von
AVR Studio selbst), von der Hinsicht wirst du also keine Probleme
zu befürchten haben. Achte drauf, dass du als Debugformat "stabs"
auswählst, der AVR-GDB kommt mit DWARF-2 in keiner Hinsicht zurecht.
AVaRICE ist die schwächste Stelle des Ganzen. Zwar ist im Prinzip
das Handling des JTAG ICE in der Appnote AVR067 beschrieben, da es
aber letztlich ausschließlich in Interaktion mit AVR Studio durch
die Autoren selbst getestet wird, schleichen sich da gerne mal Bugs
und Ungereimtheiten ein, da man aus der Appnote nicht alles
entnehmen kann, was man sich wünschen würde. Mittlerweile geht
AVR067 schon einiges besser als zuvor, allerdings wird erst die
nächste Version soft breakpoins können (und damit mehr als drei).
In dieser Hinsicht sitzt du aber ohnehin auf dem Trockenen, da der
ATmega128 keine soft breakpoints unterstützt.
Auch geht AVaRICE + GDB nicht ganz so ,,flüssig'' an manchen Stellen
wie AVR Studio. Andererseits benutze ich es den lieben langen Tag
auf Arbeit und möchte in keiner Hinsicht mit AVR Studio tauschen. ;-)
Ich finde das nämlich in vielen Dingen unlogisch aufgebaut. Vermutlich
kann man das nur benutzen, wenn man vorher von Microsoft Visual
Affentheater hinreichend vorgeformt worden ist...
Danke ich werde es mal mit mit AVARICE + GDB versuchen. Aber ich habe
noch
ein paar Fragen:
Wird auch Debugwire für andere AVR-Derivate unterstützt ? Falls ich
parallel
doch noch mit AVR-Studio arbeiten möchten, wie kann ich die USB-Treiber
Installation/Deinstallation automatisieren, ich habe irgendwo gelesen
das
sich die USB Treiber von AVR-Studio und AVARICE beißen.
P.S.: Der Threadname ist vielleicht irreführend für meine Fragen, es
geht
mir nicht in erster Linie um billig, aber es sollte doch kostengünstiger
sein als z.B. IAR EVAVR und vor allen Dingen sollte es funktionieren.