Command line interface for UART.

UARTでコマンドラインインターフェースを実現するためのライブラリです。

UARTからコマンドが入力されるとReadLine関数をコールバックします。

コマンドのデリミタはCR(0x0d)です。

コマンドはバックスペースで消去できます。

#include "mbed.h"
#include "MjLineSerial.h"

using namespace matsujirushi;

RawSerial pc(USBTX, USBRX);
MjLineSerial line(&pc);

void readLineFunc(const char *str)
{
    if (strcmp(str, "apple") == 0)
    {
        line.puts("RINGO");
    }
    else if (strcmp(str, "orange") == 0)
    {
        line.puts("MIKAN");
    }
    else
    {
        line.puts("unknown.");
    }
    line.puts("\r\n");
    
    line.putc('>');
}

int main()
{
    pc.baud(115200);
    line.attachReadLine(readLineFunc);
    
    line.putc('>');
    for (;;)
    {
        line.task();
    }
}

History

Add echo member. default tip

2014-11-21, by matsujirushi [Fri, 21 Nov 2014 10:48:30 +0000] rev 5

Add echo member.


Add txDelimieter member.

2014-11-20, by matsujirushi [Thu, 20 Nov 2014 13:21:03 +0000] rev 4

Add txDelimieter member.


Fix lost receive data when some sending.

2014-11-19, by matsujirushi [Wed, 19 Nov 2014 12:30:26 +0000] rev 3

Fix lost receive data when some sending.


Remove getc() function.

2014-11-19, by matsujirushi [Wed, 19 Nov 2014 11:43:10 +0000] rev 2

Remove getc() function.


Implement ReadLine function.

2014-11-19, by matsujirushi [Wed, 19 Nov 2014 11:16:12 +0000] rev 1

Implement ReadLine function.


Create MjLineSerial class.

2014-11-18, by matsujirushi [Tue, 18 Nov 2014 14:43:37 +0000] rev 0

Create MjLineSerial class.