Forum: Mikrocontroller und Digitale Elektronik USBprog 4.0 vs Atmel JTAG ICE


von Franz F. (franzman)


Lesenswert?

Hallo Leute

Ich habe hier mein AT91SAM7A3 Dev Kit neben mir liegen, habe allerdings 
noch nicht geschafft dieses über USB zu programmieren. Ich habe noch 
kein JTAG oder ähnliches, habe jedoch öfter gelesen, dass ich um so ein 
Gerät auf längere Zeit nicht herumkomme. Wenn ich eigene kleine Projekte 
mache, hätte ich vor, soetwas wie den ATmega328 zu verwenden, da dieser 
auf meine Lochraster passt.  Diesen kann man ja meinen Wissens mit dem 6 
Poligen SPI Stecker programmieren.
Ich schwanke jetzt zwischen:
http://shop.embedded-projects.net/index.php?module=artikel&action=artikel&id=1100
und den:
http://student.embedded-projects.net/index.php?module=artikel&action=artikel&id=753

Bin natürlich für neue Vorschläge auch offen

Ich weiß jedoch jetzt nicht genau, ob ich mit beiden meinen AT91SAM7 
programmieren kann. Dieser hat eine 20-polige JTAG Schnittstelle.
Kann ich mit dem USBprog beide Controller, also den AT91SAM7 und den 
ATmega 328 über den 6-poligen Stecker, programmieren?
Was sollte ich nehmen, wenn ich langfristig eventuell auch einmal etwas 
mit einem STM32 machen will?

Ich bin Schüler, und hab jetzt auch nicht so viel Geld, dass ich dafür 
ausgeben kann.

mfg
Franz

von michael (Gast)


Lesenswert?

Hallo,

wenn du dich etwas intensiver mit Controllern von Atmel beschäftigen 
willst, würde ich dir den JTAG ice 3 empfehlen. Damit kannst du auch 
debuggen. Auf den USBpro kannst du zwar neue Firmwares draufladen (unter 
anderem auch einen Emulator für den jtag ice 2). Insbesondere der 
Emluator für den jtag ice 2 war jedoch nicht wirklich weit entwickelt 
als ich mir das zum letzten Mal angeschaut habe. Außerdem gibts von 
Atmel ab und zu mal Firmware-Updates.


Falls du noch keine bzw. wenig Erfahrungen mit Microcontrollern hast 
würde ich dir auch empfehlen, zunächst mal mit dem Mega328 anzufangen. 
Der besitzt eine andere Architektur (AVR) als dein AT91SAM7A3 (ARM) und 
ist wesentlich einfacher zu programmieren.

Zum Programmieren der AVR's: Schau dir mal Debug Wire an.

Viele Grüße
Michael

von Frank K. (fchk)


Lesenswert?

Das JTAGice3 kann nur AVR und AVR32 programmieren, ist also für ARM 
nicht geeignet.

Der USBPROG soll wohl auch ARM programmieren können, aber empfehlen tu 
ich den nicht. Für ARM (und nur dafür, was anderes kann der nicht) ist 
der Segger JLink EDU besser, der wird besser von den gängigen IDEs und 
Debuggern unterstützt und kann in den aktuellen Hardwareversionen sowohl 
JTAG als auch SWD.

fchk

von Franz F. (franzman)


Lesenswert?

Danke für deine schnelle Antwort.

OK, dann fällt der JTAGICE3 eh mal raus.
Ich habe allerdings nicht vor, für jeden Controllertyp einen eigenen 
Programmer zu haben, da die Dinger echt nicht billig sind.

Hat schon jemand Erfahrung mit dem USBprog?
Würd mich interessieren wie sich die genau machen auf AVR und ARM.

Und was ist mit dem eventuellen STM32?

von hp-freund (Gast)


Lesenswert?

STM32 -> Discovery Board. Hat alles was Du brauchst.
Hat dein Rechner noch einen Parallelport?

von Franz F. (franzman)


Lesenswert?

Nope, hab einen Laptop und habe eigentlich nur USB.
Zut Not kann ich einen USB-RS232 Wandler besorgen, wollte aber 
eigentlich etwas direkt über USB

mfg

von Frank K. (fchk)


Lesenswert?

Franz F. schrieb:
> Danke für deine schnelle Antwort.
>
> OK, dann fällt der JTAGICE3 eh mal raus.
> Ich habe allerdings nicht vor, für jeden Controllertyp einen eigenen
> Programmer zu haben, da die Dinger echt nicht billig sind.

Das wirst Du aber früher oder später, ob Du Lust hast oder nicht. Jede 
Familie hat ihre eigenen Tools, weil JTAG nicht gleich JTAG ist. Am 
einfachsten hast Du es bei Microchip, da geht das MPLAB+PicKIT3 (50€) 
für alle PICs von den kleinen 8-Bittern über die 16 bittigen 
PIC24/dsPIC33 (bis zu 70 MHz) bis hin zu den 80 MHz 32 Bit PIC32MX MIPS 
Controllern, und Du kannst alle sowohl programmieren als auch debuggen.

> Hat schon jemand Erfahrung mit dem USBprog?
> Würd mich interessieren wie sich die genau machen auf AVR und ARM.

Die Originaltools von Atmel sind problemloser. Und 65€ für einen 
JTAGice3 ist ein echt fairer Preis.

