Myserial Library extends RawSerial
MySerial.h@2:dfdf4b10a290, 2014-06-22 (annotated)
- Committer:
- naao
- Date:
- Sun Jun 22 08:54:01 2014 +0000
- Revision:
- 2:dfdf4b10a290
- Parent:
- 0:5b0b84a10bba
- Child:
- 3:e4c443ce0fbe
changed refference code
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
naao | 0:5b0b84a10bba | 1 | /** mbed Serial Library extend RawSerial |
naao | 0:5b0b84a10bba | 2 | * Copyright (c) 2014 Naoki Okino |
naao | 0:5b0b84a10bba | 3 | * |
naao | 0:5b0b84a10bba | 4 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR |
naao | 0:5b0b84a10bba | 5 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
naao | 0:5b0b84a10bba | 6 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE |
naao | 0:5b0b84a10bba | 7 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER |
naao | 0:5b0b84a10bba | 8 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, |
naao | 0:5b0b84a10bba | 9 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN |
naao | 0:5b0b84a10bba | 10 | * THE SOFTWARE. |
naao | 0:5b0b84a10bba | 11 | */ |
naao | 0:5b0b84a10bba | 12 | #ifndef MBED_MYSERIAL_H |
naao | 0:5b0b84a10bba | 13 | #define MBED_MYSERIAL_H |
naao | 0:5b0b84a10bba | 14 | |
naao | 0:5b0b84a10bba | 15 | #include "mbed.h" |
naao | 0:5b0b84a10bba | 16 | |
naao | 0:5b0b84a10bba | 17 | /** MySerial control class, based on a RawSerial |
naao | 0:5b0b84a10bba | 18 | * |
naao | 0:5b0b84a10bba | 19 | * Example: |
naao | 0:5b0b84a10bba | 20 | * @code |
naao | 0:5b0b84a10bba | 21 | * #include "mbed.h" |
naao | 0:5b0b84a10bba | 22 | * #include "MySerial.h" |
naao | 0:5b0b84a10bba | 23 | * |
naao | 0:5b0b84a10bba | 24 | * MySerial pc(USBTX,USBRX); //instance of MySerial Class |
naao | 0:5b0b84a10bba | 25 | * char cWord[16]; //receive chars or cWord[256], cWord[1024] etc.. |
naao | 0:5b0b84a10bba | 26 | * |
naao | 0:5b0b84a10bba | 27 | * void readbuf() |
naao | 0:5b0b84a10bba | 28 | * { |
naao | 2:dfdf4b10a290 | 29 | * // int iRtn = pc.GetString(6,pCword); //Serial received chars by pointer cWord |
naao | 2:dfdf4b10a290 | 30 | * int iRtn = pc.GetString((char)6,cWord); //Serial received chars byref of cWord |
naao | 0:5b0b84a10bba | 31 | * } |
naao | 0:5b0b84a10bba | 32 | * int main() { |
naao | 0:5b0b84a10bba | 33 | * pc.attach( readbuf, MySerial::RxIrq ); //Set Interrupt by Serial receive |
naao | 0:5b0b84a10bba | 34 | * } |
naao | 0:5b0b84a10bba | 35 | * @endcode |
naao | 0:5b0b84a10bba | 36 | */ |
naao | 0:5b0b84a10bba | 37 | class MySerial : public RawSerial{ |
naao | 0:5b0b84a10bba | 38 | |
naao | 0:5b0b84a10bba | 39 | public: |
naao | 0:5b0b84a10bba | 40 | /** get chars received by serial |
naao | 0:5b0b84a10bba | 41 | * |
naao | 0:5b0b84a10bba | 42 | * @param PinName USBTX |
naao | 0:5b0b84a10bba | 43 | * @param PinName USBRX |
naao | 0:5b0b84a10bba | 44 | */ |
naao | 0:5b0b84a10bba | 45 | MySerial(PinName USBTX, PinName USBRX); |
naao | 0:5b0b84a10bba | 46 | |
naao | 0:5b0b84a10bba | 47 | /** function to get chars after received shars by serial |
naao | 0:5b0b84a10bba | 48 | * |
naao | 0:5b0b84a10bba | 49 | * @param int size for get chars |
naao | 0:5b0b84a10bba | 50 | * @param *cWord returns got chars by pointer |
naao | 0:5b0b84a10bba | 51 | * @param returns success by 0 |
naao | 0:5b0b84a10bba | 52 | */ |
naao | 0:5b0b84a10bba | 53 | virtual int GetString(int size, char *cWord); |
naao | 0:5b0b84a10bba | 54 | |
naao | 0:5b0b84a10bba | 55 | /** override function to get chars after received shars by serial |
naao | 0:5b0b84a10bba | 56 | * |
naao | 0:5b0b84a10bba | 57 | * @param int size for get chars |
naao | 0:5b0b84a10bba | 58 | * @param (&cWord)[16] returns got chars by ref |
naao | 0:5b0b84a10bba | 59 | * @param returns success by 0 |
naao | 0:5b0b84a10bba | 60 | */ |
naao | 0:5b0b84a10bba | 61 | virtual int GetString(char size, char (&cWord)[16]); |
naao | 0:5b0b84a10bba | 62 | |
naao | 0:5b0b84a10bba | 63 | /** override function to get chars after received shars by serial |
naao | 0:5b0b84a10bba | 64 | * |
naao | 0:5b0b84a10bba | 65 | * @param int size for get chars |
naao | 0:5b0b84a10bba | 66 | * @param (&cWord)[256] returns got chars by ref |
naao | 0:5b0b84a10bba | 67 | * @param returns success by 0 |
naao | 0:5b0b84a10bba | 68 | */ |
naao | 0:5b0b84a10bba | 69 | virtual int GetString(char size, char (&cWord)[256]); |
naao | 0:5b0b84a10bba | 70 | |
naao | 0:5b0b84a10bba | 71 | /** override function to get chars after received shars by serial |
naao | 0:5b0b84a10bba | 72 | * |
naao | 0:5b0b84a10bba | 73 | * @param int size for get chars |
naao | 0:5b0b84a10bba | 74 | * @param (&cWord)[1024] returns got chars by ref |
naao | 0:5b0b84a10bba | 75 | * @param returns success by 0 |
naao | 0:5b0b84a10bba | 76 | */ |
naao | 0:5b0b84a10bba | 77 | virtual int GetString(char size, char (&cWord)[1024]); |
naao | 0:5b0b84a10bba | 78 | |
naao | 0:5b0b84a10bba | 79 | protected: |
naao | 0:5b0b84a10bba | 80 | |
naao | 0:5b0b84a10bba | 81 | }; |
naao | 0:5b0b84a10bba | 82 | |
naao | 0:5b0b84a10bba | 83 | #endif |