Add a bunch of APNs
Fork of C027_Support by
SerialPipe.h@17:296d94a006b4, 2014-01-31 (annotated)
- Committer:
- mazgch
- Date:
- Fri Jan 31 09:49:51 2014 +0000
- Revision:
- 17:296d94a006b4
- Parent:
- 16:4a7ba1887e81
- Child:
- 18:e5697801df29
update with flow apis
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
mazgch | 0:cb2d45baaca3 | 1 | #pragma once |
mazgch | 0:cb2d45baaca3 | 2 | |
mazgch | 2:b6012cd91657 | 3 | #include "mbed.h" |
mazgch | 0:cb2d45baaca3 | 4 | #include "Pipe.h" |
mazgch | 0:cb2d45baaca3 | 5 | |
mazgch | 15:5eda64e5b9d1 | 6 | #define _SerialPipeBase SerialBase |
mazgch | 15:5eda64e5b9d1 | 7 | |
mazgch | 15:5eda64e5b9d1 | 8 | class SerialPipe : public _SerialPipeBase |
mazgch | 0:cb2d45baaca3 | 9 | { |
mazgch | 9:e7a5959ffae1 | 10 | public: |
mazgch | 15:5eda64e5b9d1 | 11 | SerialPipe(PinName tx, PinName rx, int rxSize = 128, int txSize = 128); |
mazgch | 17:296d94a006b4 | 12 | SerialPipe(PinName tx, PinName rx, PinName rts, PinName cts, int rxSize = 128, int txSize = 128); |
mazgch | 9:e7a5959ffae1 | 13 | virtual ~SerialPipe(void); |
mazgch | 9:e7a5959ffae1 | 14 | // tx channel |
mazgch | 13:e2446fcdc246 | 15 | int writeable(void); |
mazgch | 13:e2446fcdc246 | 16 | int putc(int c); // blocking |
mazgch | 15:5eda64e5b9d1 | 17 | int put(const void* buffer, int length, bool blocking); |
mazgch | 9:e7a5959ffae1 | 18 | // rx channel |
mazgch | 9:e7a5959ffae1 | 19 | int readable(void); |
mazgch | 13:e2446fcdc246 | 20 | int getc(void); // blocking |
mazgch | 15:5eda64e5b9d1 | 21 | int get(void* buffer, int length, bool blocking); |
mazgch | 13:e2446fcdc246 | 22 | protected: |
mazgch | 9:e7a5959ffae1 | 23 | void rxIrqBuf(void); |
mazgch | 9:e7a5959ffae1 | 24 | void txIrqBuf(void); |
mazgch | 13:e2446fcdc246 | 25 | void txStart(void); |
mazgch | 9:e7a5959ffae1 | 26 | Pipe<char> _pipeRx; |
mazgch | 9:e7a5959ffae1 | 27 | Pipe<char> _pipeTx; |
mazgch | 9:e7a5959ffae1 | 28 | }; |
mazgch | 0:cb2d45baaca3 | 29 | |
mazgch | 13:e2446fcdc246 | 30 | // ----------------------------------------------------------------------- |
mazgch | 9:e7a5959ffae1 | 31 | #define WAIT -1 |
mazgch | 9:e7a5959ffae1 | 32 | #define NOT_FOUND 0 |
mazgch | 9:e7a5959ffae1 | 33 | |
mazgch | 9:e7a5959ffae1 | 34 | class SerialPipeEx : public SerialPipe |
mazgch | 9:e7a5959ffae1 | 35 | { |
mazgch | 9:e7a5959ffae1 | 36 | public: |
mazgch | 13:e2446fcdc246 | 37 | int getLine(char* buffer, int length); |
mazgch | 14:69c3e57ef0f5 | 38 | static int getLine(char* buffer, int length, Pipe<char>* pipe); |
mazgch | 16:4a7ba1887e81 | 39 | int getResp(char* buffer, int length); |
mazgch | 16:4a7ba1887e81 | 40 | static int getResp(char* buffer, int length, Pipe<char>* pipe); |
mazgch | 0:cb2d45baaca3 | 41 | }; |