X-Git-Url: http://git.droids-corp.org/?p=protos%2Fxbee-avr.git;a=blobdiff_plain;f=cmdline.c;h=0b0c6068d7e734e6b387b1df9d5b56673051ee3e;hp=d9fd8367c2a015e1c3df2e498d973149f13302dd;hb=f74db5fd03bcd38af3ca533e7531dd70454dfaaf;hpb=57895b3bb2fe0582c589685b7df34f3968b346ec diff --git a/cmdline.c b/cmdline.c index d9fd836..0b0c606 100644 --- a/cmdline.c +++ b/cmdline.c @@ -37,22 +37,13 @@ #include "cmdline.h" -#ifdef USE_USB -#include "DualVirtualSerial.h" -#endif - - extern const parse_ctx_t PROGMEM main_ctx[]; int cmdline_dev_send(char c, FILE* f) { (void)f; -#ifdef USE_USB - CDC_Device_SendByte(&VirtualSerial1_CDC_Interface, (uint8_t)c); -#else uart_send(CMDLINE_UART, c); -#endif return 0; } @@ -61,12 +52,7 @@ int cmdline_dev_recv(FILE* f) int16_t c; (void)f; -#ifdef USE_USB - /* non-blocking ! */ - c = CDC_Device_ReceiveByte(&VirtualSerial1_CDC_Interface); -#else c = uart_recv_nowait(CMDLINE_UART); -#endif if (c < 0) return _FDEV_EOF; @@ -77,11 +63,7 @@ int cmdline_dev_recv(FILE* f) int xbee_dev_send(char c, FILE* f) { (void)f; -#ifdef USE_USB - CDC_Device_SendByte(&VirtualSerial2_CDC_Interface, (uint8_t)c); -#else uart_send(XBEE_UART, c); -#endif return 0; } @@ -90,20 +72,14 @@ int xbee_dev_recv(FILE* f) int16_t c; (void)f; -#ifdef USE_USB - /* non-blocking ! */ - c = CDC_Device_ReceiveByte(&VirtualSerial2_CDC_Interface); -#else c = uart_recv_nowait(XBEE_UART); -#endif if (c < 0) return _FDEV_EOF; return c; } -static void -valid_buffer(const char *buf, uint8_t size) +void cmdline_valid_buffer(const char *buf, uint8_t size) { int8_t ret; PGM_P ctx = (PGM_P)main_ctx; @@ -127,7 +103,7 @@ complete_buffer(const char *buf, char *dstbuf, uint8_t dstsize, } -static void write_char(char c) +void cmdline_write_char(char c) { cmdline_dev_send(c, NULL); } @@ -135,7 +111,7 @@ static void write_char(char c) void cmdline_init(void) { - rdline_init(&xbeeboard.rdl, write_char, valid_buffer, complete_buffer); + rdline_init(&xbeeboard.rdl, cmdline_write_char, cmdline_valid_buffer, complete_buffer); snprintf_P(xbeeboard.prompt, sizeof(xbeeboard.prompt), PSTR("mainboard > ")); } @@ -151,8 +127,10 @@ void emergency(char c) i++; else if ( !(i == 1 && c == 'p') ) i = 0; - if (i == 3) - bootloader(); + if (i == 3) { + //bootloader(); + reset(); + } } /* log function, add a command to configure