IM920s_arduino サンプルスケッチ

Arduino UNO と IM920s でシリアル通信を行うサンプルスケッチ

プログラム内容

  1. im920s_pairing
    im920s のペアリング用プログラム、arduino uno に取り付けた IM920s にシリアルモニタから IM コマンドを打ち込む事が可能
  2. im920s_ps3
    コントローラ接続&受信側プログラム、キャラクタ入出力モード(文字列送信)でコントローラのデータを送信する。コントローラを接続しなければデータ送信がされないので注意
  3. im920s_slave
    受信側プログラム、キャラクタ入出力モード(文字列送信)でコントローラのデータを受信する。

PlatformIO の導入、使い方

導入から使い方に関してはこの記事を参考して進めて欲しい
マイコン開発するなら PlatformIO がめちゃくちゃいいぞ #C++ - Qiita

ペアリング方法

IM920s USB 変換アダプタと Tera Term を利用する方法

  1. IM920s を USB 変換アダプタに取り付ける
  2. USB 変換アダプタを PC に接続する。CP210x の表記が目印
  3. 設定>シリアルポートを選択し、スピードを19200に設定
  4. ENWR という文字列をコピーし、編集>貼り付け<CR> もしくは Alt+Rでシリアルモニタに送信。OKという表示が出たら続ける
  5. STNN [ノード番号] を 4 と同じ手順で送信する。
    1. 親機に設定したい場合 [ノード番号]0001を指定。
    2. 子機は0002 から FFEFまで指定可能。
    3. ノード番号はSTNN 1のように指定できないので 0 埋めを行うこと
  6. STCH [チャンネル番号] を送信する。
    1. [チャンネル番号]は01 から 29まで指定可能。
    2. チャンネル番号は通信先のデバイスと合わせる
    3. 今回のプログラムでは16を利用している
  7. RPRMで設定内容を確認する。
    1. STCH が親機、子機共に一緒になっているか確認
    2. STNN は親機が0001 子機が0002 から FFEFに設定されているか確認
  8. STGNでペアリングする。
    子機のシリアルモニタに GRNOREGD の表示が出て LED の点滅が止まったら、USB 端子を PC から外して再接続する。
  9. 子機再接続後、親機から TXDA [任意の文字列] でデータを送信する。 子機のシリアルモニタにデータが送られたら成功

Arduino IDE を利用する方法

  1. Arduino IDE で Arduino/im920s_pairing にある im920s_pairing.inoを開く
  2. 子機と親機にプログラムを書き込む
  3. Tera Term でのペアリングで記載されているコマンドをシリアルモニタに打ち込む

使い方

Arduino IDE の場合

  1. リポジトリの Arduino/ の中にある.ino ファイルをクリックして Arduino IDE で開く。
  2. 以降書き込み手順については割愛

PlatformIO IDE の場合

  1. vscode を開く
  2. PlatformIO アイコンを選択し左メニューからPick a folderをクリック
  3. PlatformIO/ 内の 3 つのフォルダから書き込みたいプログラムが入っているフォルダを選択する。
  4. Command+Shift+Pもしくは画面左下の矢印ボタンを押して書き込み