Hallo zusammen,
ich habe nun endlich ein MKII Modul von Atmel um meinen USBASP zu
ersetzen und über die geheime Leitung des MKII Haltepunkte im
Quellentext setzen zu können.
Nach dem Einrichten wird mein Programm übertragen es ist nun kein *.hex
mehr sondern ein *.elf
Leider kann ich nicht feststellen, das nach dem Starten des Programms
auf dem Atiny85 mein erster Haltepunkt Ausgeführt wird es wird also
nicht gehalten was mache ich falsch ?
Vielen Dank für Hinweise
Karsten aus Berlin
Karsten S. schrieb:> was mache ich falsch ?
Du zeigst ein Bild auf dem man nichts erkennen kann.
Möglicher (aber nur angenomener) kapitaler Fehler ist dass
man ein Programm mit optimierter Compilierung verwendet.
Da gibt es oft keine Haltepunkte wo man welche braucht.
Karsten S. schrieb:> ich habe nun endlich ein MKII Modul von Atmel um meinen USBASP zu> ersetzen und über die geheime Leitung des MKII Haltepunkte im> Quellentext setzen zu können.
Du sprichst in Rätseln.
Was ist ein "MKII Modul"? Ist das ein AVRISPmkII oder ein JTAGICEmkII?
("Modul" wurden die bei Atmel eh nie bezeichnet.)
Welche "geheime Leitung"?
> Nach dem Einrichten wird mein Programm übertragen es ist nun kein *.hex> mehr sondern ein *.elf
Das Ergebnis des Linkers ist immer eine ELF-Datei. Aus der kann man sich
die Ladedaten in eine Intel-Hex-Datei extrahieren, muss es aber nicht.
Wenn man debuggen will, hilft einem die iHex-Datei nicht, denn die
enthält keinerlei Debug-Informationen.
> Leider kann ich nicht feststellen, das nach dem Starten des Programms> auf dem Atiny85 mein erster Haltepunkt Ausgeführt wird es wird also> nicht gehalten was mache ich falsch ?
Lässt sich anhand deiner spärlichen Beschreibung kaum sagen. Der
Screenshot zeigt irgendwas, was man nicht lesen kann.
Auch, wenn ich überhaupt kein Freund davon bin, nicht optimierte
Compilate zu debuggen: für einen ersten Test ist es sicher hilfreich,
die Optimierung auszuschalten, denn dann sollte sich wirklich auf jedes
Stück Quelltext ein Breakpoint setzen lassen. Zweitens musst du
natürlich sicherstellen, dass du auch in der Tat Debug-Symbole in deinem
Build hast. Atmel Studio habe ich nie gemocht und schon lange nicht mehr
benutzt, da kann ich dir nicht so detailliert helfen.
Hallo ,
erstmal vielen Dank für all die Hinweise das Bild lade ich hiermit
nochmal in hoher Auflösung nach.
Wenn ich den Debug Schalter Optimize reduziere auf None, erscheinen
Fehlermeldungen , sehe ich gerade , siehe bild 2
1
Severity Code Description Project File Line
2
Error recipe for target 'KeyMan.elf' failed KeyMan Y:\FlexxVisionProject\InspectSystem\AvrOpen\Subtil\USB_KeyMan\KeyMan-Admel6-HID\KeyMan\Debug\Makefile 142
3
Message previous implicit declaration of 'initADC' was here KeyMan Y:\FlexxVisionProject\InspectSystem\AvrOpen\Subtil\USB_KeyMan\KeyMan-Admel6-HID\KeyMan\KeyMan.c 113
4
Message previous implicit declaration of 'initDAC' was here KeyMan Y:\FlexxVisionProject\InspectSystem\AvrOpen\Subtil\USB_KeyMan\KeyMan-Admel6-HID\KeyMan\KeyMan.c 114
5
Error undefined reference to `EEPROM_read' KeyMan Y:\FlexxVisionProject\InspectSystem\AvrOpen\Subtil\USB_KeyMan\KeyMan-Admel6-HID\KeyMan\KeyMan.c 291
6
Error undefined reference to `EEPROM_read' KeyMan Y:\FlexxVisionProject\InspectSystem\AvrOpen\Subtil\USB_KeyMan\KeyMan-Admel6-HID\KeyMan\KeyMan.c 291
7
Error undefined reference to `EEPROM_read' KeyMan Y:\FlexxVisionProject\InspectSystem\AvrOpen\Subtil\USB_KeyMan\KeyMan-Admel6-HID\KeyMan\KeyMan.c 291
8
Error undefined reference to `EEPROM_read' KeyMan Y:\FlexxVisionProject\InspectSystem\AvrOpen\Subtil\USB_KeyMan\KeyMan-Admel6-HID\KeyMan\KeyMan.c 291
9
Error undefined reference to `EEPROM_write' KeyMan Y:\FlexxVisionProject\InspectSystem\AvrOpen\Subtil\USB_KeyMan\KeyMan-Admel6-HID\KeyMan\KeyMan.c 291
10
Error undefined reference to `EEPROM_write' KeyMan Y:\FlexxVisionProject\InspectSystem\AvrOpen\Subtil\USB_KeyMan\KeyMan-Admel6-HID\KeyMan\KeyMan.c 291
11
Error undefined reference to `EEPROM_write' KeyMan Y:\FlexxVisionProject\InspectSystem\AvrOpen\Subtil\USB_KeyMan\KeyMan-Admel6-HID\KeyMan\KeyMan.c 291
12
Error undefined reference to `EEPROM_write' KeyMan Y:\FlexxVisionProject\InspectSystem\AvrOpen\Subtil\USB_KeyMan\KeyMan-Admel6-HID\KeyMan\KeyMan.c 291
13
Message include '<string.h>' or provide a declaration of 'strlen' KeyMan Y:\FlexxVisionProject\InspectSystem\AvrOpen\Subtil\USB_KeyMan\KeyMan-Admel6-HID\KeyMan\KeyMan.c 395
14
Message expected 'const char *' but argument is of type 'unsigned char *' KeyMan Y:\FlexxVisionProject\InspectSystem\AvrOpen\Subtil\USB_KeyMan\KeyMan-Admel6-HID\KeyMan\KeyMan.c 395
15
Message include '<string.h>' or provide a declaration of 'memcpy' KeyMan Y:\FlexxVisionProject\InspectSystem\AvrOpen\Subtil\USB_KeyMan\KeyMan-Admel6-HID\KeyMan\usbdrv.c 266
Acherjeminee ich sehe gerade das mit dem ISP-MKII
von Atmel Debuggen nicht möglich sein soll, na das ist ja fatal.
Beitrag "AVRISP mkII als Debugger?"
Da brauche ich also ein ganz anderes Konzept.. oh je..
Danke für die Mühen hier.
Gruß aus Berlin
Karsten
Jörg W. schrieb:> Ist das ein AVRISPmkII oder ein JTAGICEmkII?Karsten S. schrieb:> Acherjeminee ich sehe gerade das mit dem ISP-MKII> von Atmel Debuggen nicht möglich sein soll, na das ist ja fatal.
Darum wurdest du gefragt.
Grundsätzlich geht debuggen bei AVRs über JTAG (einige AVRs) und/oder
debugWire (viele AVRs)
Karsten S. schrieb:> Da brauche ich also ein ganz anderes Konzept..
Wie umfangreich ist dein Projekt?
Vielleicht ist es ja nicht Fehleranfällig, bzw. Besteht keine Gefahr
durch Bugs oder vielleicht kommt man durch geplantes, aufmerksames
programmieren mit regelmäßigen Überprüfungen auch zum Ziel.
Hallo QQ-Gast,
du hast recht es ist ein AVRISPmkII damit kann ich genauso wenig
debuggen wie mit dem USBASP - Ich verwende eine Software TX Leitung
bisweilen um mit einem zweiten atiny85 NAchrichten zu empfangen, leider
ungünstig da ich den USB Port in asm mit hoher irq rate abtasten muss
(USB-YellowBook)
Danke für deine Hilfe, ich benötige den teuren MKIIISA mit Debugger von
Atmel die jetzt Microchip heißen, die debuggen über eine Leitung.
Kostet 128Euro.
Ich habe einen JTag Debugger von AnalogDevices.. werde aber den System
Programmer-Debugger von Atmel orden - Danke für deine Hinweise
Karsten aus Berlin
Karsten S. schrieb:> Danke für die Mühen hier.
Danke für deine Mühen hier. Deine Screenshots sind immer noch
so scheisse wie der erste. Du hast dich sehr bemüht uns alles
zu zeigen. Screenshots gibt man im *.png Format wieder.
Jörg W. schrieb:> Deine Fehlermeldungen haben aber mit dem Debuggen gar nichts zu tun. Die> zeugen einfach von völlig unverstandenem Code.
Mit anderen Worten, dein Programm wird nicht kompiliert.
Du bekommst also überhaupt nichts, was debugbar wäre. Die
Fehlermeldungen, Warnungen und Informationen am unteren Bildschirmrand
geben detaillierte Hinweise zur Problemlösung.
Oben hast du selbst sämtliche Meldungen per copy and paste eingestellt.
Lies die durch und behebe die Fehler. Zuerst!
Karsten S. schrieb:> Danke für deine Hilfe, ich benötige den teuren MKIIISA mit Debugger von> Atmel die jetzt Microchip heißen, die debuggen über eine Leitung.> Kostet 128Euro.
Es gibt immer noch auch alte AVR JTAG ICE XPII aus China:
https://www.ebay.de/itm/123947502568?hash=item1cdbd8cbe8:g:Z44AAOSwlwtdrYSN
Aber atiny85 mit debugWIRE ist kaum gute Wahl, wenn man schrittweise
Programm durchgehen will. Viel besser wäre, Code mit einer Mega über
JTAG zu prüfen und später auch in Tiny verwenden.
Maxim B. schrieb:> Es gibt immer noch auch alte AVR JTAG ICE XPII auch China
Statt zum Clone eines 16 Jahre alten Debuggers würde ich da aber lieber
zum (einigermaßen) aktuellen Original greifen, der Preisunterschied
beträgt nur wenige Prozent (und möglicherweise gibt's die auch irgendwo
bissel billiger):
https://www.reichelt.de/debug-programmer-fuer-arm-cortex-m-avr-atmel-ice-basic-p176552.html?&trstct=pos_0&nbc=1
Leider hat die Atmel-Übernahme durch Microchip den Preisen dieser Teile
nicht gut getan; vor ein paar Jahren kosteten sie 2/3 davon.
Jörg W. schrieb:> und möglicherweise gibt's die auch irgendwo> bissel billiger
Ja, z.B. hier:
https://shop.mymcu.de/index.php?sp=article.sp.php&artID=200142
Allerdings: Ohne Gehäuse und Kabelsatz.
> Leider hat die Atmel-Übernahme durch Microchip den Preisen dieser Teile> nicht gut getan; vor ein paar Jahren kosteten sie 2/3 davon.
Ja, und inwischen haben das wohl auch die letzten Reseller mitbekommen.
Vor drei Monaten gab's das Board von o.g. Quelle noch für 39 Euronen.
Das war zu der Zeit ein echtes Schnäppchen. Für den derzeitigen Preis
von 59€ ist es schon deutlich weniger attraktiv.
c-hater schrieb:> Vor drei Monaten gab's das Board von o.g. Quelle noch für 39 Euronen.
Etwa so viel kostete es anfangs überall.
Gehäuse und Kabel sind natürlich nicht ganz unpraktisch.
Jörg W. schrieb:> Gehäuse und Kabel sind natürlich nicht ganz unpraktisch.
Gehäuse halte ich für durchaus verzichtbar, schließlich wird das Ding
typisch in Umgebungen verwendet, in denen auch das Target noch kein
Gehäuse hat. Debugging halt. Ein Board mehr oder weniger in den
Versuchsaufbau schrauben: geschenkt.
Der fehlende Kabelsatz ist allerdings wirklich recht schmerzlich.
c-hater schrieb:> Gehäuse halte ich für durchaus verzichtbar, schließlich wird das Ding> typisch in Umgebungen verwendet, in denen auch das Target noch kein> Gehäuse hat.
Naja, auch für den Dragon seinerzeit war es schon nicht unpraktisch, ihn
direkt in seiner Pappschachtel zu belassen und nur die Kabel nach außen
zu führen. Das reduziert die Gefahr von Kurzschlüssen beim
Versuchsaufbau.
Klar, das Gehäuse kann man sich auch irgendwie 3D-drucken heutzutage,
das Kabel (und dabei auch der 10->6 Adapter) ist wichtiger.
Jörg W. schrieb:> Statt zum Clone eines 16 Jahre alten Debuggers würde ich da aber lieber> zum (einigermaßen) aktuellen Original greifen
Leider gibt es Original nicht zu kaufen. Nur deshalb Clone.
16 Jahre alt - das ist eher Vorteil: alles gut geprüft und sicher.
Ich spiele oft Orgeln, die 150 - 300 Jahre alt sind. Manche sind besser
als heutigen. Alter ist nicht immer schlecht.
Maxim B. schrieb:> Leider gibt es Original nicht zu kaufen.
Die aktuellen schon, und die sind nicht nur vielfältiger als die alten,
sondern auch schneller. Da sie selbst nach der Teuerungsaktion gerade
mal genauso viel kosten wie diese (technologisch) alten Clones, finde
ich die Clones hier nicht sinnvoll (zumal keiner weiß, wie gut sie
wirklich sind).
Einziges Argument pro JTAGICEmkII wäre debuggen mit AVaRICE oder AVR
Studio 4.