USB-UART bridge for XBee with XCTU.

Dependencies:   USBDevice mbed

USB to UART bridge for XBee with XCTU.
320 350
Windows serial driver:
https://developer.mbed.org/handbook/USBSerial
https://developer.mbed.org/media/uploads/samux/serial.zip

Committer:
va009039
Date:
Mon May 12 15:53:39 2014 +0000
Revision:
0:9b1aa393acb3
Child:
1:3d02f8b77d68
first commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
va009039 0:9b1aa393acb3 1 #pragma once
va009039 0:9b1aa393acb3 2 #include "mbed.h"
va009039 0:9b1aa393acb3 3 #include "USBCDC.h"
va009039 0:9b1aa393acb3 4 #include "CircBuffer.h"
va009039 0:9b1aa393acb3 5
va009039 0:9b1aa393acb3 6 typedef enum {
va009039 0:9b1aa393acb3 7 _USB,_UART,
va009039 0:9b1aa393acb3 8 } src_t;
va009039 0:9b1aa393acb3 9
va009039 0:9b1aa393acb3 10 class BaseUsbUartBridge : public SerialBase, public USBCDC {
va009039 0:9b1aa393acb3 11 public:
va009039 0:9b1aa393acb3 12 BaseUsbUartBridge(PinName tx, PinName rx, int uart_buf_size = 256, int usb_buf_size = 1024);
va009039 0:9b1aa393acb3 13 void poll();
va009039 0:9b1aa393acb3 14
va009039 0:9b1aa393acb3 15 protected:
va009039 0:9b1aa393acb3 16 virtual bool EP2_OUT_callback() { return bulk_callback(); }
va009039 0:9b1aa393acb3 17 virtual void lineCodingChanged(int baud, int bits, int parity, int stop){
va009039 0:9b1aa393acb3 18 SerialBase::baud(baud);
va009039 0:9b1aa393acb3 19 }
va009039 0:9b1aa393acb3 20 virtual void controlLineStateChanged(int rts, int dtr){}
va009039 0:9b1aa393acb3 21 virtual void monitor(src_t src, uint8_t c) {}
va009039 0:9b1aa393acb3 22
va009039 0:9b1aa393acb3 23 private:
va009039 0:9b1aa393acb3 24 bool bulk_callback();
va009039 0:9b1aa393acb3 25 void uart_handler(void);
va009039 0:9b1aa393acb3 26 CircBuffer<uint8_t> uart_buf;
va009039 0:9b1aa393acb3 27 CircBuffer<uint8_t> usb_buf;
va009039 0:9b1aa393acb3 28 };
va009039 0:9b1aa393acb3 29