PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Programmieren über JTAG-Interface und AVR Studio?



ich_nicht_du
26.02.2009, 08:20
Hallo,

seit einiger Zeit arbeite ich mit einem Programmer der an den LPT-Port meines Rechners angeschlossen ist. Als Software verwende ich Bascom.
Das funktioniert alles ganz gut und ich hab auch schonmal was größeres damit umgesetzt.

Da ich aber auch mit meinem Laptop gerne Programmieren möchte (leider kein LPT-Port da!) und auch auf AVR Studio umsteigen will, benötige ich eine Alternative.

Frage 1: LPT-Programmer und AVR Studio bekommt man nicht dazu zusammenzuarbeiten, oder? Also man braucht einen Programmer mit USB oder COM?

Im Datasheet des ATMEGA16 steht:
JTAG (IEEE std. 1149.1 Compliant) Interface
– Boundary-scan Capabilities According to the JTAG Standard
– Extensive On-chip Debug Support
– Programming of Flash, EEPROM, Fuses, and Lock Bits through the JTAG Interface

Bedeutet das also dass man über das JTAG Interface den Controller programmieren kann?

Ich bin beim Suchen auf diese Seite gestoßen: http://www.uc-projects.com/
Unter Projekte gibt es einen JTAG-Adapter zum (günstigen!!) Nachbau. Das wäre technisch gesehen überhaupt kein Problem für mich.
2. Frage: Könnte ich mit diesem Adapter dann sowohl Debuggen als auch Programmieren? Oder verstehe ich da was falsch?
Unterstützt AVR-Studio das?

Zur 3. Frage: In Ebay habe ich das gefunden:
http://cgi.ebay.de/USB-2-0-auf-Seriell-Com-RS232-Sub-D-9-Adapter-Kabel-CD_W0QQitemZ220367789971QQcmdZViewItemQQptZDE_Tech nik_Computerzubeh%C3%B6r_Kabel_Adapter?hash=item22 0367789971&_trksid=p3286.c0.m14&_trkparms=72%3A1229|66%3A2|65%3A12|39%3A1|240%3A13 18
Würde es funktionieren falls ich das selbstgebastelte Teil an diesen Adapter dranhänge?


Wie schauts Geschwindigkeitsmäßig bei diesen Sachen aus? Geht das so einigermaßen oder dauert das Proggen ewigkeiten?


Ist das Alles so möglich oder hab ich etwas wichtiges übersehen?

Vielen Dank schonmal für eure Antworten!

maw_hn
26.02.2009, 08:57
Hallo "ich_nicht_du",

die Frage ob dein LPT-Programmer auch mit AVR Studio funktioneren würde, kann ich dir leider nicht beantworten.

Der Programmer von uc-projects.com verspricht vollständig kompatibel zu JTAG-ICE zu sein. Damit würde er mit AVR Studio funktionieren.

Der USB-RS232 Konverter sollte funktionieren. Allerdings sollte es auch kein Problem darstellen auf dem Schaltplan von uc-projects den RS232-Chip durch einen USB-Chip (zB FTDI FT 232 RL) zu ersetzen. Dann sparst du dir den Zwischenadapter.

Vorsicht: Wenn du debuggen willst musst du meines Wissens C bzw. ASM proggen.
@FORUM: BITTE KORRIGIERT MICH WENN ICH FALSCH LIEGE!
Wenn du in BASCOM proggst kannst du meines Wissens lediglich programmieren, nicht debuggen.

Grüße,

Marco

pacer_one
26.02.2009, 09:40
Hallo,
soweit ich weiß, ist die JTAG-Schnittstelle von Atmel nicht offen.
Außerdem ist es falsch wenn auf der besagt Webseite behauptet wird, dass die Software vom AVR-Studio bereitgestellt wird. Für mich Murx was dort steht.

Es gibt zwar einige Open Source Projekte, aber keines bietet den vollen Funktionsumfang des Atmel-Debuggers.
Das bekannteste ist sicher das Evertool:
http://www.siwawi.arubi.uni-kl.de/avr_projects/evertool/index.html

Ich hatte erst vor mir den USB-Prog zu kaufen:
http://shop.embedded-projects.net/product_info.php/info/p6_usbprog-v3-0--Adapter-vormontiert-.html
Leider musste ich dann doch feststellen, dass nicht jeder Chip unterstützt wird. Auch scheint man dieses Projekt nicht ernsthaft weiterzuverfolgen.

Deswegen habe ich mir jetzt den AVR-Dragon bestellt. Für Studenten nur den halben Preis.
http://www.eproo-student.de/index.php?page_id=10
Er hat zwar die Einschränkung die 'großen' MCs nicht debuggen zu können, aber ansonsten kommt er auch mit debug-wire klar.

Das man damit nicht bascom debuggen kann, sollte ja klar sein, schließlich versteht das AVR-Studio nicht Bascom.

