Hallo,
ich überlege mir ein AVR-Dargon Board zu kaufen, verstehe aber noch ein
paar Dinge noch nicht. Es ist schon etwas her, dass ich Microcontroller
programmiert hatte und will nun wieder frisch einsteigen. Damals auf der
Schule hatten wir ein EPM900 Board mit einem LPC936 "Bond Out"
Controller und Keil IDE. Es war sehr gut mit diesem zu arbeiten weil man
direkt "in-circuit" debuggen konnte. Nun will ich wie gesagt wieder
einsteigen. AVR soll es sein.
Welcher Controller ist auf dem Board verbaut?
Ich finde keinen Schaltplan auf dem ich sehe wo die Pins vom Controller
hin gehen. Die müssten doch alle unten auf die 40 Lötaugen gehen, auf
welche ich dann einen Sockel löte. Kann ich meine Schalter, LEDs,
Sensoren und sonstige Perepherie dort dann anschließen?
Spannungsversorgung kommt direkt über die USB-Schnittstelle.
Ich nehme an, ich kann das Board direkt über diese programmieren. Hier
müsste ich doch aber wissen welchen Chip ich über AVR Studio
programmiere.
Beim AVR-Dragon kann ich auch "online" debuggen. Dies mache ich über die
JATAG Schnittstelle. Das mit der 6 poligen ISP Schnittstelle hatte ich
schon einmal gemacht. Dazu hatte ich mir von einem Bekannten so einen
AVR-Programmer ausgeliehen. Damit konnte ich über USB Pprogrammieren.
Braucht man dann wieder einen anderen Programieradapter (10 polig) wenn
ich über JATAG programmieren und debuggen will.
Hoffe jemand hat etwas Geduld und kann mir meine Fragen beantworten.
Vielen Dank,
Simon
> ich überlege mir ein AVR-Dargon Board zu kaufen
Soeins [0]? Das ist ein Programmieradapter, kein Entwicklungsboard. Kauf
Dir einen Arduino-Nachbau (mit JTAG oder DebugWire) oder ähnliches dazu,
dann kannst Du auch debuggen.
[0] http://www.atmel.com/tools/AVRDRAGON.aspx
Achso,
ich dachte das wäre ein Entwicklungsboard. Dass heißt wenn ich z.B. ein
STK500 Board kaufe, könnte ich das AVR-Dragon über den 10 poligen JATAG
mit dem dort eingesteckten Contoller verbinden, und dann diesen online
debuggen? Ich hatte mir das komplett anders vorgestellt. Ich bin auf der
Suche nach einem Entwicklunsboard bei dem ich auch online debuggen kann.
Würde das mit dem STK und dem Dragon funktionieren? Das wären dann
zusammen ja ca. 170 Euro - puh... Danke für den Tip mit dem Arduino. Ich
möchte aber gerne AVR-Studio benutzen.
Grüße
Simon
> Danke für den Tip mit dem Arduino. Ich möchte aber gerne AVR-Studio> benutzen.
Deswegen sagte ich
> Arduino-Nachbau (mit JTAG oder DebugWire) oder ähnliches
und
> dazu
Nur weil 'Arduino-Klon' auf dem PCB steht heisst das nicht, dass man die
vermurkste IDE benutzen muss.
HTH
> Welcher Controller ist auf dem Board verbaut?
Spielt keine Rolle. Ich meine, da sind sogar mehrere drauf.
> Ich finde keinen Schaltplan auf dem ich sehe wo die Pins vom> Controller hin gehen.
Bei Atmel gibt es eine Bedienungsanleitung, wo alle Anschlüsse haarklein
erklärt sind. Der unbestückte Bereich am Rand der Platine kann mit einem
Klemmsockel und Stiftleisten bestückt werden. Dann kannst du mit losen
Jumperkabeln einzelne Chips programmieren.
Aber einen einzelnen Chip zu debuggen ist ziemlich sinnlos. Dazu kannst
du gleich einen Simulator (ganz ohne Hardware) verwenden.
Normalerweise verbindet man den Dragon jedoch mit einer komplett
bestückten Schaltung. Ich hatte in mehreren Jahren noch keinen Bedarf
empfunden, den unbestückten Bereich zu verwenden.
> Kann ich meine Schalter, LEDs, Sensoren und sonstige> Perepherie dort dann anschließen?
Nein. Der Dragon ist ein Programmieradapter und Debugger. Er muss mit
einem AVR Mikrocontroller (deiner Wahl) verbunden werden, der sich auf
einer anderen Platine befindet. Da kannst du dann deine Schalter und
LED's anschließen. Für den Anfang kann ich die billigen Arduino Nano
Clones aus China empfehlen.
> Ich nehme an, ich kann das Board direkt über diese programmieren.
Nein, der Dragon ist kein Experimentierboard. Du kannst ihn nicht
programmieren (abgesehen von einem Firmware-Upgrade).
> Ich bin auf der Suche nach einem Entwicklunsboard bei dem> ich auch online debuggen kann.
Entwicklungsboard mit AVR Mikrocontroller gibt es viele, aber soweit ich
weiß enthält kein einziges einen Debugger. Zum Debuggen brauchst du ein
zusätzliches Gerät zwischen AVR Mikrocontrller und deinem PC, eben zum
Beispiel einen Dragon oder einen Atmel ICE. Der Dragon is billiger,
allerdings überstützt er einige neue Chips nicht und ist auf 32KB
Programmspeicher beschränkt. Außerdem soll er recht empfindlich sein und
ist daher nicht wirklich für Anfänger zu empfehlen.
Preisgünstiger wirst du da was im 32bit Umfeld finden. Da gibt es für ca
10-20 Euro Sogenannte "STM32 Discovery". Das sind kleine Platinen mit
STM32 Mikrocontroller, Programmieradapter und Debug-Schnittstelle - das
ist fast geschenkt.
> Würde das mit dem STK und dem Dragon funktionieren?
Welches STK? Es gibt sehr unterschiedliche. Generell würde ich vom den
STK Boards abraten, wenn du auf's Geld achten musst. Arduino Module oder
Steckbretter mit einzelnen Chips sind zum Lernen genau so gut geeignet
und viel billiger.
Bei AVR ist Debuggen leider teuer.
Ich habe noch nie JTAG benutzt, aber ich habe schon öfters mit der Debug
Wire Schnittstelle von Atmel gearbeitet. Die ist in der Praxis sehr
nervig, denn darüber kann man NICHT in ein laufendes Programm hinein
schauen. Sondern man muss einen Unterbrechungspunkt setzen und dann
(wenn alles still steht) kann man in den Chip hinein schauen. In den
allermeisten realen Anwendungen führt so ein Unterbrechungspunkt aber
zum Ausfall der Schaltung. Wenn ich z.B. das Steuerprogramm eines Asuro
Roboters einfach anhalte, knallt er gegen die nächste Wand. Wenn ich die
Steuerung einer Waschmaschine anhalte, läuft sie womöglich über. Wenn
ich die Regelung eines Hubschraubers anhalte stürzt er ab.
Log-Meldungen sind da weniger invasiv und die kann man praktischerweise
recht einfach per Bluetooth an den PC/Laptop/Smartphone senden.
> Wenn ich z.B. das Steuerprogramm eines Asuro Roboters einfach anhalte,> knallt er gegen die nächste Wand.
Hochheben. Oder debuggen lernen.
> Wenn ich die Steuerung einer Waschmaschine anhalte, läuft sie womöglich> über.
Wasserhahn zudrehen. Oder debuggen lernen.
> Wenn ich die Regelung eines Hubschraubers anhalte stürzt er ab.
Auf ein Gestell stellen. Oder debuggen lernen.
Nix für ungut.
Stefan U. schrieb:> Außerdem soll er recht empfindlich sein und> ist daher nicht wirklich für Anfänger zu empfehlen.
Amen. Insbesondere scheint er den - in der Praxis häufiger auftretenden
- Fall nicht auszuhalten, wenn das Target Strom hat aber der Dragon
selbst nicht am USB angesteckt ist.
Kauf lieber ein ATMEL ICE, auch wenn das etwas teurer ist. Hier hat vor
kurzem jeman geschrieben, dass ein Dragon bei ihm eine Halbwertszeit von
einer Stunde hatte...
Wenn C-Programmierung (und englische Sprache :-) nicht abschrecken, dann
nimm lieber ein Cortex M3 (M4,M0) Board.
Oder schau Dir die EFM8 Sachen von Silabs mal an - du kennst ja 8051
schon. Deren STKs sind nur etwas teurer als STM Discovery und bieten
JLink Debugger.
>ich überlege mir ein AVR-Dargon Board zu kaufen
Gute Wahl, wenn man alle Programmiermodi der 8-bit AVRs unterstützen
will.
In der Praxis verwendet man allerdings meist den ISP Modus, da reicht
der AVR ISP MKII zum halben Preis. Da kann man sich ein paar kleine
verflashte AVRs leisten
>Welcher Controller ist auf dem Board verbaut?
Atmega2560 + Atmega128A + cy7c1019d SRAM + pdiusbd12 und noch ein paar
mehr Kleinzeug
Mit dem Dragon kann mal auch kleinere Schaltungen auf dem
Steckbrett/Lochraster mit Strom versorgen. Aber der Dragon ist zu teuer
um als Netzteil dauerhaft herzuhalten
An sonsten mal hier nachschauen:
http://www.atmel.com/tools/AVRDRAGON.aspxhttp://www.atmel.com/Images/Atmel-42723-AVR-Dragon_UserGuide.pdf
Bei dem Wunsch, AVR 8-bitter zu programmieren würde ich direkt zu
Arduino raten, alleine schon wegen dem Preis.
An sonsten schliesse ich mich dem Vorschlag an, ein Nucleo Board zum
Einstieg zu benutzen.
Gruß,
dasrotemopped.
Hallo,
vielen Dank für all eure hilfreichen Antworten. Wie gesagt hatte ich
großen Gefallen an dem STK500 von Atmel gefunden. Durch den letzten
Beitrag von Wolfgang Schmidt bin ich jetzt aber doch etwas irritiert.
Bei Pollin kostet das Entwicklunsboard
(http://www.pollin.de/shop/dt/MTY5OTgxOTk-/Bauelemente_Bauteile/Bausaetze_Module/Bausaetze/ATMEL_Evaluations_Board_Version_2_0_1_Bausatz.html?gclid=CN6t0p3RtdACFUmeGwodQqUH5Q)
nur 15,- Euro und ist doch eigentlich das gleiche, oder?
Was ich vermisse sind aber noch eine zusätliche Buchsenleiste um an alle
Pins des gesteckten Contollers zu kommen. Ich will ja diesen
Programmieren und diesen dann aber gleich mit meiner Perepherie auf dem
Steckboard verbinden. Geht das nicht?
Danke
Simon
Das Pollin Board unterstützt weniger AVR Typen und hat weniger
Anschlüsse. Aber es ist Ok.
Wenn dein Computer keinen echten RS232 Port hast, brauchst du aber
unbedingt einen ISP Programmieradapter. Den wirst du früher oder später
ohnehin haben wollen. Und du wolltest ja auch Debuggen, also wohl dann
den teuren ICE.
> Was ich vermisse sind aber noch eine zusätliche Buchsenleiste um> an alle Pins des gesteckten Contollers zu kommen. Ich will ja> diesen Programmieren und diesen dann aber gleich mit meiner> Perepherie auf dem Steckboard verbinden. Geht das nicht?
Dann sind Arduino Nano Module eigentlich genau das Richtige. Oder die
Crumb Module von Chip45 - da gibt's auch welche mit mehr Pins.
Spricht denn für Dich irgend etwas gegen ein Steckbrett mit
Einzelteilen? Du wirst es sicher schaffen, zwei Bauteile darauf zu
stecken (einen AVR und einen Kondensator), denn mehr braucht man zum
Start nicht.