Arduino Helpers master
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:179
#define DEBUGFN(x)
Definition: Debug.hpp:185
#define DEBUGTIME(x)
Definition: Debug.hpp:188
#define DEBUGREF(x)
Definition: Debug.hpp:182
See also
md_pages_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:191
#define NAMEDVALUE(x)
Macro for printing an expression as a string, followed by its value.
Definition: Debug.hpp:89