diff --git a/communications/include/serial_console.h b/communications/include/serial_console.h index c2c1d0f98afe511c8367d8a7f0de89b63837cf3f..dae9cb9834d42afc589bdd3e0144440489b6dac3 100644 --- a/communications/include/serial_console.h +++ b/communications/include/serial_console.h @@ -9,6 +9,7 @@ extern "C" { #include <avr/interrupt.h> void serial_console_init(uint32_t baudrate); +int printf(const char *fmt, ...); #ifdef __cplusplus } diff --git a/communications/src/serial_console.c b/communications/src/serial_console.c index 64fa7f4ecc58828bdbcadd8d31eb4787ac52d085..89bfd5267a1e5026dc20fad1e602129abd2cb8c2 100644 --- a/communications/src/serial_console.c +++ b/communications/src/serial_console.c @@ -1,6 +1,7 @@ #include "comm_cfg.h" #include "serial_console.h" #include <stdio.h> +#include <stdarg.h> /* private variables */ volatile uint8_t serial_console_rx_buffer[SERIAL_CONSOLE_MAX_BUFFER_LEN]; @@ -138,3 +139,14 @@ void serial_console_init(uint32_t baudrate) serial_console_set_baudrate(baudrate); device=fdevopen(serial_console_putchar,serial_console_getchar); } + +int printf(const char *fmt, ...) +{ + va_list ap; + int i; + + va_start(ap,fmt); + i = vfprintf(stdout, fmt, ap); + va_end(ap); + return i; +} diff --git a/examples/pan_tilt/pan_tilt.c b/examples/pan_tilt/pan_tilt.c index 8b3ec676826bace4fdcb945b2a3f3c96445eddec..9c0e48663178438a2fe5d86a471626ef0e837aff 100644 --- a/examples/pan_tilt/pan_tilt.c +++ b/examples/pan_tilt/pan_tilt.c @@ -1,5 +1,4 @@ #include <util/delay.h> -#include <stdio.h> #include "cm510.h" #include "balance.h" #include "exp_board.h" @@ -36,6 +35,7 @@ void user_loop(void) } else state=wait_start; + printf("wait_start %d\n",(int)state); break; case wait_cmd: if(is_button_rising_edge(BTN_LEFT)) {