Myserial Library extends RawSerial

MySerial.cpp

Committer:
naao
Date:
2014-07-04
Revision:
16:596e062f6c45
Parent:
15:a0b05e764268

File content as of revision 16:596e062f6c45:

#include "MySerial.h"

MySerial::MySerial(PinName tx,PinName rx):Serial(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', size+1);  //initialise chars

    wait(fRxStartWait);

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