* add C027_Support fork
Fork of C027_Support by
MDM.h
- Committer:
- mazgch
- Date:
- 2014-03-17
- Revision:
- 20:535ef78655df
- Parent:
- 18:e5697801df29
- Child:
- 24:0e287a85ac9e
File content as of revision 20:535ef78655df:
#pragma once #include "mbed.h" #include "Pipe.h" #include "SerialPipe.h" #include "C027_PinNames.h" #define RX_SIZE 256 #define TX_SIZE 128 class MDMParser { public: #define WAIT -1 #define NOT_FOUND 0 #define LENGTH(x) (x & 0x00FFFF) // #define PROTOCOL(x) (x & 0xFF0000) virtual int getLine(char* buf, int len) = 0; virtual int getResp(char* buf, int len) = 0; virtual int send(const char* buf, int len); protected: static int _getLine(Pipe<char>* pipe, char* buffer, int length); static int _getResp(Pipe<char>* pipe, char* buffer, int length); virtual int _send(const void* buf, int len) = 0; }; // ----------------------------------------------------------------------- class MDMSerial : public SerialPipe, public MDMParser { public: MDMSerial(PinName tx = MDMTXD, PinName rx = MDMRXD, int baudrate = MDMBAUD, PinName rts = MDMRTS, PinName cts = MDMCTS, int rxSize = RX_SIZE, int txSize = TX_SIZE); virtual int getLine(char* buffer, int length); virtual int getResp(char* buffer, int length); protected: virtual int _send(const void* buf, int len); }; // ----------------------------------------------------------------------- #define HAVE_MDMUSB #ifdef HAVE_MDMUSB class MDMUsb : /*public UsbSerial,*/ public MDMParser { public: MDMUsb(void); virtual int getLine(char* buffer, int length); virtual int getResp(char* buffer, int length); protected: virtual int _send(const void* buf, int len); }; #endif