Forum: Mikrocontroller und Digitale Elektronik Wie wichtig ist ein Debugger?


von Stephan W. (stipo)


Lesenswert?

Hallo zusammen,

ich komme irgendwie nicht richtig weiter. Scheinbar fehlt mir die 
möglichkeit den Code zu debuggen, das ich zeilenweise nachvollziehen 
kann, was der Code macht und vor allem, ob er das macht, was ich 
bezwecken möchte.

Daher meine Frage, wie wichtig ist bei euch im alltag ein Debugger für 
die Schaltung. Der Debugger im AVR Studio 5 kapiere ich noch nicht so 
richtig, als das ich damit alleine etwas aussagen könnte.

Ich habe den AVR Dragon gesehen. Der wäre ja noch in einem erträglichen 
Rahmen. Ist der genau das was ich suche, um damit in der Schaltung den 
Atmega8 zu debuggen?

Danke schonmal.

Grüße
Stephan

von holger (Gast)


Lesenswert?

>Daher meine Frage, wie wichtig ist bei euch im alltag ein Debugger für
>die Schaltung.

Bei mir Nebensache. Eine einzelne LED die mal aufblitzt
bringt häufig mehr.

von spess53 (Gast)


Lesenswert?

Hi

>Ist der genau das was ich suche, um damit in der Schaltung den
>Atmega8 zu debuggen?

Nein. Der ATMega8 hat keine Möglichkeit zum Debuggen. Alternative: 
Atmega88.

MfG Spess

von Stephan W. (stipo)


Lesenswert?

holger schrieb:
>>Daher meine Frage, wie wichtig ist bei euch im alltag ein Debugger für
>>die Schaltung.
>
> Bei mir Nebensache. Eine einzelne LED die mal aufblitzt
> bringt häufig mehr.

Auch keine schlechte idee. Nur manchmal wirst Du auch ein Debugger 
benutzen oder?

von Stephan W. (stipo)


Lesenswert?

spess53 schrieb:
> Hi
>
>>Ist der genau das was ich suche, um damit in der Schaltung den
>>Atmega8 zu debuggen?
>
> Nein. Der ATMega8 hat keine Möglichkeit zum Debuggen. Alternative:
> Atmega88.
>
> MfG Spess

Danke für den Hinweis. Der Atmega88 ist ja Pin Kompatibel. So könnte ich 
den dann gut nutzen.

Ist das AVR Dragon dann wenigstens eine gute wahl?

von Olaf (Gast)


Lesenswert?

> Daher meine Frage, wie wichtig ist bei euch im alltag ein Debugger
> für die Schaltung.

Wenn du einmal mit soetwas gearbeitet hast dann wirst du NIE mehr ohne 
arbeiten wollen!

Womit ich nicht sagen will das gelegentlich auch mal eine blinkende LED 
ganz nuetzlich ist!

Olaf

von Sam .. (sam1994)


Lesenswert?

Einen Debugger (HW) habe ich gar nicht und komme trotzdem aus. 
Allerdings ist der Avrsimulator oft im Gebrauch.

von holger (Gast)


Lesenswert?

>> Bei mir Nebensache. Eine einzelne LED die mal aufblitzt
>> bringt häufig mehr.
>
>Auch keine schlechte idee. Nur manchmal wirst Du auch ein Debugger
>benutzen oder?

Stimmt, manchmal. Für Dauertests eher UART. Da kann man dann
am PC mitschneiden. Debuggen mit Singlestep wird quasi unmöglich
wenn mal ein schneller Timerinterrupt mitläuft.
Debuggen ist bei mir ein Mix aus Erfahrung, einer oder mehr LEDs,
UART und am Schluss der Debugger. Der kommt erst dann zum Einsatz
wenn ich mit den anderen Mitteln einen Ansatzpunkt gefunden habe
wo man denn mal einen Breakpoint hinsetzen könnte;)

von Bartli (Gast)


Lesenswert?

> Debuggen ist bei mir ein Mix aus Erfahrung, einer oder mehr LEDs,
> UART und am Schluss der Debugger.

Genau, mit Betonung auf zum Schluss.

Zuallererst muss man kapieren was man macht. Danach wählt man zwischen 
Logmessages, LEDs, Spezialdebuggern wie Valgrind (wenn verfügbar...ich 
habs halt eher nicht mit AVRs zu tun) oder einem klassischen Debugger 
usw. und so fort.

Ich hatte mal einen Fehler welcher so in 12h so 10 mal auftrat. Also 
einen Test geschrieben mit ordentlich Logoutput, mehrere Tage laufen 
gelassen und die Logs analysiert. Wenn du glaubst den Fehler behoben zu 
haben kannst du anschliessend so einen Test gleich noch brauchen um das 
zu überprüfen.

Und ich mag mich an einen Arbeitskollegen erinnern, der einen ganzen Tag 
lang versuchte einen Stackoverflow zu debuggen...jedesmal wenn er über 
den Funktionsaufruf steppte welcher den Overflow verursachte, war das 
System nachher tot und der Debugger leicht durcheinander :D

von dunno.. (Gast)


Lesenswert?

so ein debugger kann auch beim einstieg praktisch sein (wenn man ihn 
dann mal verstanden hat) - ansonsten nutz ich persönlich auch LEDs bzw 
auch mal nen state-analyzer, wenn die leds nur ein paar ms lang 
blinken.. ;)

zurück zur frage nach dem Dragon: Hab ihn für zuhause selber, zusammen 
mit dem Dragon Lair (google) in einem gehäuse.

