Xiaofei Qiu / Xbee

Xbee.cpp

Committer:
Xiaofei
Date:
2015-11-28
Revision:
18:1604f829e859
Parent:
17:2271d7a273e7
Child:
19:4bc3e2e68495

File content as of revision 18:1604f829e859:

#pragma once
#include "Xbee.h"

Xbee::Xbee(PinName tx, PinName rx , PinName rst):_xbee(tx,rx),_rst(rst)
{
    _xbee.baud(9600);
}

void Xbee::Reset()
{
    _rst = 0;
    wait(0.01);
    _rst = 1;
    wait(0.01);
    
}

void Xbee::Send(const char& buffer)
{
    while(1)
    {
        _xbee.putc('.');
        _xbee.putc(&buffer);
        if(_xbee.getc() == '.')
        {
            break;
        }
    }
}

void Xbee::Recv(char& buffer, const size_t& sz)
{
    while(1)
    {
        if(_xbee.readable())
        {
            if(_xbee.getc()=='.')
            _xbee.getc(&buffer,sz);
            _xbee.putc('.');
            break;
        }
    }
}