実行時におけるBLEの属性サイズの変更につい - KBA219049 - Community Translated (JA)
Employee
6 09, 2020
05:14 AM
- RSS フィードを購読する
- 新着としてマーク
- 既読としてマーク
- ブックマーク
- 購読
- 印刷用ページ
- 不適切なコンテンツを報告
6 09, 2020
05:14 AM
Community Translated by HiOm_1802421 Version: **
質問:
実行時にBLEの属性値サイズを変更するにはどうすればよいですか?
回答:
可変長の特性(キャラクタリスティック)は、関連しない追加データを開示する必要がないため有用です。cyBle_gattDB は、CYBLE_GATTS_DB_T 構造体の配列で、ハンドル、アクセス許可、コンテナサイズ(最大長)、およびフル(16ビット)もしくはパーシャル(128ビット) UUID を定義しています。
属性サイズは、CYCBLE_EVT_STACK_ON イベントの後で、次のように cyBle_gattDB[] 配列へ書き込むことで変更できます。
cyBle_gattDB[CYBLE_CUSTOM_SERVICE_CUSTOM_CHARACTERISTIC_CHAR_HANDLE - 1u].attValue.attFormatValue.attGenericValLen->actualLength = X;
ここで X は属性の長さです。
注意:
属性サイズを小さくすることはできますが、BLE コンポーネントで設定されたデフォルトサイズを超えて大きくすることはできません。
属性の実際の長さは、次のマクロを使用して取得できます。
CYBLE_GATT_DB_ATTR_GET_ATTR_GEN_LEN (Handle – 1u);
==========
- タグ:
- ble
この記事を評価: