GEX core repository.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gex-core/debug.h

39 lines
786 B

6 years ago
//
// Created by MightyPork on 2017/11/04.
//
#ifndef GEX_DEBUG_H
#define GEX_DEBUG_H
#include <inttypes.h>
#include <stddef.h>
#include <stdarg.h>
#if USE_DEBUG_UART
int PRINTF(const char *format, ...) __attribute__((format(printf,1,2))) ;
void PUTSN(const char *string, size_t len);
int PUTS(const char *string);
void PUTNL(void);
6 years ago
int PUTCHAR(int ch);
#define dbg(format, ...) do { \
if (VA_ARG_COUNT(__VA_ARGS__) == 0) { \
PUTS(format); \
} else { \
PRINTF(format, ##__VA_ARGS__); \
} \
PUTNL(); \
} while (0)
6 years ago
#else
#define dbg(format, ...) do {} while (0)
#define PRINTF(format, ...) do {} while (0)
#define PUTSN(string, len) do {} while (0)
#define PUTS(string) do {} while (0)
#define PUTCHAR(ch) do {} while (0)
#endif
#endif //GEX_DEBUG_H