Das Debuggen von klassischen AVRs in der Arduino IDE 2 ist endlich Realität geworden! Es hat eine Weile gedauert, diese Funktion zu implementieren, aber jetzt ist es nur noch ein Kinderspiel, das Debugging zu aktivieren und den Debugger zu benutzen.
Weiter lesenSchlagwort: Arduino Uno

Debugging 2.0
Das Bild in diesem Blogbeitrag basiert auf einer Vektorgrafik von captainvector bei 123RF.
Was hält die Leute davon ab, einen Debugger zu benutzen? Nun, meistens sind es die anfänglichen Kosten für die Einrichtung der Debugging-Umgebung und das Erlernen des Umgangs mit dem Debugging-Tool. Ich hoffe, dass die nächste Version meines Hardware-Debugging-Tools dw-link, mit dem man klassische ATtinys und ATmegaX8s debuggen kann, diese Belastung etwas verringert, vor allem, weil man die dazugehörige Hardware jetzt bei Tindie kaufen kann.


Kalibrierung der AVR MCU
Das vorgestellte Bild stammt von OpenClipart-Vectors auf Pixabay.
Wenn man eine eigene MCU-Platine baut, verwendet man oft keinen Quarz oder Resonator. Stattdessen wird der interne RC-Oszillator verwendet, der ziemlich ungenau sein kann. Wenn man die interne Referenzspannung zur Messung der Versorgungsspannung verwenden will, stellt sich heraus, dass die Referenzspannung sehr stark von ihrem Nennwert abweichen kann. Sowohl der RC-Oszillator als auch die interne Referenzspannung können jedoch kalibriert werden. In diesem Blogbeitrag beschreibe ich eine einfache Methode, um beides mit einem UNO-Board und einem Multimeter unter Verwendung der avrCalibrate-Bibliothek zu kalibrieren.
Weiter lesen
Ein debugWIRE-Hardware-Debugger für weniger als 10 €
DasTitelbild dieses Beitrags basiert auf einem Bild von Florian-if, das bei Wikipedia unter CC-BY-SA-3.0 veröffentlicht wurde.
Ist es möglich, einen debugWIRE-Hardware-Debugger für weniger als 10 € zu bauen? Man kann, wenn man ein paar Kompromisse eingeht, ein bisschen lötet und Schrumpfschlauch erhitzt.
Weiter lesen
dw-link: Ein neuer Hardware-Debugger für ATtinys und kleine ATmegas
Wie in einem früheren Blogbeitrag erwähnt, sind Hardware-Debugger die Königs-Klasse der eingebetteten Debugging-Werkzeuge. Bis heute gab es jedoch nur sehr wenige, relativ teure Tools für die debugWIRE-Schnittstelle, die von den klassischen ATtinys und einigen ATmega-MCUs verwendet wird.
Die gute Nachricht ist, dass man jetzt einen Arduino Uno, Nano oder Pro Mini in einen debugWIRE-Hardware-Debugger verwandeln kann, der mit avr-gdb
, der AVR-Version des GNU-Projektdebuggers, kommunizieren kann.

Debuggen eines Debuggers mit sich selbst
Das vorgestellte Bild dieses Beitrags ist ein Comic aus xkcd.com.
Der obige xkcd-Comic mit dem Titel Debugger spielt auf das Problem an, dass man bei der Anwendung einer bestimmten Methode auf sich selbst möglicherweise nicht das bekommt, wonach man gefragt hat. Turings Halteproblem ist ein bekanntes Beispiel dafür: Man kann algorithmisch nicht entscheiden, ob ein Algorithmus auf einer gegebenen Eingabe terminiert. Haben wir dieses Problem auch bei Debuggern? Insbesondere habe ich mich gefragt, ob es sinnvoll ist, den Hardware-Debugger, den ich entwickle, mit sich selbst zu debuggen.
Weiter lesen
Logisch!
Wenn Dinge schiefgehen, obwohl die Programmlogik korrekt zu sein scheint, ist es an der Zeit, die Signale zu untersuchen, die in die MCU reingehen und aus der MCU herauskommen. Das beste Werkzeug dafür ist ein Logikanalysator.
Weiter lesen