[ペリフェラル編]
[セントラル編]
[スクリプト編]
〔マイコンのトップに戻る〕
主なコマンド一覧、その他はユーザガイドを参照しましょう。
コマンド | パラメータ | 内 容 |
システム | ||
+ | エコー、タイプした文字が全て出力にエコーバックします。 | |
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.