Arduino Uno - Debugging externen Code?

Hallo,

wie das debugging via Serial.print funktioniert ist klar(Arduino ide).

Wenn ich nun eine externe Bibliothek einbinde und mich gewisse Variablenwerte interessieren, wie bekomme ich diese auch auf den seriellen Monitor? Also gemeint ist z.B. wenn ich das Usb Shield einbinde(Code von github) und mit Usb.init initialisiere, greife ich auf Methoden zu, die sich in der jeweiligen cpp Datei befinden. Dort moechte ich die Werte einzelner Variablen in Erfahrung bringen.

Wie kann ich das tun?

Vielen Dank im Voraus.

Gruss Michael

Indem Du Serial.print in den Code der Lib schreibst. Der sollte bei Dir unter \libraries liegen.

Gruß Tommy

nachsehen, ob es public variablen sind und dann mit objektname.variable ausgeben. Oder nachsehen, ob es get-Methoden für diese Variable gibt und dann über die getter ausgeben.

nachsehen, ob es public variablen sind und dann mit objektname.variable ausgeben.

oder einen "friend" definieren, welcher auch private Eigenschaften lesen darf.

Tommy56:
Indem Du Serial.print in den Code der Lib schreibst. Der sollte bei Dir unter \libraries liegen.

Gruß Tommy

Danke fuer die Info.
Aber, ist Serial in der Methode ueberhaupt bekannt?

Ja, aber Serial.begin(...) musst Du in der ino machen.

Gruß Tommy

Tommy56: Ja, aber Serial.begin(...) musst Du in der ino machen.

Gruß Tommy

Dann ist alles klar, vielen Dank

ist Serial in der Methode ueberhaupt bekannt?

Die .cpp Datei der Library wird wohl direkt oder indirekt #include <Arduino.h> machen.
Der einzige Unterschied ist, dass die IDE aus den .ino Dateien erst eine .cpp macht. Danach wird alles in der gleichen Umgebung übersetzt und zusammengelinkt.

Constructor-Code, der lange vor setup() ausgeführt wird, kannst du so natürlich nicht tracen.