Arduino Helpers develop
Utility library for Arduino
Debug.ino

Debug

This examples shows how use the debug macros for printing different kinds of debugging information

Boards:
AVR, AVR USB, Nano Every, Nano 33 IoT, Nano 33 BLE, UNO R4, Pi Pico, Due, Teensy 3.x, ESP8266, ESP32

Behavior

This is the result of `DEBUG`
[/home/pieter/GitHub/Arduino-Debugging/Example/Example.ino:12]: This is the result of `DEBUGREF`
[void loop() @ line 13]: This is the result of `DEBUGFN`
[0:2:11.085]: This is the result of `DEBUGTIME`
a = 1, b = 2, c = 3
log10(1000) - 2 = 1.00
millis() = 131085
Serial.read() = -1
[int someFunction(int) @ line 26]: parameter = 42
#define DEBUG(x)
Definition: Debug.hpp:182
#define DEBUGFN(x)
Definition: Debug.hpp:188
#define DEBUGTIME(x)
Definition: Debug.hpp:191
#define DEBUGREF(x)
Definition: Debug.hpp:185
See also
Debug for instructions on how to add an option in the Arduino IDE to easily enable and disable debugging globally without editing the settings file.

Written by PieterP, 2018-07-31
https://github.com/tttapa/Arduino-Helpers

void setup() {
Serial.begin(115200);
while (!Serial)
;
}
void loop() {
DEBUG("This is the result of `DEBUG`");
DEBUGREF("This is the result of `DEBUGREF`");
DEBUGFN("This is the result of `DEBUGFN`");
DEBUGTIME("This is the result of `DEBUGTIME`");
int a = 1, b = 2, c = 3;
DEBUGVAL(a, b, c);
(void)a, (void)b, (void)c;
DEBUGVAL(log10(1000) - 2);
DEBUGVAL(millis());
DEBUGVAL(Serial.read());
someFunction(42);
DEBUG("");
delay(5000);
}
int someFunction(int parameter) {
DEBUGFN(NAMEDVALUE(parameter));
return parameter;
}
Dummy header file for Arduino builder.
#define DEBUGVAL(...)
Definition: Debug.hpp:194
#define NAMEDVALUE(x)
Macro for printing an expression as a string, followed by its value.
Definition: Debug.hpp:92