Hallo, nun hab ich den Salat und brauche eine helfende Sortierung: Was ich möchte: Ich möchte den Arduino mega2560 beackern. Dazu brauche ich für mich dringend eine Debug-Funktion (JTAG ICE), ohne mache ich sonst auf Volltrottel. Was ich habe: - linux und winxp - Das Programm "arduino" auf winxp bekommt Kontakt zum mega2560 (via Arduino ISP?) - AVR Studio4 bekommt keinen Kontakt zum Arduino ISP - Ponyprog bekommt ebenso keinen Kontakt - AVR Studio4 bekommt keinen Kontakt zum USB/JTAG-Stick aus China - winavr irgendwo auf einem PC, bisher ungenutzt aufgrund fehlender Ahnung Was sonst noch in der Luft schwebt: - Fusebit JTAGEN Da muß ich wohl ran, um JTAG u aktivieren, aber wie? Und jetzt sitze ich vor den Trümmern und weiß ich nicht mehr gezielt weiter, außer auf Hilfe zu hoffen. Peter
Wenn ich mich recht erinnere geht debuggen nur über jtag. Wenn du den arduino bootloader nicht brauchst, wirf ihn raus und setzt den bootvector auf deine applikation. Über isp geht wohl nur fuses und programming. Cu, bernd
@Peter Thoms (p-ummel) >Ich möchte den Arduino mega2560 beackern. OK. >Dazu brauche ich für mich dringend eine Debug-Funktion (JTAG ICE), ohne >mache ich sonst auf Volltrottel. Warum? Was willst du denn debuggen? >- linux und winxp >- Das Programm "arduino" auf winxp bekommt Kontakt zum mega2560 (via >Arduino ISP?) Nein, via Arduino Bootloader >- AVR Studio4 bekommt keinen Kontakt zum Arduino ISP Normal, AVR Studio kennt das System Arduino nicht. >- Ponyprog bekommt ebenso keinen Kontakt Dito. >- AVR Studio4 bekommt keinen Kontakt zum USB/JTAG-Stick aus China Mal wieder gespart. >Was sonst noch in der Luft schwebt: >- Fusebit JTAGEN >Da muß ich wohl ran, um JTAG u aktivieren, aber wie? Warum? Die kann man auch per Software im Programm ausschalten. Wahrscheinlich ist sie aber schon bei der Auslieferung des Aruinos deaktiviert. >Und jetzt sitze ich vor den Trümmern und weiß ich nicht mehr gezielt >weiter, außer auf Hilfe zu hoffen. Komisch. Andere Leute nutzen einfach die Arduino Software und legen los. Und das funktioniert auch. Debuggen kann man mit serial.print im Arduino. Ist brauchbar.
Falk Brunner schrieb: > Debuggen kann man mit serial.print im > Arduino. Ist brauchbar. sagen wir bedingt brauchbar, manchmal stoppt "serial.print" in der Arduino IDE einfach und ich weiss nicht warum, kann natürlich eine Interaktion sein das ich schon prints haben will wo der ADC oder TFT noch nicht fertig ist, also immer vor serial.print, fürchterliche delays einbauen zum Testen. Die Arduino IDE kann einem das Leben erleichtern aber auch ganz schön nerven, schlisslich läuft im Hintergund einiges was man duch Nutzung von Libs nicht mehr weiss.
:
Bearbeitet durch User
Falk Brunner schrieb: > Debuggen kann man mit serial.print im > Arduino. Ist brauchbar. Von Debuggen kann keine Rede sein. Man kann Ausgaben damit machen, Zustände anzeigen, mehr nicht.
Arduinoquäler schrieb: > Falk Brunner schrieb: >> Debuggen kann man mit serial.print im >> Arduino. Ist brauchbar. > > Von Debuggen kann keine Rede sein. > Man kann Ausgaben damit machen, Zustände anzeigen, mehr nicht Ist ein wenig mühsam. Geht aber. Fürs Debuggen ist das schon mal mindestens die halbe Miete.
Hallo, vielen Dank erst einmal Bei mir ist wirklich alles am quietschen, es geht wohl gar nix. winxp/arduino 1.6.0/Datei/Hochladen: ------------------------------------ avrdude: Version 6.0.1, compiled on Apr 3 2014 at 23:12:16 Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/ Copyright (c) 2007-2009 Joerg Wunsch System wide configuration file is "C:\Programme\Arduino/hardware/tools/avr/etc/avrdude.conf" Using Port : COM4 Using Programmer : wiring Overriding Baud Rate : 115200 AVR Part : ATmega2560 Chip Erase delay : 9000 us PAGEL : PD7 BS2 : PA0 RESET disposition : dedicated RETRY pulse : SCK serial program mode : yes parallel program mode : yes Timeout : 200 StabDelay : 100 CmdexeDelay : 25 SyncLoops : 32 ByteDelay : 0 PollIndex : 3 PollValue : 0x53 Memory Detail : [...] Aber, winxp/arduino 1.6.0/Datei/Hochladen mit Programmer: --------------------------------------------------- [...] avrdude: Error: Could not find USBtiny device (0x2341/0x49) [...] Abfrage von winxp/Gerätemanager/COM4: ------------------------------------- usbser usb\vid_2341&pid_0042 Also, ich bin komplett hilflos. Selbst das Programm Arduino geht wohl anscheinend nicht und ich stehe vor einem Haufen von Trümmern. - Und nun? Bevor ich überhaupt nichts schaffe, - soll ich den JTAG-China-Programmer in einer Schaffenspause zurückgeben? Peter
Karl Heinz schrieb: > Ist ein wenig mühsam. Geht aber. Das geht fast überhaupt nicht. Da man für jeden einzelnen Debug-Fall zehn (Phantasiezahl, können auch 50 sein) verschiedene Print-Konstellationen braucht um einigermassen das zu sehen wo es gerade drauf ankommt. Und für jede Print-Konstellation muss man den Kontroller neu Flashen. Die Pint-Anweisungen wollen auch noch formuliert werden, schreiben sich also nicht alleine ..... Das ist nicht "ein wenig mühsam" sondern äusserst mühsam.
Hallo, oder mal ganz abgedreht: Was nehme ich sonst, um einen mega2560 am Steckbrett durchzuprobieren? Auf einen Arduino kam ich nur durch den mega2560. Peter
Arduino Mega geht mit avrdude problemlos... wenn man den Resetbutton im richtigen Moment loslässt, so daß der Bootloader sich im richigen Moment bei avrdude meldet und (zumindest bei meinem) kein Flash erase macht. Oliver
Debuggen: ========= Im Auslieferungszustand ist JTAG deaktiviert. Also per ISP die Fuses aendern. kein JTAG == kein Debugging "Debuggen" mit printf ist Gruetze, von Vorne bis Hinten, gerade bei Arduino. Zusaetzlicher Code bedeutet zusaetzliche Laufzeit. Und da gerade bei Arduino gerne mal mit Delays gearbeitet wird, funktioniert der Code vielleicht sollange die printf drin sind. Nimmt man die printf raus, hat man schon wieder andere Laufzeiten, und der geneigte Arduino User wundert sich, warum nichts mehr geht... Oder es ist genau anders rum. Flashen: ======== Welche Version der Arduino IDE hast du genommen? Das Zip-Archiv oder den Installer? Ich empfehle das Zip-Archiv. Hast du in der Arduino IDE alles richtig Eingestellt? Richtiger Com-Port? Richtiges Board? Peter Thoms schrieb: > avrdude: Error: Could not find USBtiny device Falscher Programmer eingestellt? (brauch man eigentlich nicht umstellen! Die standard Einstellung (AVRISP mkII) funktioniert praktisch immer, soweit ich weiss!) Man muss eventuell den Resetbutton auf dem Board druecken, und kurz danach Avrdude starten.
@ Arduinoquäler (Gast) >Da man für jeden einzelnen Debug-Fall zehn (Phantasiezahl, >können auch 50 sein) verschiedene Print-Konstellationen >braucht um einigermassen das zu sehen wo es gerade drauf >ankommt. Und für jede Print-Konstellation muss man den >Kontroller neu Flashen. Die Pint-Anweisungen wollen auch >noch formuliert werden, schreiben sich also nicht alleine ..... Ach herje. Jahrzehntelang mussten Bastler und Semiprofessionelle OHNE echten (Sourcelevel)debgger auskommen, und es ging auch. Uns selbst wenn du einen hättest, ist der im Arduinouniversum nicht integriert. Damit könnten bestenfalls Profis mit selbstgestrickten Tools und Convertern arbeiten, die dann auf Atmelstudio aufsetzen.
Falk Brunner schrieb: > Ach herje. Jahrzehntelang mussten Bastler und Semiprofessionelle OHNE > echten (Sourcelevel)debgger auskommen, und es ging auch. Es gab auch eine Zeit ohne Strom und fliessend Wasser, und die Menschheit hats ueberlebt. Lebst du deshalb ohne Strom usw., weils frueher ja auch ging? (ist nicht boese gemeint :) ) Natuerlich kann man Radbolzen mit einer WapuZ loesen. Aber warum sollte ich mir das antun, wenn man auch den Pressluftschrauber nehmen kann? Die Frage ist ja nicht ob es geht, sondern ob man das wirklich tun will bzw. tun sollte... Falk Brunner schrieb: > Uns selbst wenn du einen hättest, ist der im Arduinouniversum nicht > integriert. Da arbeiten Arduino und Atmel immerhin dran, das sowas mal kommt. Wie der On-Board Debugger bei den STM32-Discovery Boards.
@ Kaj G. (Firma: BW) (bloody) >Es gab auch eine Zeit ohne Strom und fliessend Wasser, und die >Menschheit hats ueberlebt. Lebst du deshalb ohne Strom usw., weils >frueher ja auch ging? (ist nicht boese gemeint :) ) Klar! Ich hab hier fließend Wasser, an der Wand! Und mein Faustkeil muss mal wieder zur Kalibierung ;-) >Natuerlich kann man Radbolzen mit einer WapuZ loesen. Aber warum sollte >ich mir das antun, wenn man auch den Pressluftschrauber nehmen kann? Sicher. >Da arbeiten Arduino und Atmel immerhin dran, das sowas mal kommt. Wie >der On-Board Debugger bei den STM32-Discovery Boards. Ja, die sind schon schick und die Boards spottbillig!
Der TO könnte sich mal sammeln und seine Fehlerbeschreibung mal so formulieren, dass man eine Ahnung bekommt, was nicht geht. Er vermischt doch Kraut und Rüben. Oder kommt das nur mir so vor? Die Programmierung eines Arduino über USB Bootloader hat ja nichts mit ISP oder JTAG zu tun...
Falk Brunner schrieb: > Klar! Ich hab hier fließend Wasser, an der Wand! > Und mein Faustkeil muss mal wieder zur Kalibierung ;-) Ich sehe, wir verstehen uns :D
Kaj G. schrieb: > Flashen: > ======== > Welche Version der Arduino IDE hast du genommen? Das Zip-Archiv oder den > Installer? Ich empfehle das Zip-Archiv. > Hast du in der Arduino IDE alles richtig Eingestellt? > Richtiger Com-Port? > Richtiges Board? > > Peter Thoms schrieb: >> avrdude: Error: Could not find USBtiny device > Falscher Programmer eingestellt? (brauch man eigentlich nicht umstellen! > Die standard Einstellung (AVRISP mkII) funktioniert praktisch immer, > soweit ich weiss!) > Man muss eventuell den Resetbutton auf dem Board druecken, und kurz > danach Avrdude starten. Hallo, ich möchte JTAG, sonst nichts. Sonst komme ich überhaupt nicht mehr ans Tageslicht. Im Linux das gleiche Bild. Ein anderes usb-Kabel änderte nix am Debakel. In der avrdude.conf änderte ich, immer noch unter linux, die pid von 49 auf 42. Es ergab dann nur eine Zugriffsverweigerung. Also wurde die Änderung zurückgenommen. Zur Erinnerung: Abfrage von winxp/Gerätemanager/COM4: ------------------------------------- usbser usb\vid_2341&pid_0042 - Oder ist mir die Platine zerschossen? - Gut, ich probiere mal das zip-archiv durch. Der Download dauert bei mir leider eine runde Stunde. Peter
@ Peter Thoms (p-ummel) >ich möchte JTAG, sonst nichts. Dann hast du einiges am Arduino nicht verstanden. Der nutzt nämliche einen Bootloader mittels virtuellem COM-Port. >Sonst komme ich überhaupt nicht mehr ans Tageslicht. Was machen nur die anderen Arduino-User? >- Gut, ich probiere mal das zip-archiv durch. Der Download dauert bei >mir leider eine runde Stunde. Unsinn.
Hi >ich möchte JTAG, sonst nichts. >Sonst komme ich überhaupt nicht mehr ans Tageslicht. Dann such dir ein anderes Hobby. MfG Spess
Falk Brunner schrieb: > Ach herje. Jahrzehntelang mussten Bastler und Semiprofessionelle OHNE > echten (Sourcelevel)debgger auskommen, und es ging auch. und wie das geht, solange ich auf Debugger warte werde ich ja nie fertig..... Arduino mega2560 an 2x 16-Bit DAC steuert ein MassSpectrometer Bedienung über TouchScreen
Peter Thoms schrieb: > ich möchte JTAG, sonst nichts. Das wird von der Arduino IDE aus nicht funktionieren. Dein China-Programmer wird ein ISP Programmer sein. Diese sind üblicherweise kompatibel mit dem JTAG ICE (I). Und nur wenn du ca 100 Euro dafür bezahlt und Glück hast, einigermassen Kompatibel mit JTAG ICE MKII. Dann könntest du ISP oder JTAG betreiben. Die JTAG Pins sind auf dem Arduino Mega256 etwas "versteckt", also nicht die ISP Pins. Der JTAG ICE (I) wird aber mit dem Mega2560 vermutlich nicht funktionieren. Schau in die Kompatbilitätsliste von deinem Programmer. Siehe auch: Falk Brunner schrieb: > Dann hast du einiges am Arduino nicht verstanden. Der nutzt nämliche > einen Bootloader mittels virtuellem COM-Port. Das Programmieren der Arduinos geschieht im Falle des Mega2560 über den kleinen Hilfs-AVR der den Bootloader auf dem Mega2560 speist.
Arduinoquäler schrieb: > Das Programmieren der Arduinos geschieht im Falle des Mega2560 > über den kleinen Hilfs-AVR der den Bootloader auf dem Mega2560 > speist. es hindert ihn aber keiner den Bootloader runterzuwerfen und JTAG freizuschalten und in AVR Studio zu gehen.
Ha Joachim B. schrieb: > es hindert ihn aber keiner den Bootloader runterzuwerfen und JTAG > freizuschalten und in AVR Studio zu gehen. Hallo, genau so soll es kommen, wie das Amen in der Kirche. Ebenso wie mein Download von einer runden Stunde. Es dauerte etwas länger, ich surfte dazu parallel im Rindernett. Also, was für ein Programmer kommt in Frage? - ISP, JTAG ICE - USB, 10-Pin ? Peter
Hallo, tja, iss nix: +++ Arduino: 1.6.0 (Windows XP), Platine: "Arduino Mega or Mega 2560, ATmega2560 (Mega 2560)" C:\Dokumente und Einstellungen\peter\Eigene Dateien\Downloads\arduino-1.6.0-windows\arduino-1.6.0/hardware/tools/avr /bin/avrdude -CC:\Dokumente und Einstellungen\peter\Eigene Dateien\Downloads\arduino-1.6.0-windows\arduino-1.6.0/hardware/tools/avr /etc/avrdude.conf -v -patmega2560 -carduinoisp -e -Ulock:w:0x3F:m -Uefuse:w:0xFD:m -Uhfuse:w:0xD8:m -Ulfuse:w:0xFF:m avrdude: Version 6.0.1, compiled on Apr 3 2014 at 23:12:16 Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/ Copyright (c) 2007-2009 Joerg Wunsch System wide configuration file is "C:\Dokumente und Einstellungen\peter\Eigene Dateien\Downloads\arduino-1.6.0-windows\arduino-1.6.0/hardware/tools/avr /etc/avrdude.conf" Using Port : usb Using Programmer : arduinoisp avrdude: Error: Could not find USBtiny device (0x2341/0x49) avrdude done. Thank you. Der gewählte serielle Port existiert nicht oder die Platine ist nicht angeschlossen +++ - Ist die Platine im Eimer? Peter
@ Peter Thoms (p-ummel) >Ebenso wie mein Download von einer runden Stunde. >Es dauerte etwas länger, ich surfte dazu parallel im Rindernett. Wie witzig. >Also, was für ein Programmer kommt in Frage? >- ISP, JTAG ICE >- USB, 10-Pin >? Ausser JTAG ICE, das aber hornalt ist, gar nichts. Weil das alles nur Bullshit-Bingo ist. Wenn du denn meinst, wirklich nur per JTAG glücklich zu werden, brauchst du logischerweise einen JTAG-fähigen Programmieradapter. ATMELICE, AVR Dragon, JTAG ICE in verschiedenen Versionen. http://www.atmel.com/tools/ATATMEL-ICE.aspx http://www.atmel.com/tools/AVRDRAGON.aspx http://www.atmel.com/tools/AVRJTAGICEMKII.aspx http://www.atmel.com/tools/AVRONE_.aspx http://www.atmel.com/tools/JTAGICE3.aspx Das ATMELICE hab ich mir vor kurzem gekauft, weil ich einen Debugger brauchte. Läuft soweit gut und ist auch preiswert. Alle diese Adapter laufen aber NICHT mit der Arduinosoftware, sondern meist nur mit AVR Studio, Atmelstudio oder avrdude & Co. Mein Rat. Kauf was gescheites. Das ist SEHR gut investiertes Geld.
zum inline debug? Peter Thoms schrieb: > - ISP, JTAG ICE an ISP gibt es kein JTAG Der Debugger muss schon an JTAG IMHO http://www.atmel.com/Images/Atmel-2549-8-bit-AVR-Microcontroller-ATmega640-1280-1281-2560-2561_datasheet.pdf Seite 343 Programming through the JTAG interface requires control of the four JTAG specific pins: TCK, TMS, TDI, and TDO. Control of the reset and clock pins is not required http://www.mikrocontroller.net/attachment/106154/ATmega2560_Schaltplan.png Die Pins musst du selber anzapfen, der Arduino hat dafür keinen Port ausser die PINs
Falk Brunner schrieb: > Das ATMELICE hab ich mir vor kurzem gekauft, weil ich einen Debugger > brauchte. Läuft soweit gut und ist auch preiswert. > > Alle diese Adapter laufen aber NICHT mit der Arduinosoftware, sondern > meist nur mit AVR Studio, Atmelstudio oder avrdude & Co. ATMEL-ICE (ATMELICE, der neueste) erst ab Studio 6.2 JTAG ICE MKIII erst ab Studion 5 JTAG ICE MKII mit AVR Studion 4.xx AVRDude weiss ich nicht, aber Vorsicht, erst abchecken vorm Kauf! Ich glaube nicht dass der ATMEL-ICE da schon funktioniert.
Hallo, ich habe hier die Version - AVR Studio 4.19 - WinAVR Toolchain 3.4.2 GCC 4.7.2 - AVR Dragon - Arduino mega Klon über JTAG am laufen. JTAG ICE MK III geht auch, aber nur mit Atmel Studio >= 5, aber wer will das schon als Editor, nehm ich nur zum Debuggen. (man kann auch mit Elefanten nach Mücken werfen) Die JTAG Pins musst Du dir an den Buchsen abgreifen und einen passenden Adapter machen. Dann per ISP - den JTAG aktivieren - den Bootblock renaturieren, evtl auch die Vector table - das ganze Arduino geschlonz mit einem Chip erase abwischen - und sich auf einem fast jungfräulichen ATmega2560 wohlfühlen. Grüße, Bernd
Falk Brunner schrieb: > @ Peter Thoms (p-ummel) > >>Ebenso wie mein Download von einer runden Stunde. >>Es dauerte etwas länger, ich surfte dazu parallel im Rindernett. > > Wie witzig. > >>Also, was für ein Programmer kommt in Frage? >>- ISP, JTAG ICE >>- USB, 10-Pin >>? Hallo, man, ich habe nur 48kByte/s Download und das dauert fix eine Stunde. Mit surfen etwas mehr: fix, fihix. So, und noch eine Bitte an diejenigen, die sich mit "nicht-Aussagen" überschlagen. Mit solchen Aussagen kann ich überhaupt nichts anfangen. Auch das mag bedauerlich sein, aber es ist nun einmal so. Bitte-bitte beschreibt einen richtigen Weg und nicht 25.000 falsche. Dringend benötige ich Aussagen, die beschreiben was geht. Bspw: - Fusebit JTAGEN setzen mit Programmer "ISP-xy" über USB-Anschluß des Arduino (an den ich aber im Moment nicht ran komme) (wie verfahren die Platine zu überrüfen?) (oder gleich neu besorgen? defektes Bauteil ersetzen?) - Dann den "JTAG" verbinden mit Programmer "ice xy" Noch etwas: Es wäre schön, wenn sich der Aufwand im Rahmen hielte. Aber- wenn denn ein "Dragon" alles kann was ich brauche, um ein Arduino mega2560 auf jtag umzubiegen -warum nicht. Jesus, wo fange ich an, bei meiner schrottigen Platine? Ich schnüffel mal die Takte -> taktet. Neben dem Taster liegt ein "icsp". Ich glaube, ihr nennt diese Pin-Stecker Header. Muß ich da eventuell ran als Ersatz, weil ich aktuell über usb an den mega2560 nicht ran komme? Ich werde frühestens am Sonntag dazu kommen nachzusehen, was auf der Platine eventuell machbar ist. Die kenne ich auch noch nicht. Peter
:
Bearbeitet durch User
Was brauchst Du denn noch an Info? Ich habe Dir einen Weg aufgezeigt, der bei mir funktioniert. Der Duktus deines Eingangsposts ließ mich annehmen, das Du mit der Materie vertraut bist. Ich bin davon ausgegangen, dass du das Arduinozeugs los werden willst. Es wäre mir neu, wenn fuses per software gesetzt werden könnten. Also nicht per bootloader via USB mittels Arduino, nur per ISP. Und ja, der Dragon kann JTAG und ISP, aber nur wechselweise. Und ja, es gibt schnellere Adapter. Nachtrag Der 6 polige Stecker neben dem 2560 ist der ISP header, Polung beachten. Die JTAG pins musst du dir raussuchen und auch entsprechend richtig verbinden. Echtes männer debuggen geht beim 2560 nur über JTAG. Hatte ich, glaube ich, bereits im ersten Folgepost erwähnt.
:
Bearbeitet durch User
Mir scheint der TO hat keine Ahnung. Deshalb kann er mit den Antworten nichts anfangen. Er weiss nicht, dass er über den USB nicht ISP Programmieren kann. Er hat keine Ahnung wozu die ICSP Pins da sind (nämlich ISP, aber die richtigen auf dem Board. Es gibt nämlich zwei). Vielleicht hat er ja den kleinen Avr für USB kaputgeflasht... Jedenfalls hat Bernd ziemlich ausführlich beschrieben wie es geht. Und bitte schreib in normalem Deutsch (oder Englisch) und spar dir deine tollen Umschreibungen und Verunstaltungen... Ach ja und folgendes: Google Suche nach 'arduino mega jtag' und erster!!! Link.
Hallo Peter, der Arduino Mega 2560 besteht aus einem Atmega2560 und einem Atmega16U2. Der Atmega2560 kann kein USB. Er wird normalerweise über die seriellen Pins vom Atmega16U2 programmiert. Dazu muss auf dem Atmega2560 der Arduino-Bootloader laufen, der benutzt dann ein serielles Protokoll für die Programmierkommandos. Der Atmega16U2 hat VID 2341 und PID 0042. Auf dem Arduino Mega 2560 sind ZWEI ICSP-Header: Der in der Mitte ist für den Atmega2560, der am Rand für den Atmega16U2. Mir ist nicht klar was du für einen USB/JTAG-Stick aus China hast, und ob der sowohl ISP als auch JTAG kann. Ausserdem unterstützen nicht alle ISP-Programmierer den Atmega2560, weil dessen Flash-Speicher größer als 64k-Worte ist und daher Flash-Adressen größer als 2 Byte werden. Ansonsten so vorgehen wie Bernd es beschrieben hat: Über den ICSP-Header des Atmega2560 via ISP die JTAG-Fuse aktivieren, und dann über A4-A7 JTAG benutzen. LG, Sebastian
Hallo, vielen Dank erst einmal. - Was ich lernen mußte: Der USB-Anschluß ist für meine Zwecke im grunde belanglos. Der USB-Anschluß ist NICHT der ISP-Anschluß Mit der Software "flip" hatte ich den besagten USB mehrere Male erfolgreich bearbeiten können. http://arduino.cc/en/pmwiki.php?n=Hacking/DFUProgramming8U2 Als kleiner Funktionstest ist es aber ok. - Der ISP ist der 6-polige PIN-Header neben dem Taster und nennt sich laut Platinen-Aufdruck "ICSP". nur von hier aus geht das Fusebit JTAGEN zu manipulieren - Erst nach den "JTAGEN" überwindet man den vermurkst aufgebauten Arduino hin zum JTAG-Debug. Zusätzlich sind noch die irgendwo auf der Platine verstreuten JTAG-Pins als Header zusammenzufassen. Puh, was für ein gequirlter Mist von Arduino. Und nun lese ich den Trööt noch einmal von vorne durch. Mit Sicherheit werde ich nun wesentlich mehr davon verstehen. Peter
:
Bearbeitet durch User
Peter Thoms schrieb: > - Was ich lernen mußte: Und das kann man sich voll easy auf der Arduino Homepage herunerlesen ohne selbst schmerzhafte Lernprozesse durchzumachen. Peter Thoms schrieb: > - Der ISP ist der 6-polige PIN-Header neben dem Taster und nennt sich > laut Platinen-Aufdruck "ICSP". Das steht auch ganz klar in den Dokumenten der Arduino Macher. Wer lesen kann ist klar im Vorteil. Peter Thoms schrieb: > Zusätzlich sind noch die irgendwo auf der Platine > verstreuten JTAG-Pins als Header zusammenzufassen. Die JTAG Pins sind nicht verstreut sondern wunderbar an einer Steckerleiste dicht nebeneinander aufgereiht (Analog In 4...7) Also kein Grund sich darüber aufzuregen. Wer keine Datenblätter lesen will dem ist eben nicht zu helfen .....
Hallo, jahh, natürlich, und alles kontextfrei nach Backus-Naur, plug and play! Was mich viel mehr interessiert, als flache Nickeligkeiten: Nach wieviel Klicks von der Homepage wäre ich am Ziel, um die drei o.g. Punke abzudecken? Peter
:
Bearbeitet durch User
Hallo Peter, Peter Thoms schrieb: > Ich möchte den Arduino mega2560 beackern. > Dazu brauche ich für mich dringend eine Debug-Funktion (JTAG ICE), ohne > mache ich sonst auf Volltrottel. Peter Thoms schrieb: > Was mich viel mehr interessiert, als flache Nickeligkeiten: > Nach wieviel Klicks von der Homepage wäre ich am Ziel, um die drei o.g. > Punke abzudecken? > meine Vorgabe ist JTAG. ich hoffe Du bist kein klicki-bunti Typ, sondern möchtest den Arduino Mega 2560 wirklich verstehen lernen. Dann sollte Dir aber die Distanz der Information von der Homepage relativ egal sein. Folgende Datenblätter bzw. Informationen sind essentiell: 1. http://arduino.cc/en/pmwiki.php?n=Main/ArduinoBoardMega2560. Von dort aus insbesonders http://arduino.cc/en/uploads/Main/arduino-mega2560_R3-sch.pdf. 2. http://www.atmel.com/Images/Atmel-2549-8-bit-AVR-Microcontroller-ATmega640-1280-1281-2560-2561_datasheet.pdf. Das Studium dieses Datenblatts benötigt Tage bis Monate. Nichtsdestotrotz wird (abgesehen von absoluten Anfängern) hier im Forum schon erwartet, dass jeder Fragesteller zunächst zumindest die relevanten Kapitel des Datenblatts zu Rate zieht, und erst danach seine noch verbleibenden Fragen einstellt. Da Du die Arduino-IDE nicht benutzt, gehe ich davon aus, dass Du eher an dem puren Atmega interessiert bist, und dich das ganze "drumherum" des Arduino-Boards eher stört. Warum dann nicht alternativ einen Atmega1284P-PU auf Steckbrett? LG, Sebastian
Hallo, also: Das Ganze wurde "rückwärts" aufgezogen. Auch bin ich nur "analog" firm. Unter der AVR-Homepage schaute ich nach passenden Prozessoren. Irgend wann fiel die Wahl auf den mega2560. Weil der zudem häufige Suchtreffer liefere, war der mega2560 für meine erste Entscheidung fix. Auf Arduino kam ich erst später, aufgrund der Fassung des mega2560. Von den anderen Typen weiß ich denmach also überhaupt gar nichts. Ehrlich gesagt, ich dachte als Altenative an einen CortexM. Aber mit dem Gefühl, daß der wohl nur mit 3,3V-Pins spielt und mit Null-Ahnung und sowieso ... Also blieb ich beim TTL-AVR. Gut, so sattel ich noch einen AVR-Dragon drauf, ich brauche von Reichelt eh noch andere Kleinigkeiten. - Daß der nicht eingehaust ist, finde ich Obermist - ESD-fest wie der Arduino sollte der hoffentlich sein. Die drei Tage Untätigkeit zwischendurch waren ziemlich hilfreich. So hat sich einiges festigen können. Peter
:
Bearbeitet durch User
Peter Thoms schrieb: > Gut, > so sattel ich noch einen AVR-Dragon drauf Wozu, zum Teufel? Was, glaubst du, wird dir das bringen? HW-Debugger braucht man nicht. Den ganzen normalen Scheiß debuggt man auch als Anfänger eh' spielend leicht im Simulator. Der hat natürlich Lücken und Macken, die sind aber gut bekannt und lassen sich für einen fortgeschrittenen Simulator-Benutzer deshalb mit entsprechend angepaßten SimDebug-Builds recht gut umgehen. Spätestens damit läßt sich dann so ziemlich alles an Logikfehlern finden, sogar wesentlich besser als mit einem "echten" Debugger und realen Eingangssignalen. Denn im Simulator kann man die zum sichtbaren Fehler führende Situation ganz gezielt reproduzierbar immer wieder erneut herbeiführen und sich dabei beim Debugging zeitlich immer weiter in Richtung der eigentlichen Fehlerursache zurückarbeiten, bis man hoffentlich irgendwann den eigentlichen Auslöser des Fehlers gefunden hat, der manchmal viele Millionen Takte vor dem Sichtbarwerden des Fehlers liegt. Das ist mit einem HW-Debugger in der Form nicht möglich. Hier landet man nur eher zufällig von Zeit zu Zeit an der Stelle, wo der Fehler bereits eine nennenswerte Auswirkung hat, also z.B. einen Reset auslöst oder eine Struktur unbezweifelbar zerstört ist oder sowas. Ja, das ist die Stelle, wo man bemerkt, daß da irgendwo ein Fehler sein muß. Aber wie hilft dir der HW-Debugger nun dabei, ihn zu finden? Das ist der Punkt: De facto praktisch garnicht. Was nach all dem dann immer noch bleibt, sind knallharte Timing-Probleme. Da kommt man dann im Simulator nicht weiter, weil die Anpassungen an die Simulatorfehler das Timing verändern und im HW-Debugger auch nicht, weil das Debuggen selber das Timing völlig zerstört. Da helfen dann nur noch minimalinvasive Debugausgaben, um dem Problem auf die Spur zu kommen, im Extremfall sind dann halt Portbitwackeln und ein Oszi die einzig möglichen nützlichen "Debugger".
Dem kann man nichts mehr hinzufügen. Wahrscheinlich ist jetzt der beste Zeitpunkt, diesen Thread zu schließen.
c-hater schrieb: >> Gut, >> so sattel ich noch einen AVR-Dragon drauf > > Wozu, zum Teufel? Was, glaubst du, wird dir das bringen? > > HW-Debugger braucht man nicht. Den ganzen normalen Scheiß debuggt man > auch als Anfänger eh' spielend leicht im Simulator. Hallo, das ist auch wieder wahr. Solange ich Deine, in einem früheren Post, beschriebene Toolchain noch nicht zusammen habe, ist das zumindest ein Versuch wert. Die ferne Absicht aber ist, daß das ganze Gebilde real existieren soll. Gut, verzeiht mir bitte, daß ich nicht alle nützlichen Hinweise auf einem Knall zeitgleich berücksichtigen konnte. Peter
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.