X-Git-Url: http://git.droids-corp.org/?p=protos%2Fxbee-avr.git;a=blobdiff_plain;f=cmdline.c;h=60dc9a693f70da836d6d15e418ff47541d5a39d5;hp=36d1f31c30ac7738fead500833e64329ed62eef3;hb=0e1c93804369af27043c82ccc778c42bf54a9bd4;hpb=1a0d8b2d8fb17cf4b2c845c52b22dc932efa080b diff --git a/cmdline.c b/cmdline.c index 36d1f31..60dc9a6 100644 --- a/cmdline.c +++ b/cmdline.c @@ -36,24 +36,33 @@ #include "main.h" #include "cmdline.h" -#include "DualVirtualSerial.h" +#ifdef USE_USB +#include "DualVirtualSerial.h" +#endif -/******** See in commands.c for the list of commands. */ extern parse_pgm_ctx_t main_ctx[]; -int usbserial1_dev_send(char c, FILE* f) +int cmdline_dev_send(char c, FILE* f) { +#ifdef USE_USB CDC_Device_SendByte(&VirtualSerial1_CDC_Interface, (uint8_t)c); +#else + uart_send(CMDLINE_UART, c); +#endif return 0; } -int usbserial1_dev_recv(FILE* f) +int cmdline_dev_recv(FILE* f) { int16_t c; +#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; @@ -61,25 +70,32 @@ int usbserial1_dev_recv(FILE* f) } -int usbserial2_dev_send(char c, FILE* f) +int xbee_dev_send(char c, FILE* f) { +#ifdef USE_USB CDC_Device_SendByte(&VirtualSerial2_CDC_Interface, (uint8_t)c); +#else + uart_send(XBEE_UART, c); +#endif return 0; } -int usbserial2_dev_recv(FILE* f) +int xbee_dev_recv(FILE* f) { int16_t c; +#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) { @@ -104,7 +120,7 @@ complete_buffer(const char *buf, char *dstbuf, uint8_t dstsize, static void write_char(char c) { - usbserial1_dev_send(c, NULL); + cmdline_dev_send(c, NULL); } @@ -170,7 +186,7 @@ int cmdline_poll(void) int8_t ret, same = 0; int16_t c; - c = CDC_Device_ReceiveByte(&VirtualSerial1_CDC_Interface); + c = cmdline_dev_recv(NULL); if (c < 0) return -1;