Hallo alle, ich beschäftige mich schon seit ner Weile mit diversen Arduinos und habe mich mittlerweile "durch Arduino" oder "an der Platform vorbei" auch schon ein bisschen mit den MCUs und AVR direkt beschäftigt. (Teilweise, weil ich nicht mit Arduino-Board sondern den "rohen" MCUs gearbeitet habe, teilweise, weil ich aus Zeitgründen tatsächlich Takte gezählt habe...) Bisher habe ich zum flashen/programmieren immer entweder den Arduino via Bootloader direkt bespielt, oder einen anderen Arduino mit "Arduino as ISP" als seriellen Programmer verwendet und das hat eigentlich immer getan, was es sollte. Jetzt bin ich aber so weit, dass ich meine MCUs (AVR 8-bit, hauptsächlich AtMega, AtTiny und ggf AtXMega) z.B. auch gerne via JTAG oder debugWire debuggen würde. Im Zuge dessen habe ich gelesen, dass gerade debugWire recht gefährlich ist, weil es den /Reset pin umfunktioniert und deswegen z.B. das Programmieren der Fuses via SPI nicht mehr möglich ist, was das Risiko birgt, einen eigentlich einwandfreien uC zur Unbenutzbarkeit zu "verstellen". (Weil 'aus Gründen' das temporäre deaktivieren von debugWire via debugWire nicht geht, weil die debugWire Verbindung nicht funktioniert oder so...) Einen Ausweg bietet High-Voltage-Programming, mit dem sich selbst so ein Fehler wieder ausbügeln lässt. Also wollte ich ein Gerät, das folgende Features beherrscht: SPI-Prog., JTAG, debugWire, HVP für die Atmel 8-bit AVRs. Ich dachte, dass das eigentlich nicht so viel verlangt ist, aber meine Suche verlief recht ernüchternd. Das einzige Gerät, dass vielversprechend klang, war der AVR Dragon. Nachdem der aber erstens nun schon lange nicht mehr der Jüngste und anscheinend ziemlich empfindlich ist und außerdem bei keiner meiner üblichen Bezugsquellen mher verfügbar war, hier meine Fragen: tldr: 1. Ist das HVP tatsächlich ein sinnvoller Wunsch, oder braucht man das heutzutage eigentlich eh nicht mehr? 2. Könnt ihr mir ordentliche alternativen zum Dragon empfehlen? Sprich einen Programmer/Debugger der - SPI-Programmierung - JTAG (Prog. & Debuggen) - debugWire - (ggf. HVP, parallel und seriell) beherrscht. 3. Was hat es mit "aWire" auf sich? Ist das ein anderer Name für debugWire, der Anschluss-Name wenn man debugWire über einen ISP-Header betreibt oder was ganz anderes? Ich bin schon ein paar mal über den Begriff gestolpert, aber ich finde keine näheren Informationen dazu... schon mal vielen Dank im vorraus für die Antworten LG Soro
Für HV Programmieren verwende ich bei mir immer noch den guten alten STK500. Für SMD oder Arduinos müßte man halt Kabeladapter zu einem passenden STK500 uC Fassung zurecht machen. Bei mir habe ich einen ZIF40 Adapter draufgesteckt. Für die RS232 Schnittstelle habe ich im PC eine Multi-IO PCIe Karte. Leider funktioniert AS damit nicht in W7X64. In X64 BS geht (zumindest bei mir) die AS RS232 Schnittstelle trotzdem nicht. Deshalb verwende ich VMPlayer und WXP-X32. Das funktioniert.
:
Bearbeitet durch User
>Einen Ausweg bietet High-Voltage-Programming, mit dem sich selbst so ein Fehler wieder ausbügeln lässt. HVPP betrachte ich als Normalfall. Nur die 19 pins, und einer davon 12V, machen sich nicht so gut als Interface für einen 28-pinner. Dafür ist ISP, hat aber nicht die Mächtigkeit von HVPP. AtmelICE könnte das Teil sein, was du suchst. Kann aber nix mit high voltage. Als Billigheimer ist der SNAP einen Blick wert, wenn er denn läuft. Und mit UPDI brauchst du auch keine Gedanken an debugwire/aussperren aufbringen. Wahrscheinlich kommst du mit JTAG/debugwire/UPDI recht weit in der AVR-Welt.
Soro N. schrieb: > Im Zuge dessen habe ich gelesen, dass gerade debugWire recht gefährlich > ist, weil es den /Reset pin umfunktioniert und deswegen z.B. das > Programmieren der Fuses via SPI nicht mehr möglich ist In diesem Zustand kannst du über debugWire den Debugging Modus beenden. Sowohl die Arduino IDE als auch Avrdude machen das IMO automatisch. Man steht nur doof da, wenn man den Debugger gerade verliehen hat. > Ist das HVP tatsächlich ein sinnvoller Wunsch? Für mich nicht. Ich habe in mehr als 15 Jahren nur zwei AVR Mikrocontroller verfused. Die habe ich einfach weg geworfen. Die Kosten für den HVP wären es nicht Wert gewesen. > Könnt ihr mir ordentliche alternativen zum Dragon empfehlen? Das ist einfach, denn es gibt nur einen: Den Atmel ICE In drei Varianten: nackt, mit Gehäuse, und mit Gehäuse+Kabel). Da gibt es noch ein neueres Gerät von Microchip, aber das ist nach den Infos aus diesem Forum hier bezüglich der AVR Kompatibilität noch nicht ganz fertig entwickelt. neuer PIC Freund schrieb im Beitrag #5980688: > Wahrscheinlich kommst du mit > JTAG/debugwire/UPDI recht weit in der AVR-Welt. Ich möchte dazu noch PDI für die Xmega Serie ergänzen.
Soro N. schrieb: > Im Zuge dessen habe ich gelesen, dass gerade debugWire recht gefährlich > ist, weil es den /Reset pin umfunktioniert und deswegen z.B. das > Programmieren der Fuses via SPI nicht mehr möglich ist, was das Risiko > birgt, einen eigentlich einwandfreien uC zur Unbenutzbarkeit zu > "verstellen". Wo hast du denn den Quatsch gelesen? Soro N. schrieb: > (Weil 'aus Gründen' das temporäre deaktivieren von debugWire via > debugWire nicht geht, weil die debugWire Verbindung nicht funktioniert > oder so...) Ist mir noch nicht ein einziges Mal passiert. Und ich arbeite schon seit Ewigkeiten mit den Dingern. Soro N. schrieb: > 1. Ist das HVP tatsächlich ein sinnvoller Wunsch, oder braucht man das > heutzutage eigentlich eh nicht mehr? Jein. HV macht nur wirklich Sinn, wenn du den Controller als DIL gesockelt hast und ihn aus der Schaltung nehmen kannst. In der Schaltung können die 12V Programmierspannung Schaden anrichten und die meisten der Pins, die man für HV braucht, sind ja auch belegt, was sich auch nicht unbedingt miteinander verträgt. Also In-Circuit nein, Ex-Circuit ja. Aktueller Programmer ist der Atmel ICE. Hier im Forum schwirrt auch noch ein Fuse-Doktor rum. Ich glaube, das Ding heißt so. Damit kann man den Controller im Notfall wieder ins Leben zurück holen. Sinnvollerweise natürlich auch nur extern.
Soro N. schrieb: > Könnt ihr mir ordentliche alternativen zum Dragon empfehlen? Dragon kann aber nicht alle AVR debuggen. Sinnvoller kommt Kombination aus zwei Sachen: ISP-Programmierer und JTAG-Debugger.
Maxim B. schrieb: > Dragon kann aber nicht alle AVR debuggen. Er kann auch nicht alle AVR flashen, ist halt zu alt.
JTAGICE MK2 hat zwar Atmel/Microchip eingestellt, aber in China gibt es relativ billige Kopien. Ich bin damit zufrieden. Die Reihe 324-644-1284 geht damit gut, wie auch 128 und 2560 Thomas E. schrieb: > Hier im Forum schwirrt auch noch > ein Fuse-Doktor rum. Ich glaube, das Ding heißt so. Damit kann man den > Controller im Notfall wieder ins Leben zurück holen. Wenn man falsche Taktquelle eingestellt hat, braucht man nur einfachsten Frequenzgenerator. 1/2 HC00 + R + C zum Beispiel. Mit ISP-Programmer kann man ISP nicht abschalten. Was kann noch passieren?
:
Bearbeitet durch User
>Mit ISP-Programmer kann man ISP nicht abschalten.
Dann wäre es aber auch unmöglich, mit ISP das debugwire einschalten zu
können. Das habe ich anders in Erinnerung.
Maxim B. schrieb: > Mit ISP-Programmer > kann man ISP nicht abschalten. Was kann noch passieren? Man kann DW einschalten und man kann den Reset-Pin als Port schalten. In beiden Fällen ist ISP tot.
neuer PIC Freund schrieb im Beitrag #5980798: >>Mit ISP-Programmer kann man ISP nicht abschalten. > Dann wäre es aber auch unmöglich, mit ISP das debugwire einschalten zu > können. Das habe ich anders in Erinnerung. Man kann Debug Wire einschalten. Beides killt die ISP Schnittstelle. Aber mit dem Debug Wire kann man den Debug Modus temporär (bis zum nächsten Power-Cycle) beenden. Danach kann man via ISP die Debug-Wire Fuse wieder zurück setzen. Wenn man über ISP den Reset Pin deaktiviert macht dies die ISP Schnittstelle unbrauchbar.
Stefanus F. schrieb: > Aber mit dem Debug Wire kann man den Debug Modus temporär (bis zum > nächsten Power-Cycle) beenden. Danach kann man via ISP die Debug-Wire > Fuse wieder zurück setzen. Nein, mit dem Debugger schaltet man wieder auf ISP-Mode und den Resetpin wieder als Reset. Ein Power-ON/OFF braucht man dafür nicht. Mit ISP wird in den DW-Modus geschaltet. Dieser ist dann nach einem Power-Cycle wirksam, weil der Controller einmal einen Reset dafür braucht, der aber nicht über den Reset-Pin geschaltet werden kann, da dieser ja jetzt DW ist.
vielen Dank an die vielen Antworten, ihr habt mir sehr geholfen :D (btw, bin neu hier: kann/soll ich den Thread noch irgendwie als gelöst markieren?)
Soro N. schrieb: > (btw, bin neu hier: > kann/soll ich den Thread noch irgendwie als gelöst markieren?) Hast du gerade gemacht. Anders geht es nicht.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.