[ペリフェラル編]
[セントラル編]
[スクリプト編]
〔マイコンのトップに戻る〕
私が購入した物は、秋月通商のこちらです。主なコマンド一覧、その他はユーザガイドを参照しましょう。
| コマンド | パラメータ | 内 容 |
| システム | ||
| + | エコー、タイプした文字が全て出力にエコーバックします。 | |
| V | ファームウェアのバージョン 例)MCHP BTLE v1.33.4 BEC 11/24/2015 |
|
| D | デバイスの状態表示 例) BTA=6827190AF0A9 // アドレス Name=RNF0A9 Connected=no Bonded=no Server Service=80000000 // SS:サポートするサービス Features=00000000 // SR:デバイスの機能 TxPower=4 |
|
| SF | 1 | 基本設定を工場出荷時に戻す(初期化) デバイス名、デバイス情報、スクリプト、プライベート サービス等は残ります。 |
| 2 | 全設定を工場出荷時に戻す | |
| R | 1 | 再起動、モジュールを再起動すると、変更した設定内容が全て有効になります。 |
| ロール | ||
| SR | 0x80000000 | セントラル |
| 0x00000000 | ペリフェラル | |
| 0x20000000 | デバイスはパワーサイクル・再起動・切断後にアドバタイズを自動で開始します。 ('A'コマンドは必要なし、実行すると"ERR"です) |
|
| N | xxxx | ブロードキャスタ xxxx:25バイト以下の16 進数値でアドバタイズ内容を設定する為に使います。 |
| J | X | オブザーバロールを開始又は終了します。 x:開始=1 終了=0 |
| アドバタイズ | ||
| A | xxx,yyy | アドバタイズを手動で開始(接続待ち) xxx:アドバタイズ間隔ms(既定値は100ms) yyy:全体のアドバタイズ期間ms(既定値は無期限) |
| Y | アドバタイズを停止します。 | |
| 接続 | ||
| K | リンクを切断する為に使います。 | |
| F | xxx,yyy | セントラル又はオブザーバロールのデバイスのみで、スキャンを開始します。 xxx:スキャン間隔ms(既定値は375ms) yyy:スキャン時間ms(既定値は250ms) ペリフェラルデバイスを問い合わせる為に使います。 オブザーバロール時、これはブロードキャストメッセージの受信に使います。 |
| E | X,aaaa | セントラルが、ペリフェラル デバイスとの接続確立のプロセスを開始します。 x:アドレスタイプ、パブリックアドレスの場合=0、 ランダムアドレスの場合=1です。 aaaa:6 バイトのMAC アドレス |
| ST(T) | xxx,yyy,zzz | 次回以降の接続に使う初期接続パラメータ(16進数の16ビット値)を設定します。 xxx:interval、接続した2 つのデバイス間の通信の時間間隔(単位:1.25ms) 0x0006 〜 0x0C80 (規定値:0006:7.5ms) yyy:latency、ペリフェラルがセントラルと通信しないイベントの連続回数 0x0000〜0x01F3(規定値:0回) (timeout * 10 /interval * 1.25 - 1)回以下 zzz:timeout、応答ない場合に接続が失われたと判断する最大時間(単位:10ms) 0x000A 〜 0x0C80 (規定値:0064:640ms) |
| デバイス情報プロファイルの設定 | ||
| SS | 0xbbbbbbbb | デバイスがサーバロールでサポートするサービスを設定(32 ビットのビットパターン)します。例えば、"SS,40000000"ならバッテリーサービス 既存値は"80000000"のデバイス情報サービスです。 |
| パブリック サービス | ||
| LS | サーバ側サービスとそのキャラクタリスティックをリスト表示します。 出力例) 180F // プライマリ サービスUUID 2A19,001A,02 // キャラクタリスティックUUID、ハンドル、プロパティ値 2A19,001B,10 // キャラクタリスティックUUID、ハンドル、プロパティ値 |
|
| LC | クライアント側サービスとそのキャラクタリスティックをリスト表示します。 | |
| CHR | xxxx | ハンドルでアドレス指定してペリフェラル
デバイスからキャラクタリスティックの内容を読み出します(セントラルread)。 xxxx:ハンドルで16ビット16進数値 |
| CHW | xxxx,yyyy | ハンドルでアドレス指定してペリフェラル
デバイスのキャラクタリスティックへ内容を書き込みます(セントラルwrite)。 xxxx:ハンドルで16ビット16進数値 yyyy:キャラクタリスティックに書き込む内容 |
| CURC (CURV) |
xxxx | UUID でアドレス指定してペリフェラル
デバイスからキャラクタリスティックの内容を読み出します(セントラルread)。 CURCはノーティフィケーション又は、インディケーションのキャラクタリスティックのみです。CURCは設定値読み出し、CURVは値データ読み出し。 xxxx:UUIDで16ビット16進数値又は128 ビット |
| CUWC (CUWV) |
xxxx,yyy | UUIDでアドレス指定してペリフェラル
デバイスのキャラクタリスティックへ内容を書き込みます(セントラルwrite)。 CUWCは設定値書き込み、CUWVは値データ書き込み xxxx:UUIDで16ビット16進数値又は128 ビット yyy :キャラクタリスティックに書き込む内容(CUWV) 0=ノーティフィケーション又は、インディケーションを終了(CUWC) 1=ノーティフィケーション又は、インディケーションを開始(CUWC) |
| SHR | xxxx | ハンドルでアドレス指定してサーバ
サービスのキャラクタリスティックの内容を読み出します(ペリフェラルread)。 xxxx:ハンドルで16ビット16進数値 |
| SHW | xxxx,yyyy | ハンドルでアドレス指定してサーバ
サービスのキャラクタリスティックの内容を書込みます(ペリフェラルwrite)。セントラル側で"read"と"notify"読出し可能。 xxxx:ハンドルで16ビット16進数値 yyyy:キャラクタリスティックに書き込む内容 |
| SUR | xxxx | UUIDでアドレス指定してサーバ
サービスのキャラクタリスティックの内容を読み出します(ペリフェラルread)。 xxxx:UUIDで16ビット16進数値又は128 ビット |
| SUW | xxxx,yyyy | UUIDでアドレス指定してサーバ
サービスのキャラクタリスティックの内容を書込みます(ペリフェラルwrite)。セントラル側で"read"と"notify"読出し可能。 xxxx:UUIDで16ビット16進数値又は128 ビット yyyy:キャラクタリスティックに書き込む内容 |
| アナログI/O | ||
| @O | X,yyy | アナログポート出力電圧を設定します。 x :0、1、2 のいずれかでアナログポート番号を指定 yyy:出力電圧をmv単位で設定、レンジは0x0000(0V)〜0x0514(1.3V)です。 |
| @I | xxx | 入力電圧を取得します(0V - 1.3V)。 |
| デジタルI/O | ||
| |O | xxx,yyy | デジタルI/O ピン(PIO1-PIO6) の出力を設定します。 xxx:使用するピンのビットパターンを指定 01 PIO1 (モジュールのLEDと配線され起動時点灯、"01"出力で消灯) (デバイスと接続されると消灯、外付けLEDは"01"出力で点灯) 02 PIO2 04 PIO3 (起動時にHIGH出力) 08 PIO7 (未配線) 10 PIO6 20 PIO5 ?? PIO4 (動作不可?、スクリプト時のピンイベントで使用するようだ) yyy:HIGHを出力するビットパターンを指定 例)GPIO3、GPI01を出力する場合、|O,05,05です。 |
| |I | xxx | 入力を取得します。 得られる値はピンのビットパターンです、"1"のパターンがHIGHです。 xxx:入力するピンのビットパターンを指定 例)GP06を入力する場合、|I,10とする、HIGIであれば"10"が返されます。 なぜかぁ、PIO1は読み出しが常に"01"の様な気がするがぁ...(このピンは 使わない方が良いかも?) |

こんな感じぃ
おめでとう、(゚∀゚ノノ" 動作しました。
【きむ茶工房ガレージハウス】
Copyright (C) 2006-2021 Shigehiro Kimura All Rights Reserved.