4: 2014-06-30 (月) 10:28:38 なーお[4] [5] | 現: 2019-08-17 (土) 07:11:56 なーお[4] [6] | ||
---|---|---|---|
Line 6: | Line 6: | ||
*** 準備したもの [#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を教えていただいたら断然そちらが面白くなってます。 | ||
Line 37: | Line 37: | ||
**** 使用ライブラリ [#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時間の設定を追加してあります。 | ||
Line 61: | Line 61: | ||
#include "mbed.h" | #include "mbed.h" | ||
+ | |||
/** MySerial control class, based on a RawSerial | /** MySerial control class, based on a RawSerial | ||
* | * | ||
Line 86: | Line 86: | ||
*/ | */ | ||
class MySerial : public RawSerial{ | class MySerial : public RawSerial{ | ||
+ | |||
public: | public: | ||
/** constructor to get chars received by serial | /** constructor to get chars received by serial | ||
Line 94: | Line 94: | ||
*/ | */ | ||
MySerial(PinName tx, PinName rx); | MySerial(PinName tx, PinName rx); | ||
+ | |||
/** set wait getting chars after interrupted | /** set wait getting chars after interrupted | ||
* | * | ||
Line 109: | Line 109: | ||
*/ | */ | ||
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 | ||
* | * | ||
Line 124: | Line 124: | ||
float fRxStartWait; | float fRxStartWait; | ||
float fRxEachWait; | float fRxEachWait; | ||
+ | |||
}; /* class MySerial */ | }; /* class MySerial */ | ||
Line 290: | Line 290: | ||
** 実行結果 [#r5494d56] | ** 実行結果 [#r5494d56] | ||
- | シリアルコンソールには、定番のTeraTermではなく、「[[RS232cTOOL:http://homepage2.nifty.com/nonnon/Download/Rs232cTool/]]」というフリーソフトを使ってみました。 | + | シリアルコンソールには、定番のTeraTermではなく、「[[RS232cテストツール:http://homepage2.nifty.com/nonnon/Download/Rs232cTool/]]」というフリーソフトを使ってみました。 |
下図のように、コマンドを送ると帰ってきたアンサーが表示されます。 | 下図のように、コマンドを送ると帰ってきたアンサーが表示されます。 |
(This host) = http://www.naaon.com