diff options
Diffstat (limited to 'common/print.h')
| -rw-r--r-- | common/print.h | 40 |
1 files changed, 29 insertions, 11 deletions
diff --git a/common/print.h b/common/print.h index b22509477..80858b3bc 100644 --- a/common/print.h +++ b/common/print.h | |||
| @@ -30,13 +30,12 @@ | |||
| 30 | #include <avr/pgmspace.h> | 30 | #include <avr/pgmspace.h> |
| 31 | 31 | ||
| 32 | 32 | ||
| 33 | // avoid collision with arduino/Print.h | ||
| 34 | #ifndef __cplusplus | ||
| 35 | // this macro allows you to write print("some text") and | 33 | // this macro allows you to write print("some text") and |
| 36 | // the string is automatically placed into flash memory :) | 34 | // the string is automatically placed into flash memory :) |
| 35 | // TODO: avoid collision with arduino/Print.h | ||
| 36 | #ifndef __cplusplus | ||
| 37 | #define print(s) print_P(PSTR(s)) | 37 | #define print(s) print_P(PSTR(s)) |
| 38 | #endif | 38 | #endif |
| 39 | |||
| 40 | #define println(s) print_P(PSTR(s "\n")) | 39 | #define println(s) print_P(PSTR(s "\n")) |
| 41 | 40 | ||
| 42 | /* for old name */ | 41 | /* for old name */ |
| @@ -49,15 +48,12 @@ | |||
| 49 | #define pbin_reverse(data) print_bin_reverse8(data) | 48 | #define pbin_reverse(data) print_bin_reverse8(data) |
| 50 | #define pbin_reverse16(data) print_bin_reverse16(data) | 49 | #define pbin_reverse16(data) print_bin_reverse16(data) |
| 51 | 50 | ||
| 52 | |||
| 53 | /* print value utility */ | 51 | /* print value utility */ |
| 54 | #define print_val_dec(v) do { print_P(PSTR(#v ": ")); print_dec(v); print_P(PSTR("\n")); } while (0) | 52 | #define print_val_dec(v) do { print_P(PSTR(#v ": ")); print_dec(v); print_P(PSTR("\n")); } while (0) |
| 55 | #define print_val_decs(v) do { print_P(PSTR(#v ": ")); print_decs(v); print_P(PSTR("\n")); } while (0) | 53 | #define print_val_decs(v) do { print_P(PSTR(#v ": ")); print_decs(v); print_P(PSTR("\n")); } while (0) |
| 56 | |||
| 57 | #define print_val_hex8(v) do { print_P(PSTR(#v ": ")); print_hex8(v); print_P(PSTR("\n")); } while (0) | 54 | #define print_val_hex8(v) do { print_P(PSTR(#v ": ")); print_hex8(v); print_P(PSTR("\n")); } while (0) |
| 58 | #define print_val_hex16(v) do { print_P(PSTR(#v ": ")); print_hex16(v); print_P(PSTR("\n")); } while (0) | 55 | #define print_val_hex16(v) do { print_P(PSTR(#v ": ")); print_hex16(v); print_P(PSTR("\n")); } while (0) |
| 59 | #define print_val_hex32(v) do { print_P(PSTR(#v ": ")); print_hex32(v); print_P(PSTR("\n")); } while (0) | 56 | #define print_val_hex32(v) do { print_P(PSTR(#v ": ")); print_hex32(v); print_P(PSTR("\n")); } while (0) |
| 60 | |||
| 61 | #define print_val_bin8(v) do { print_P(PSTR(#v ": ")); print_bin8(v); print_P(PSTR("\n")); } while (0) | 57 | #define print_val_bin8(v) do { print_P(PSTR(#v ": ")); print_bin8(v); print_P(PSTR("\n")); } while (0) |
| 62 | #define print_val_bin16(v) do { print_P(PSTR(#v ": ")); print_bin16(v); print_P(PSTR("\n")); } while (0) | 58 | #define print_val_bin16(v) do { print_P(PSTR(#v ": ")); print_bin16(v); print_P(PSTR("\n")); } while (0) |
| 63 | #define print_val_bin32(v) do { print_P(PSTR(#v ": ")); print_bin32(v); print_P(PSTR("\n")); } while (0) | 59 | #define print_val_bin32(v) do { print_P(PSTR(#v ": ")); print_bin32(v); print_P(PSTR("\n")); } while (0) |
| @@ -67,13 +63,13 @@ | |||
| 67 | 63 | ||
| 68 | 64 | ||
| 69 | 65 | ||
| 66 | #ifndef NO_PRINT | ||
| 67 | |||
| 70 | #ifdef __cplusplus | 68 | #ifdef __cplusplus |
| 71 | extern "C" { | 69 | extern "C" { |
| 72 | #endif | 70 | #endif |
| 73 | |||
| 74 | /* function pointer of sendchar to be used by print utility */ | 71 | /* function pointer of sendchar to be used by print utility */ |
| 75 | extern int8_t (*print_sendchar_func)(uint8_t); | 72 | void print_set_sendchar(int8_t (*print_sendchar_func)(uint8_t)); |
| 76 | extern bool print_enable; | ||
| 77 | 73 | ||
| 78 | /* print string stored in data memory(SRAM) */ | 74 | /* print string stored in data memory(SRAM) */ |
| 79 | void print_S(const char *s); | 75 | void print_S(const char *s); |
| @@ -100,9 +96,31 @@ void print_bin32(uint32_t data); | |||
| 100 | void print_bin_reverse8(uint8_t data); | 96 | void print_bin_reverse8(uint8_t data); |
| 101 | void print_bin_reverse16(uint16_t data); | 97 | void print_bin_reverse16(uint16_t data); |
| 102 | void print_bin_reverse32(uint32_t data); | 98 | void print_bin_reverse32(uint32_t data); |
| 103 | |||
| 104 | #ifdef __cplusplus | 99 | #ifdef __cplusplus |
| 105 | } | 100 | } |
| 106 | #endif | 101 | #endif |
| 107 | 102 | ||
| 103 | #else | ||
| 104 | |||
| 105 | #define print_set_sendchar(func) | ||
| 106 | #define print_S(s) | ||
| 107 | #define print_P(s) | ||
| 108 | #define print_CRLF() | ||
| 109 | #define print_dec(data) | ||
| 110 | #define print_decs(data) | ||
| 111 | #define print_hex4(data) | ||
| 112 | #define print_hex8(data) | ||
| 113 | #define print_hex16(data) | ||
| 114 | #define print_hex32(data) | ||
| 115 | #define print_bin4(data) | ||
| 116 | #define print_bin8(data) | ||
| 117 | #define print_bin16(data) | ||
| 118 | #define print_bin32(data) | ||
| 119 | #define print_bin_reverse8(data) | ||
| 120 | #define print_bin_reverse16(data) | ||
| 121 | #define print_bin_reverse32(data) | ||
| 122 | |||
| 123 | #endif | ||
| 124 | |||
| 125 | |||
| 108 | #endif | 126 | #endif |