Von irgendwelchen Selbstbaulösungen kann ich eigentlich nur abraten. dazu ist das Thrma einfach zu komplex. Man ist nachher nur noch mit Fehlersuche beschäftigt und kommt nicht zu seinem eingentlichen Projekt.

Edit:
muss mich da berichtigen: Das Evertool-Projekt ist komptibel zum JTAGICE, die Hardware holt sich die Firmware über ein Update aus dem AVR-Studio. Allerdings scheint es noch keine JTAGICE mk2-kompatible Hardware zu geben. Hier mehr dazu:
http://www.embedded-projects.net/index.php?page_id=135

Falls es dich interessiert, da möchte jemand ne Sammelbstellung machen:
http://www.mikrocontroller.net/topic/126928#new

ich_nicht_du
26.02.2009, 10:27
Hallo nochmal ;-)

erstmal Vielen Dank für die Antworten! :-)

Ob das mit Bascom läuft ist erstmal egal, da ich dann eh AVR Studio verwenden werde. Programmieren tu ich schon länger in Assembler das ist auch kein Problem.

Der AVR-Dragon wäre auch noch im richtigen Preisbereich!
Mein Atmega (atmega16) steht zwar hier ned unter den unterstützten Geräten, aber andere Seiten im Internet sagen dass es geht und ich sehe auch keinen Grund warum es nicht gehen sollte.

Mal schaun ob ich mir den zulege ;-) Gibts irgendeinen großen Nachteil?

pacer_one
26.02.2009, 11:01
kommt drauf an:
volle Emulationunterstützung für AVR’s mit Flash Speicher in der Höhe von 32kByte und kleiner gewährleistet

Der Mega 16 wird unterstützt, siehe hier:
http://www.w-r-e.de/robotik/data/atmel/avrdragon/Das%20AVR%20Dragon%20Board.pdf

Atmel selbst, scheint sich bei der Doku nicht gerade viel Mühe zu geben, wobei ich Datemblätter der MCs sehr gut finde

ich_nicht_du
26.02.2009, 12:11
OK dann ist das soweit klar!

Programmiert der dann nur über das JTAG Interface oder verwendet der auch wieder die SCK, MISO, MOSI Pins?
Weil offenbar hat der die Pins sowohl für JTAG als auch für diese andere Programmierschnittstelle.

Das wäre nämlich recht praktisch wenn es über JTAG gehen würde, weil ich dann wieder 3 Pins spare! :)

pacer_one
26.02.2009, 12:34
Hat die JTAG-Schnittstelle nicht 6 Pins?
Bei den kleineren Megas gibt es die nämlich nicht, dort gibt es maximal die Debug-Wire Schnittstelle (Mega88) wegen der begrenzten Anzahl an Pins.
Prinzipiell geht auch das Programmieren über JTAG, steht aber in dem genannten PDF drin. Auch das normale Programmieren über ISP geht.

ich_nicht_du
26.02.2009, 12:37
Ich meinte das anders ;-) Wenn ich JTAG zum Debuggen UND Programmieren hernehme spare ich mir die extra programmierpins (und dazu noch die RS232-Pins mit denen ich davor gedebuggt [variablen ausgeben usw] habe). kann also bei ca. gleichem pinverbrauch mehr machen!

ich habs jetzt nochmal durchgelesen und offenbar ist beides möglich. Programmiert dann AVR Studio über JTAG?

pacer_one
26.02.2009, 13:21
sagt ich doch schon, ja.
Alles was ich geschrieben habe, bezog sich auf das AVR-Studio.
Na dann sollte ja soweit alles geklärt sein...?!

maw_hn
26.02.2009, 15:43
Hallo,

@pacer_one: JTAG ist kein Standard von Atmel, sondern wurde vom amerikansichen Ingenieursverband "IEEE" spezifiziert.

Zu den Programmern: Ich benutze seit Jahren den OLIMEX JTAG.
http://elmicro.com/de/avrjtag.html
Hab den schon mit dem Mega16, 32 und 128 erfolgreich eingesetzt.

Marco

pacer_one
26.02.2009, 16:36
ich hab ja auch nicht behauptet, dass JTAG ein Standard von Atmel ist.
Der Olimex hat aber den Nachteil das er nur zum JTAGICE kompatibel ist.
Ohne Kompatibilität zum JTAGICE mk2 fehlt das Debug-Wire.

Da beide zum gleichen Preis zu haben sind, würde ich jederzeit den Dragon vorziehen.
Der Dargon beherrscht auch das HV-Proggen um MCs auf denen man sich auf Grund falscher Fuses ausgesperrt hat wieder zu retten.

MonikaDev
27.03.2022, 19:05
Wo finde ich weitere Informationen zu diesem Thema?




_____________________________________ ________________________________ Für einen Buchhalter ist Runple (https://runple.at/buchhaltungssoftware) das beste Buchhaltungssoftware.