Hi, seit ein paar Tagen habe ich ein xmega A1 xplained board und einen avrisp mk2. Adapterkabel für PDI ist fertig und die ersten Versuche mit dem Atmel Studio 6.1 gingen gut von de Hand. Mich hatte nur gestört, dass ich jeden Programmierversuch zweimal starten musste, da immer ein Programmierversuch abbrach und der zweite dann durchgin. Lösung dazu gab es im Internet: JTAGEN ausschalten (link hab ich grad nicht zur Hand). Ich bin mir nicht mehr sicher, in welcher Reihenfolge ich dann die folgenden Aktionen durchgeführt habe. Am ehesten vermutlich in der unten aufgeführten Reihenfolge: - Memories -> Erase Chip -> Erase now - Fuses, ich glaube beim Lesen der Fuses gab es einen Fehler, bin mir aber nicht mehr sicher. - Fuses -> JTAGEN -> Program: Fehler vermutlich beim Chip Erase hatte sich im Menu auch das Device von ATxmega128A1U auf ATxmega128A1 umgestellt. Seither gab es einige Versuche, mittels Pulldown wieder per PDI auf dem xmega zu kommen, aber alle erfolglos. Im Scope sieht die Kommunikation irgendwie komisch aus. Reset/Clock und Data vom Programmer kommen, aber anscheinend Antwortet der xmega nicht. Data braucht dann mehrere Taktzyklen von high nach low... Langer Rede kurzer Sinn: Gibt es jemanden in der Nähe München mit JTAG-Equipment für einen Widerbelebungsversuch? Oder jemanden mit einem xmega-Board, damit ich ein Problem des avrisp mkII ausschließen kann? CU, Andreas
Hi, ich glaube der PDI und der Xmega ist eh so eine Sache für sich. Soll wohl nicht so gut klappen. Schon oft gelesen. Ich würde mir an deiner Stelle für 30 Euro oder so den AVR Dragon holen, dann kannste den für wenig Geld mit JTAG debuggen und programmieren...
Andreas Wolff schrieb: > Seither gab es einige Versuche, mittels Pulldown wieder per PDI auf dem > xmega zu kommen, aber alle erfolglos. Wie gross hast du den Pulldown gewählt? Er sollte nicht zu klein sein - beste Erfolge hatte ich mit 47k-100k. Andreas Wolff schrieb: > - Memories -> Erase Chip -> Erase now Diesen Schritt kannst du dir in Zukunft sparen. Beim Programmieren wird eh der Chip gelöscht. Du hast das Board auch in den Programmiermodus gebracht (Button0 + PowerUp)? Davon steht bei dir nämlich nichts.
Hi, Matthias Sch. schrieb: > Wie gross hast du den Pulldown gewählt? Er sollte nicht zu klein sein - > beste Erfolge hatte ich mit 47k-100k. Ich hab aktuell 47k drinnen. CU, Crazy
Hi, Matthias Sch. schrieb: > Du hast das Board auch in den Programmiermodus > gebracht (Button0 + PowerUp)? Davon steht bei dir nämlich nichts. SW0 + PowerUp ist doch nur bei Programmierung über den 32UC... auf dem xplain notwendig, aber meines Wissens nicht, wenn ich einen externen Programmer benutze. Zumindest denke ich, dass bei den ersten Versuchen das auch ohne geklappt hatte. SW0 und PowerUp macht zumindest aktuell keinen Unterschied, das board bleibt nicht ansprechbar. CU, Crazy
Andreas Wolff schrieb: > SW0 + PowerUp ist doch nur bei Programmierung über den 32UC... auf dem > xplain notwendig, aber meines Wissens nicht, wenn ich einen externen > Programmer benutze. Das ist wahr. Hast du denn mal mit Flip probiert, ob der Boardcontroller noch Programme flashen kann?
Hi, Matthias Sch. schrieb: > Hast du denn mal mit Flip probiert, ob der Boardcontroller > noch Programme flashen kann? gerade festgestellt, dass auf dem xplained ja der 128A1 und nicht der A1u drauf ist. für das Problem macht das keinen Unterschied, hat ja mit beiden Einstellungen über den avrisp mkII nicht funktioniert. So, dann den A1 als Target im Flip definiert (XML kopiert) und getestet: Schaut nicht gut aus. Egal ob beim PowerOn der SW0 gedrückt ist, oder nicht, es ist immer das gleiche Ergebnis mit einem Timeout error. Die LED auf dem xplained geht dabei sofort beim Schritt "Synchronizing target" auf rot, dann dauert es eine Sekunde und im Terminal kommt die passende Fehlermeldung (Bei einem sofortigen weiteren Versuch wird die LED wieder grün, der Fehler bleibt aber). Weitere Ideen? CU, Crazy
Andreas Wolff schrieb: > Weitere Ideen? Hmm, nicht wirklich. Sieht mir danach aus, als würdest du nun keine andere Chance haben, als ein JTAG Programmer zu benutzen, um wenigstens an die Fuses ranzukommen. Das geht über Flip ja sowieso nicht.
Hi, Matthias Sch. schrieb: > Sieht mir danach aus, als würdest du nun keine > andere Chance haben, als ein JTAG Programmer zu benutzen, um wenigstens > an die Fuses ranzukommen. Plan wäre also weitersuchen, ob sich jemand mit JTAG meldet. Parallel dazu JTAG Programmer kaufen: - Dachte da an einen JTAGICE3, passt das? - Kann ich dann den AVRISP MKII wieder verkaufen oder kann der was, was per JTAG nicht geht? CU, Crazy
Hallo Andreas, ich hatte auch das Problem keine Verbindung mehr mit meinem AVRISP mkII von DIAMEX ALL-AVR zum XPLAINED! Ich hatte aus versehen alle FUSEBYTE0..5 auf 0x00 gesetzt! Danach ging keine Verbindung mehr! So habe ich ihn wieder zum laufen gebracht: Jumper J300 entfernen Mit einer externen Spannung von 3.6Volt am J300 VCC_MCU_P3V3 und GND. (Das müsste er laut Datenblatt aushalten: Maximum Operating Voltage 3.6V). Zwei Widerstände 47K PDI DATA u. PDI CLOCK/RESET also J201 DATA u. CLK gegen GND. Dann ging die Connection wieder und DEVICE-ID konnte wieder gelesen werden und die FUSEBYTE richtig stellen! Ich vermute das der Fehler mit dem FUSEBYTE5 der beim lesen auf 0xC0 war zu tun hatte hier wird der BODLVL eingetragen und wenn dann der Wert der Spannung höher als die 3.2 Volt (leer) ist geht nichts mehr! Vielleicht hilft's Gruß Dieter
Hi, Dieter schrieb: > Mit einer externen Spannung von 3.6Volt am J300 VCC_MCU_P3V3 und GND. Bis ~3,50V zeigt der AVRISP mkII idle, darüber eine orange blinkende Status-LED ("Reversed target cable connection, or not correct pull-up on the reset line.") Naja, 3,5V sollte eigentlich genug sein für versehentlich gelöschte BOD-Fuse (3,4V) Dieter schrieb: > Zwei Widerstände 47K PDI DATA u. PDI CLOCK/RESET also J201 DATA u. CLK > gegen GND. CLK habe ich keinen Pulldown, schaut aber auf dem Oszi auch gut aus. 2MHz mit passablen Flanken. Data hingegen macht mir Sorgen. 47k ist vorhanden. Alle steigenden Flanken und manche fallenden sind ok, aber immer dann wenn der µC über PDI was senden sollte dann habe ich klassische C-Entladekurven mit Tau~15µs. Auch scheint der AVRISP mkII nur ein PDI-STS Kommando ohne Parameter zu senden... Fehlermeldungen beim Programmierversuch bleiben wie bisher, egal ob FLIP oder AVRISP mkII. Naja, mal auf dem JTAG Programmer warten...
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.