Myserial Library extends RawSerial

Committer:
naao
Date:
Sun Jun 22 09:23:24 2014 +0000
Revision:
3:e4c443ce0fbe
Parent:
2:dfdf4b10a290
Child:
4:10ce20315d77
changed argument words

Who changed what in which revision?

UserRevisionLine numberNew 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 3:e4c443ce0fbe 42 * @param PinName tx
naao 3:e4c443ce0fbe 43 * @param PinName rx
naao 0:5b0b84a10bba 44 */
naao 3:e4c443ce0fbe 45 MySerial(PinName tx, PinName rx);
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