mbed LPC1114FN28でRawSerialが動かない

24 Nov 2014

mbed LPC1114FN28で、RawSerialクラスが動かないのですが、使用NGでしょうか? (Serialクラスは動作します。)

プラットフォーム:mbed LPC1114FN28 mbedライブラリ:Revision 91

#include "mbed.h"

Serial pc(USBTX, USBRX);

int main()
{
    for(;;)
    {
        pc.printf("Send\r\n");
        wait(2);
    }
}
24 Nov 2014

こんばんは。

micro libraryを使用しているLPC1114等のターゲットでは、RawSerial::printf() が動作しません(実行時にクラッシュします)。

これは、micro libraryがISO Cのいくつかの標準関数を完全にサポートしていない為です(具体的には、vsnprintf()関数が動作しません)。

回避策としては、以下のリンク先の回答のように printf() ではなく、puts() を使用して下さい。

http://developer.mbed.org/questions/3502/printf-cannot-be-used-in-RawSerial-class/

25 Nov 2014

お世話になります。

明快なご回答、ありがとうございます。 micro libraryというものなんですね...知りませんでした。(汗

どうもありがとうございました。