スキャン結果を 1 件取り出す
ble_scan_poll var_addr, addr_size, var_name, name_size, var_rssi
var_addr : MAC アドレス文字列 ("aa:bb:cc:dd:ee:ff") を受け取る str 変数 (sdim 済)
addr_size : var_addr に sdim で確保したバッファサイズ
var_name : ローカル名を受け取る str 変数 (sdim 済) (無い場合は空文字)
name_size : var_name に sdim で確保したバッファサイズ
var_rssi : RSSI (dBm, int)
(プラグイン / モジュール : hspble.dll)
内部キューから 1 件取り出して引数の各変数に格納します。 stat=1 で取得成功、stat=0 でキューが空。 var_addr / var_name は事前に sdim で十分なサイズを確保し、その sdim サイズを addr_size / name_size にそれぞれ指定してください。
| ble_scan_start | アドバタイズスキャン開始 | (hspble.dll) |
| プラグイン / モジュール | hspble.dll |
| バージョン | 1.0 |
| 作成日 | 2026-04-15 |
| 著作者 | IronHSP / hspble |
| URL | https://github.com/inovia/IronHSP |
| 備考 | hspble.dll は Windows 10 以降に搭載された Windows.Devices.Bluetooth
(WinRT) を使って、BLE セントラル機能 (GATT クライアント) を HSP3 に提供します。 提供機能: - BluetoothLEAdvertisementWatcher によるアドバタイズスキャン - BluetoothLEDevice::FromBluetoothAddressAsync による接続 - GATT サービス / キャラクタリスティックの列挙 - Read / Write / Notify 非同期 WinRT API は内部で .get() による同期待ちにしているので、 HSP 側からは通常の同期命令として扱えます。ただし接続や Read は 数百 ms ブロックすることがあるので、リアルタイム描画ループと 併用する場合は注意してください。 スキャン結果と Notify はバックグラウンドスレッドで内部キュー に蓄積され、ble_scan_poll / ble_notify_poll で 1 件ずつ取り 出す方式です (STA 不要)。 |
| タイプ | 拡張命令 |
| グループ | hspble ― スキャン |
| 対応環境 |
|
| hs ファイル | hsphelp\hspble.hs |