diff options
Diffstat (limited to 'avr/debug.h')
-rw-r--r-- | avr/debug.h | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/avr/debug.h b/avr/debug.h index ea67a99..1815166 100644 --- a/avr/debug.h +++ b/avr/debug.h @@ -2,13 +2,33 @@ #ifndef DEBUG_H_ #define DEBUG_H_ +#include "common.h" #include <avr/pgmspace.h> #ifdef DEBUG +#define _DEBUG 1 +#else +#define _DEBUG 0 +#endif + +#define debug_cond(cond, fmt, args...) \ + do { \ + if (cond) \ + printf_P(PSTR(fmt), ##args); \ + } while (0) + +#define debug(fmt, args...) \ + debug_cond(_DEBUG, fmt, ##args) + + +#if 1 +#ifdef DEBUG #define DBG_P(lvl, format, ...) if (DEBUG>=lvl) \ fprintf_P( stdout, PSTR(format), ##__VA_ARGS__ ) #else #define DBG_P(lvl, ...) #endif +#endif /* 0 */ #endif /* DEBUG_H_ */ + |