Myserial Library extends RawSerial

MySerial.cpp

Committer:
naao
Date:
2014-06-24
Revision:
9:981384455445
Parent:
8:a7aaafa19db6
Child:
11:34ae126807a0

File content as of revision 9:981384455445:

#include "MySerial.h"

MySerial::MySerial(PinName tx,PinName rx):RawSerial(tx,rx)          //constructor
{
    fRxStartWait = 0.01;    //wait getting a 1st char after interrupted
    fRxEachWait = 0.001;    //wait getting each char
}

void MySerial::SetRxWait(float _fRxStartWait, float _fRxEachWait)
{
    fRxStartWait = _fRxStartWait;   //wait getting a 1st char after interrupted
    fRxEachWait = _fRxEachWait;     //wait getting each char
}

int MySerial::GetString(int size, char *cWord)            //by pointer
{
    int i=0;
    int ichar;
    memset(cWord, '\0', strlen(cWord));  //initialise chars

    wait(fRxStartWait);

    while(1) {
        if(!readable())    {
            break;
        }
        ichar = getc();
        if(i<size) {
            cWord[i] =ichar;
            //putc(ichar);
        }
        i++;
        wait(fRxEachWait);
    }
    return 0;
}