Der SAMice von Atmel für die ARM-Controller ist übrigens von der 
Hardware her ein JLink, der aber per Firmware auf Atmel ARMs beschränkt 
ist. Hat ansonsten die gleichen Treiber wie das Original. Die Empfehlung 
für den JLink habe ich Dir nicht ohne Grund und Hintergedanken gegeben.

> Und was ist mit dem eventuellen STM32?

Ist ein Cortex M3. Der Debug-Port ist bei allen Cortex M gleich, egal ob 
Atmel, STM, TI, NXP oder wasauchimmer. Bei manchen hast Du aber nur SWD 
herausgeführt und nicht die ganzen JTAG-Pins. Also nix kaufen, was nicht 
ausdrücklich SWD kann (das gibts bei den älteren ARM7/9/11 noch nicht). 
Viele Billigteile können kein SWD.

fchk

von Guest (Gast)


Lesenswert?

Kauf dir einfach einen J-Link EDU (segger.com) für den nicht 
kommerziellen Gebrauch für um die 50 Euro. Damit kannst du alle ARMs 
debuggen und programmieren.

von Franz F. (franzman)


Lesenswert?

Ok,
Danke für die hilfreichen Antworten.

Dann kauf ich mir den USBprog lieber nicht, und warte generell mit dem 
ARM zeugs noch ein bisschen.
Ich werde mir jetzt etwas für die ATmega328 Programmierung besorgen, 
vielleicht find ich wem, wo ich das ganze mal probieren kann.

Danke

von Knecht L. (gonz)


Lesenswert?

Gute Idee, den USBprog nicht zu kaufen. Eine frühere Version des USBprog 
ist defekt bei mir eingetroffen und der Händler hat sich geweigert 
diesen umzutauschen.

von Frank K. (fchk)


Lesenswert?

Franz F. schrieb:
> Ok,
> Danke für die hilfreichen Antworten.
>
> Dann kauf ich mir den USBprog lieber nicht, und warte generell mit dem
> ARM zeugs noch ein bisschen.
> Ich werde mir jetzt etwas für die ATmega328 Programmierung besorgen,
> vielleicht find ich wem, wo ich das ganze mal probieren kann.

Mein Tip: wähle PIC, kauft Dir ein PicKit3 (China-Clones gibts für 25€, 
das Original kostet 50€). Den ganzen Rest kannst Du Dir so runterladen 
und hast von kleinen 6-Pinnern im SOT23-6 bis hin zu 144 Pin TQFP und 
von kleinen 8 Bittern bis hin zu fetten 32 Bittern alle Möglichkeiten, 
hast eine breite Auswahl an Peripherie (mehr als bei AVR), und auch bei 
den 32 Bittern gibts Typen in DIL für Deine Lochrasterplatine. Und von 
der Leistung her sind die mit ARM vergleichbar. So kommst Du mit enger 
Finanzlage wesentlich weiter.

fchk

von Franz F. (franzman)


Lesenswert?

Ich habe mich zwar mit PIC noch nicht sehr auseinandergesetzt, aber du 
machst mir das Thema schmackhaft. Ich werde mich mal ein bisschen in 
dieses Gebiet einlesen, mal schaun was ich finde

Danke Frank

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Franz F. schrieb:
> aber du
> machst mir das Thema schmackhaft.

Naja, wenn du fchk schon öfter beobachtet hättest, dann wüsstest du,
dass er eine Schallplatte mit diesem Spruch aufliegen hat.
„Evangelismus“ nennt man das wohl …

Probleme wirst du an bestimmten Stellen immer mal wieder erleben,
ganz unabhängig vom jeweiligen Hersteller.  Willst du für jedes
Problem, das auftaucht, jedesmal gleich die Controllerfamilie
wechseln?

Die JTAG-Schnittstelle für ARMs ist übrigens durch ARM selbst so
gut festgelegt, dass du für den Anfang auch erstmal mit ganz
billigen Adaptern arbeiten kannst.  Früher war da der „Wiggler“
recht beliebt, aber seit Parallelports Mangelware sind, wäre ein
FT2232-basierter Bit-Banger eine preiswerte Einstiegslösung.  (Die
Dinger kann man übrigens auch zum ISP-Programmieren von AVRs
benutzen.)

von Franz F. (franzman)


Lesenswert?

Ich weiß dass ich mit jeder Familie meine Probleme haben werde, doch ich 
wollte mich jetzt richtig informieren, damit ich danach nicht mehr 
wechseln will. Von dem Bit-Banger habe ich nocht nichts gehört, muss mal 
schauen was ich dazu brauche. Wenn man soetwas für AVR und ARM benützen 
könnte, wäre ich auch interessiert.

mfg

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Franz F. schrieb:
> Von dem Bit-Banger habe ich nocht nichts gehört, muss mal
> schauen was ich dazu brauche.

Ich hab's mal mit einem UM232H getestet, mittlerweile scheint der
UM232H-B die Nachfolge angetreten zu haben:

http://www.reichelt.de/Programmer-Entwicklungstools/UM-232-HB/3/index.html?;ACTION=3;LA=446;ARTICLE=129661;GROUPID=2969;artnr=UM+232+HB

Den Vorgänger davon habe ich ebenfalls schon benutzt:

http://shop.embedded-projects.net/index.php?module=artikel&action=artikel&id=519

> Wenn man soetwas für AVR und ARM benützen
> könnte, wäre ich auch interessiert.

Beim AVR jedoch nur ISP-Programmierung, also insbesondere kein
Online-Debuggen.  Dafür müsstest du dir schon einen Dragon kaufen.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.