ここに書いてある通り、シリアル通信には問題がある模様です。
https://mbed.org/questions/3267/mbed-LPC1114FN28/
でも、どうも我が家ではそれ以前の問題みたなので、状況を書き出します。
環境としては
mbed LPC1114FN28
http://www.switch-science.com/catalog/1714/
MacBook Air 11inch Intel Core i7(2GHz) RAM8G
OS X 10.9.3
で使っています。
まず、mbed LPC1114FN28をUSBにつなぐと MBED と言う名前のドライブがマウントされます。
そこで、mbedのコンパイラーで
#include "mbed.h" Serial g_Serial( USBTX, USBRX ); // tx, rx int main(){ wait( 10 ); g_Serial.printf("Hello World!"); while( 1 ){ g_Serial.putc( g_Serial.getc() + 1 ); } }
でコンパイルをかけて「T_Serial_LPC1114.bin」と言うファイルをダウンロードします。
それを、先程マウントした MBED に対してDrag&Drop。そうするとコピーが始まるはずですが、準備中から先に動きません。
しかし、しばらくすると何故か、MBEDドライブが勝手にアンマウントされ、容量不足のアラートが出ます。
そこで、一度USBケーブルを抜いて再度差し込みます。
MBEDがマウントされたら、再度「T_Serial_LPC1114.bin」をDrag&Dropします。
そうすると、今度はコピーは成功するのですが、一度MBEDが勝手に接続を切ってしまうようです。
一度切れても、再度自動的にMBEDと言う名前のドライブがマウントされた状態になります。
ドキュメントを読むと、Serialのデフォルトの通信速度は9600bpsだそうなので、CoolTermを使って接続を試みます。
接続可能なPortからusbmodem1422を選択します。スピードは9600bps,N81にします。
この状態でキーボードを叩くと、mbed LPC1114FN28上の青いLEDが光ります。しかし、CoolTerm上には何も文字が表示されません。
一度、CoolTermをDisconnectして、再度Connectします。
そうすると、今度は基板上のLEDも反応しなくなりました。(当然、ソースの冒頭にある10秒は待った後で試しています。)MBEDドライブはマウントされたままです。
次に、一度CoolTermをDisconnectしてドライブをアンマウントしようとします。Disconnectは問題無くできますが、ディスクを取り出そうとしてしばらくすると「ディスクの不正な取り出し」と表示され、マウントが解除されます。
以降、USBを差し直したりするのですが、結局通信をする事は出来ませんでした。(基板上のLEDも反応しません)
…そして、今カーネルごと落ちました。以前もこのタイミングでカーネルごとOSが死んでいます。
取り急ぎ、我が家での現象の記録まで。
※ 追記:USB2.0HUB を間に入れても同様の結果でした。