Forum: Mikrocontroller und Digitale Elektronik mySmartUSB light oder USBprog zum Flashen - Frage zum Debuggen


von Tobias G. (tobi1435)


Lesenswert?

Hallo zusammen,

ich programmiere seit einiger Zeit ATmega bzw. ATtiny Mikrocontroller in 
C, bin aber noch ein Anfänger auf diesem Gebiet.
Da mein Notebook keine echte RS232-Schnittstelle besitzt und das Flashen 
der Programme über ISP mittels eines USB-RS232-Konverters sehr langsam 
ist, nutze ich zur Zeit den Bootloader FBoot.
Allerdings habe ich immer wieder Probleme, da offensichtlich der 
Bootloader überschrieben wird oder nicht mehr gestartet wird, sodass ich 
keine Programme mehr hochladen kann, oder sher kuriose Probleme 
auftreten, die evtl. mit dem Bootoader zusammenhängen könnten. Ich denke 
daher darüber nach, eine USB-ISP-Schnittstelle zu erwerben. Diese 
sollten den Angaben nach ja schneller sein, als der USB-RS232-Konverter.

Ich habe mir insbesondere mySmartUSB und USBprog angesehen.
Interessant am USBprog fand ich, dass dieser wohl auch Debugging 
unterstützt. Da ich hiermit keiner Erfahrung habe und es natürlich 
ärgerlich wäre, wenn man viel Geld für einen Bausatz ausgiebt, der 
anschließend nicht den Vorstellungen entspricht, habe ich einige Fragen:

1. Verstehe ich das richtig, dass Debugging nur über JTAG unterstützt 
wird und dass dies erst ab ATmega 16 (also nicht beim ATmega 8 oder beim 
ATtiny 2313) unterstützt wird?
Bzw. gibt es auch die Möglichkeit über eine andere Schnittstelle 
(beispielsweise RS232) zu debuggen, damit dies auch vom den kleineren 
Controllern unterstützt wird?

2. Kann ich beim Debuggen alle Variablen, den Inhalt des 
Arbeitsspeichers und ggf. auch ADC-Werte etc. einsehen?

3. Muss ich den Mikrocontroller so programmieren, dass er zu einem 
bestimmten Zeitpunkt die ganzen Werte ausgiebt oder macht er das ständig 
und automatisch?

4. Soweit ich weiß, kann ich die Pins der JTAG-Schnittstelle nicht 
gleichzeitig nutzen. Wäre es schlimm, wenn zusätzlich Hardware (z. B. 
Transistor, der entwas unkritisches steuert oder Taster mit 
Pull-Widerstand) an diesen Pins angeschlossen wäre, die außerhalb des 
Debuggens genutzt wird? Und kann ich diese dann auch weiterhin im 
Programm ansteuern (ohne dass diese funktionieren) oder stört dies JTAG? 
Denn bei einigen meiner Projekte sind alle Pins belegt. Oder müssen 
diese 4 Pins auf jeden Fall ständig frei bleiben?

5.Funktioniert das Debuggen und das Flashen mittels ISP auch auf Windows 
7 Home Premium in der 64 Bit Version?

6. Verstehe ich das richtig, dass der Untersichied der drei Versionen 
von USBprog (nicht programmiert, programmiert mit AVRISPmkII Klon und 
programmiert mit openOCD) nur die Firmware ist, die man aber über ISP 
(z. B. von einem Rechner mit echter RS232-Schnittstelle) sowieso selbst 
hochladen kann?

7. Benötige ich zum Flashen mittels ISP eine andere Firmware als zum 
Debuggen? Bzw. muss ich diese dann jedes Mal wechseln, wenn ich beim 
Debuggen eine geändertes Programm testen will?

Falls das Debuggen nicht nach meinen Wünschen funktioniert oder nicht 
für Anfänger wie mich geeignet ist, würde mir für die reine 
ISP-Schnittstelle vermutlich mySmartUSB reichen. Debuggen währe aber 
wahrscheinlich auch sehr interessant und hilfreich.
Wozu würdet ihr mir raten?


Vielen Dank für eure Antworten und Tipps, zu den vielen Fragen. ;-)

Viele Grüße,
Tobi

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.