4: 2014-06-30 (月) 10:28:38 なーお |
現: 2019-08-17 (土) 07:11:56 なーお |
| | | |
| *** 準備したもの [#i22ec0be] | | *** 準備したもの [#i22ec0be] |
- | -- MBED対応のマイコン。今回は、[[LPC1114FN28 を、秋月電子:http://akizukidenshi.com/catalog/g/gI-06071/]]で購入。 1個たったの120円!(税込) | + | -- mbed対応のマイコン。今回は、[[LPC1114FN28 を、秋月電子:http://akizukidenshi.com/catalog/g/gI-06071/]]で購入。 1個たったの120円!(税込) |
| -- USB-シリアル変換モジュール [[FT232RL 秋月で購入:http://akizukidenshi.com/catalog/g/gK-01977/]]。 | | -- USB-シリアル変換モジュール [[FT232RL 秋月で購入:http://akizukidenshi.com/catalog/g/gK-01977/]]。 |
| -- Arduinoスターターキット [[SGK-ARD-KIT 千石電商で購入:http://www.sengoku.co.jp/mod/sgk_cart/detail.php?code=EEHD-0BPT]] arduino uno 付きで4,940円。 arduino unoの他に付属のセット品が色々入っていて、初めてには良いですね。 arduinoからいじり始めてみたものの、mbedを教えていただいたら断然そちらが面白くなってます。 | | -- Arduinoスターターキット [[SGK-ARD-KIT 千石電商で購入:http://www.sengoku.co.jp/mod/sgk_cart/detail.php?code=EEHD-0BPT]] arduino uno 付きで4,940円。 arduino unoの他に付属のセット品が色々入っていて、初めてには良いですね。 arduinoからいじり始めてみたものの、mbedを教えていただいたら断然そちらが面白くなってます。 |
| **** 使用ライブラリ [#tb797654] | | **** 使用ライブラリ [#tb797654] |
| - Servo | | - Servo |
- | mbedのオンラインコンパイラ状の「Import」でキーワード「Servo」検索し、sford cstyles さんの [[mbed R/C Servo Library:http://mbed.org/users/simon/code/Servo/]]を試しに使ってみました。 | + | mbedのオンラインコンパイラ上の「Import」でキーワード「Servo」で検索し、sford cstyles さんの [[mbed R/C Servo Library:http://mbed.org/users/simon/code/Servo/]]を試しに使ってみました。 |
| - MySerial | | - MySerial |
- | [[自作ライラリ MySerial:http://mbed.org/users/naao/code/MySerial/]] です。mbed標準のRawSerialクラスを継承し、受信文字列のchar配列格納を簡単にできるようにしてみました。 現時点でのソースを貼っておきます。 | + | [[自作ライブラリ MySerial:http://mbed.org/users/naao/code/MySerial/]] です。mbed標準のRawSerialクラスを継承し、受信文字列のchar配列格納を簡単にできるようにしてみました。 現時点でのソースを貼っておきます。 |
| -- GetString メソッドは、テンプレート化でオーバーロードしてあり、引数にポインタ変数指定でも char配列指定の参照でも使えるようにしました。 | | -- GetString メソッドは、テンプレート化でオーバーロードしてあり、引数にポインタ変数指定でも char配列指定の参照でも使えるようにしました。 |
| -- Wait時間の設定を追加してあります。 | | -- Wait時間の設定を追加してあります。 |
| | | |
| #include "mbed.h" | | #include "mbed.h" |
| + | |
| /** MySerial control class, based on a RawSerial | | /** MySerial control class, based on a RawSerial |
| * | | * |
| */ | | */ |
| class MySerial : public RawSerial{ | | class MySerial : public RawSerial{ |
| + | |
| public: | | public: |
| /** constructor to get chars received by serial | | /** constructor to get chars received by serial |
| */ | | */ |
| MySerial(PinName tx, PinName rx); | | MySerial(PinName tx, PinName rx); |
| + | |
| /** set wait getting chars after interrupted | | /** set wait getting chars after interrupted |
| * | | * |
| */ | | */ |
| virtual int GetString(int size, char *cWord); | | virtual int GetString(int size, char *cWord); |
| + | |
| /** overload function to get chars after received chars by serial | | /** overload function to get chars after received chars by serial |
| * | | * |
| float fRxStartWait; | | float fRxStartWait; |
| float fRxEachWait; | | float fRxEachWait; |
| + | |
| }; /* class MySerial */ | | }; /* class MySerial */ |
| | | |
| ** 実行結果 [#r5494d56] | | ** 実行結果 [#r5494d56] |
| | | |
- | シリアルコンソールには、定番のTeraTermではなく、「[[RS232cTOOL:http://homepage2.nifty.com/nonnon/Download/Rs232cTool/]]」というフリーソフトを使ってみました。 | + | シリアルコンソールには、定番のTeraTermではなく、「[[RS232cテストツール:http://homepage2.nifty.com/nonnon/Download/Rs232cTool/]]」というフリーソフトを使ってみました。 |
| | | |
| 下図のように、コマンドを送ると帰ってきたアンサーが表示されます。 | | 下図のように、コマンドを送ると帰ってきたアンサーが表示されます。 |