kann alles was der bastler braucht, also wers geld ausgeben möchte: 
klare empfehlung meinerseits.

mfg

von Andreas K. (derandi)


Lesenswert?

Ich würd meinen Debugger nicht mehr hergeben wollen, ne feine Sache wenn 
man dem Controller mal unter die Haube gucken kann.

von Stephan W. (stipo)


Lesenswert?

Danke zusammen,

da sind ja doch ein paar Tricks zusammen gekommen. Trotzdem werde ich 
den Dragon dann mal auf die Wunschliste setzen, da ich denke, damit doch 
einen erheblichen Schritt nach vorne zu machen und auch schneller 
Assembler verstehen lerne.

UART ist auch ein guter Tip. Nur eine Frage am Rande noch. Ich habe 
keine Serielle Schnittstelle mehr an irgendeinen meiner Rechner. USB 
dafür aber reichlich. Was für einen Chip würdet Ihr für USB empfehlen?

von dunno.. (Gast)


Lesenswert?

ich hab mir für sowas mal das hier gelötet:
http://www.recursion.jp/avrcdc/cdc-232.html#schematic
- weil ich grad nen tiny45 da hatte und die teile leicht besorgen 
konnte..

ansonsten wohl FT232.

von Uwe (de0508)


Lesenswert?

Hallo,

AVR CDC-232 habe ich auch mehrfach aufgebaut und im Einsatz und seit 
kurzem noch drei MCP2200 Breakout da.

Diese laufen auch unter Win7 und Linux, aber ich entwickele unter Linux.
Sie verkraften etwas höhere Baudraten.

Dem AVR CDC-232 habe ich mit einem 16 Quarz stabile 57600 Baud 
beigebracht.
Mit einem atMEga48 wäre auch ein 20MHz Quarz möglich.

Wer den MCP2200 auch mal testen möchte, findet hier ein sehr gutes 
Angebot.

- http://www.ebay.de/itm/130568386548

von spess53 (Gast)


Lesenswert?

Hi

>da sind ja doch ein paar Tricks zusammen gekommen. Trotzdem werde ich
>den Dragon dann mal auf die Wunschliste setzen, da ich denke, damit doch
>einen erheblichen Schritt nach vorne zu machen und auch schneller
>Assembler verstehen lerne.

Dafür geht in vielen Fällen auch der Simulator. Wenn man die 
Einschränkungen bezüglich der Hardwareunterstützung kennt, ein durchaus 
brauchbares Werkzeug.

Der AVR-Dragon hat ein sehr gutes Preis-Leistungs-Verhältnis, ist aber 
kein 100%-iger Ersatz für ein AVR ISP MKII. Ich hatte schon ein 
Programm, das sich mit dem Dragon nicht debuggen ließ. Mit dem AVR ISP 
MKII problemlos. Ich habe aber trotzdem zwei Dragons.

MfG Spess

von Stephan W. (stipo)


Lesenswert?

spess53 schrieb:
> Der AVR-Dragon hat ein sehr gutes Preis-Leistungs-Verhältnis, ist aber
>
> kein 100%-iger Ersatz für ein AVR ISP MKII. Ich hatte schon ein
>
> Programm, das sich mit dem Dragon nicht debuggen ließ. Mit dem AVR ISP
>
> MKII problemlos. Ich habe aber trotzdem zwei Dragons.

Der AVR ISP mkII ist doch nur ein Programmer? Oder hab ich da etwas noch 
nicht entdeckt?

von Thomas E. (thomase)


Lesenswert?

Stephan W. schrieb:
> Der AVR ISP mkII ist doch nur ein Programmer? Oder hab ich da etwas noch
> nicht entdeckt?

Da hast du Recht. Jetzt dürfen alle Spess die Nase lang ziehen. Er meint 
natürlich den JTAGICE.

mfg.

von Stephan W. (stipo)


Lesenswert?

Thomas Eckmann schrieb:
> Da hast du Recht. Jetzt dürfen alle Spess die Nase lang ziehen. Er meint
>
> natürlich den JTAGICE.

Und der ist mir definitiv zu teuer :) Bevor ich den Kaufe, muss erstmal 
ein Oszi hier her.

von Thomas E. (thomase)


Lesenswert?

Stephan W. schrieb:
> muss erstmal ein Oszi hier her.
Der zählt auch zu den Debug-Werkzeugen aus der ersten Reihe.

mfg.

von Stephan W. (stipo)


Lesenswert?

Thomas Eckmann schrieb:
> Der zählt auch zu den Debug-Werkzeugen aus der ersten Reihe.

Dem ist mir durchaus bewusst. Habe ja in der Lehre schon mit Oszi zu tun 
gehabt (Analog) und weiß auch das man in der Elektronik ohne fast im 
trüben fischt. Daher steht ein Oszi ganz oben auf der Wunschliste, was 
mein Hobby angeht.

Nur muss ich da wohl noch ein bisschen sparen :)

von spess53 (Gast)


Lesenswert?

HI

>Da hast du Recht. Jetzt dürfen alle Spess die Nase lang ziehen. Er meint
>natürlich den JTAGICE.

Wenigsten denkt zu dieser Zeit noch jemand mit. Selbstverständlich war 
das JTADICE gemeint. Tschuldigung.

MfG Spess

von spess53 (Gast)


Lesenswert?

HI

JTADICE ->JTAGICE

Meine beiden neuen, jungen Katzen haben gerade das Wohnzimmer als 
Rennbahn entdeckt. Das lenkt etwas ab.

MfG Spess

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
Noch kein Account? Hier anmelden.