# GATT 配置参数

Source: [https://docs.qualcomm.com/doc/80-70014-13Y/topic/gatt_config_params.html](https://docs.qualcomm.com/doc/80-70014-13Y/topic/gatt_config_params.html)

要配置 GATT 服务器和客户端功能，使用服务器、客户端和扫描参数。

## GATT 服务器配置参数

用于[执行低功耗蓝牙 GATT 服务器功能](https://docs.qualcomm.com/doc/80-70014-13Y/topic/perform_ble_gatt_server_functions.html)的两种类型服务配置参数是：广播者和服务器参数。这些配置参数分别通过 `AdvertiserConfigFile.txt` 和 `ServerConfigFile.txt` 文件进行处理。

**`AdvertiserConfigFile.txt`**

下表列出了 `AdvertiserConfigFile.txt` 文件中每个广播参数的可能值：

| 参数 | 值 |
| --- | --- |
| `TxPower` | **传统：**<ul class="ul" id="references_1__ul_tzq_351_kbc_navyanka_05-14-24-1416-28-701"><br>                                            <li class="li"><code class="ph codeph">0</code>： ADVERTISE_TX_POWER_ULTRA_LOW(-21)</li><br><br>                                            <li class="li"><code class="ph codeph">1</code>： ADVERTISE_TX_POWER_LOW(-15)</li><br><br>                                            <li class="li"><code class="ph codeph">2</code>： ADVERTISE_TX_POWER_MEDIUM(-7)</li><br><br>                                            <li class="li"><code class="ph codeph">3</code>: ADVERTISE_TX_POWER_HIGH(1)</li><br><br>                                        </ul><br><br><br>                                    <br>**扩展：**<ul class="ul" id="references_1__ul_c5f_l51_kbc_navyanka_05-14-24-1417-13-846"><br>                                            <li class="li"><code class="ph codeph">0</code>： TX_POWER_ULTRA_LOW =-21</li><br><br>                                            <li class="li"><code class="ph codeph">1</code>： TX_POWER_LOW =-15</li><br><br>                                            <li class="li"><code class="ph codeph">2</code>： TX_POWER_MEDIUM =-7</li><br><br>                                            <li class="li"><code class="ph codeph">3</code>: TX_POWER_HIGH = 1</li><br><br>                                        </ul> |
| `LegacyFlag` | <ul class="ul" id="references_1__ul_n5c_451_kbc_navyanka_05-14-24-1418-4-557"><br>                                        <li class="li"><code class="ph codeph">0</code>：使用扩展广播</li><br><br>                                        <li class="li"><code class="ph codeph">1</code>：使用传统广播</li><br><br>                                    </ul> |
| `PeriodicFlag` | <ul class="ul" id="references_1__ul_uyy_451_kbc_navyanka_05-14-24-1418-19-540"><br>                                        <li class="li"><code class="ph codeph">0</code>：禁用周期性广播</li><br><br>                                        <li class="li"><code class="ph codeph">1</code>：启用定期广播</li><br><br>                                    </ul> |
| `ConnectableFlag` | <ul class="ul" id="references_1__ul_kqm_q51_kbc_navyanka_05-14-24-1418-46-362"><br>                                        <li class="li"><code class="ph codeph">0</code>：启用不可连接的广播</li><br><br>                                        <li class="li"><code class="ph codeph">1</code>：启用可连接的广播</li><br><br>                                    </ul> |
| `ScannableFlag` | <ul class="ul" id="references_1__ul_wyy_t51_kbc_navyanka_05-14-24-1419-47-422"><br>                                        <li class="li"><code class="ph codeph">0</code>：启用不可扫描的广播</li><br><br>                                        <li class="li"><br>                                            <p class="p"><code class="ph codeph">1</code>：启用可扫描的广播</p><br><br>                                            <p class="p">此值仅适用于扩展广播。对于传统广播，始终将其设置为 <code class="ph codeph">true</code>。</p><br><br>                                        </li><br><br>                                    </ul> |
| `AnonymousFlag` | <ul class="ul" id="references_1__ul_qry_cv1_kbc_navyanka_05-14-24-1422-25-418"><br>                                        <li class="li"><code class="ph codeph">0</code>：在所有 PDU 中使用广播地址</li><br><br>                                        <li class="li"><code class="ph codeph">1</code>：不在 PDU 中使用广播地址</li><br><br>                                    </ul> |
| `IncludePower` | <ul class="ul" id="references_1__ul_qbw_y51_kbc_navyanka_05-14-24-1421-13-346"><br>                                        <li class="li"><code class="ph codeph">0</code>：不在扩展标头中包含 Tx 功率</li><br><br>                                        <li class="li"><code class="ph codeph">1</code>：在扩展标头中包含 Tx 功率</li><br><br>                                    </ul> |
| `PrimaryPhy` | <ul class="ul" id="references_1__ul_y3n_1v1_kbc_navyanka_05-14-24-1421-42-604"><br>                                        <li class="li"><code class="ph codeph">1</code>：1 M-PHY</li><br><br>                                        <li class="li"><code class="ph codeph">3</code>：LE coded PHY</li><br><br>                                    </ul> |
| `SecondaryPhy` | <ul class="ul" id="references_1__ul_jgr_1v1_kbc_navyanka_05-14-24-1421-45-241"><br>                                        <li class="li"><code class="ph codeph">1</code>：1 M-PHY</li><br><br>                                        <li class="li"><code class="ph codeph">2</code>：2 M-PHY</li><br><br>                                        <li class="li"><code class="ph codeph">3</code>：LE coded PHY</li><br><br>                                    </ul> |
| `间隔` | <ul class="ul" id="references_1__ul_rjv_1v1_kbc_navyanka_05-14-24-1421-48-31"><br>                                        <li class="li"><code class="ph codeph">160</code>：最小广播间隔 (100 ms)</li><br><br>                                        <li class="li"><code class="ph codeph">16777215</code>：最大广播间隔 (10485 s)</li><br><br>                                    </ul> |
| `TimeOutLegacy` | <ul class="ul" id="references_1__ul_vhz_1v1_kbc_navyanka_05-14-24-1421-50-687"><br>                                        <li class="li"><code class="ph codeph">0</code>：最小可能值</li><br><br>                                        <li class="li"><code class="ph codeph">180000</code>：最大可能超时值（以毫秒为单位）</li><br><br>                                    </ul> |
| `AdvertiseMode` | <ul class="ul" id="references_1__ul_t1d_bv1_kbc_navyanka_05-14-24-1421-53-207"><br>                                        <li class="li"><code class="ph codeph">0</code>：低功耗模式</li><br><br>                                        <li class="li"><code class="ph codeph">1</code>：平衡模式</li><br><br>                                        <li class="li"><code class="ph codeph">2</code>：低延迟模式（用于传统广播者）</li><br><br>                                    </ul><br><br>                                    <br>根据广播模式选择广播间隔，如下所示：<ul class="ul" id="references_1__ul_mhy_1hq_m1c"><br>                                            <li class="li">低功耗模式：1 s 广播间隔</li><br><br>                                            <li class="li">平衡模式：250 ms 广播间隔</li><br><br>                                            <li class="li">低延迟模式：100 ms 广播间隔</li><br><br>                                        </ul> |
| `BLEBtName` | 特定广播者集的显示名称。 |

以下代码段显示了广播集的示例：

    *******************AdvertisingSet1*************** 
    TxPower:1
    LegacyFlag:1
    PeriodicFlag:0
    ConnectableFlag:1
    ScannableFlag:1
    AnonymousFlag:0
    IncludePower:1
    PrimaryPhy:1
    SecondaryPhy:1 
    Interval: 320
    TimeOutLegacy:0
    AdvertiseMode:1
    BLEBtName:Adv1   Copy to clipboard

**`ServerConfigFile.txt`**

下表列出了 `ServerConfigFile.txt` 文件中每个服务参数的可能值：

| 参数 | 说明 |
| --- | --- |
| `service uuid` | 服务 ID。一个服务器可以有许多服务。 |
| `characteristic uuid` | 特征 ID。一个服务可以具有许多特征。特征可以具有属性和权限。 |
| `characteristic properties` | 特征的属性。<br><br><br>                                <br>根据需要使用逻辑或参数将以下特征属性组合在一起：<br><br>    PROPERTY_BROADCAST = 0x01;<br>    PROPERTY_READ = 0x02;<br>    PROPERTY_WRITE_NO_RESPONSE = 0x04;<br>    PROPERTY_WRITE = 0x08;<br>    PROPERTY_NOTIFY = 0x10;<br>    PROPERTY_INDICATE = 0x20;<br>    PROPERTY_SIGNED_WRITE = 0x40;<br>    PROPERTY_EXTENDED_PROPS = 0x80;Copy to clipboard |
| `characteristic permissions` | 特征的权限。<br><br><br>                                <br>根据需要使用逻辑或参数将以下特征权限组合在一起：<br><br>    PERMISSION_READ = 0x01;<br>    PERMISSION_READ_ENCRYPTED = 0x02;<br>    PERMISSION_READ_ENCRYPTED_MITM = 0x04;<br>    PERMISSION_WRITE = 0x10;<br>    PERMISSION_WRITE_ENCRYPTED = 0x20;<br>    PERMISSION_WRITE_ENCRYPTED_MITM = 0x40;<br>    PERMISSION_WRITE_SIGNED = 0x80;<br>    PERMISSION_WRITE_SIGNED_MITM = 0x100;Copy to clipboard |
| `descriptor uuid` | 描述符 ID。一个特征可以有许多描述符。描述符可以具有权限。 |
| `descriptor permissions` | 描述符的权限。 |

以下代码段显示了 GATT 服务器中的服务示例：

    **************Server1*************
    Service1:[service uuid],[characteristic uuid],[characteristic properties],[characteristic permissions],[descriptor uuid],[descriptor permissions]
    Service1:00001200-0000-1000-8000-00805f9b34fb, 00001101-0000-1000-8000-00805f9b34fb,26,31,00002a06-0000-1000-8000-00805f9b34fb,17
    ManufacturerId:0
    ManufacturerData:AAAA
    **************End of service*************Copy to clipboard

## GATT 客户端配置参数

下表列出了用于配置 GATT 客户端的连接参数：

| 参数 | 值 | 备注 |
| --- | --- | --- |
| `isAuto` | <ul class="ul" id="references_1__ul_pp5_bx1_kbc_navyanka_05-14-24-1437-19-37"><br>                                    <li class="li"><code class="ph codeph">0</code>：直接连接</li><br><br>                                    <li class="li"><code class="ph codeph">1</code>：对端设备可用后，就会自动连接</li><br><br>                                </ul> | 如果此参数设置为 `1`，确保设备已绑定以进行自动连接。 |
| `isOpportunistic` | <ul class="ul" id="references_1__ul_mxx_bx1_kbc_navyanka_05-14-24-1437-21-270"><br>                                    <li class="li"><code class="ph codeph">0</code>：直接连接</li><br><br>                                    <li class="li"><code class="ph codeph">1</code>：如果已根据地址和传输方式连接，则提供句柄</li><br><br>                                </ul> | 如果此参数设置为 `1`，则如果连接尚不存在，则不会启动连接。 |
| `Tx_Phy` | <ul class="ul" id="references_1__ul_mv1_cx1_kbc_navyanka_05-14-24-1437-23-246"><br>                                    <li class="li"><code class="ph codeph">1</code>：1 M-PHY</li><br><br>                                    <li class="li"><code class="ph codeph">2</code>：2 M-PHY</li><br><br>                                    <li class="li"><code class="ph codeph">4</code>：LE coded PHY</li><br><br>                                    <li class="li"><code class="ph codeph">7</code>：所有 PHY</li><br><br>                                </ul> | 不适用 |
| `Rx_Phy` | <ul class="ul" id="references_1__ul_itd_cx1_kbc_navyanka_05-14-24-1437-25-218"><br>                                    <li class="li"><code class="ph codeph">1</code>：1 M-PHY</li><br><br>                                    <li class="li"><code class="ph codeph">2</code>：2 M-PHY</li><br><br>                                    <li class="li"><code class="ph codeph">4</code>：LE coded PHY</li><br><br>                                    <li class="li"><code class="ph codeph">7</code>：所有 PHY</li><br><br>                                </ul> | 不适用 |
| `Phy_Opt:00` | <ul class="ul" id="references_1__ul_pqg_cx1_kbc_navyanka_05-14-24-1437-27-175"><br>                                    <li class="li"><code class="ph codeph">0</code>：主机首选编码方案</li><br><br>                                    <li class="li"><code class="ph codeph">1</code>：使用 S = 2 (500 Kbps) 编码方案</li><br><br>                                    <li class="li"><code class="ph codeph">2</code>：使用 S = 8 (125 Kbps) 编码方案。仅当 PHY 是 LE 编码时才使用它。</li><br><br>                                </ul> | 不适用 |
| `Mtu_Size` | <ul class="ul" id="references_1__ul_hvk_cx1_kbc_navyanka_05-14-24-1437-30-1"><br>                                    <li class="li">最小值为 <code class="ph codeph">23</code>。</li><br><br>                                    <li class="li">最大值为 <code class="ph codeph">512</code>。</li><br><br>                                </ul> | 不适用 |

## 扫描设置

下表列出了用于配置 GATT 客户端的扫描设置：

| 扫描类型 | 值 | 备注 |
| --- | --- | --- |
| `1： Scan_mode` | <ul class="ul" id="references_1__ul_bbd_rfb_kbc_navyanka_05-14-24-1542-44-191"><br>                                    <li class="li"><code class="ph codeph">-1</code>：Opportunistic 模式</li><br><br>                                    <li class="li"><code class="ph codeph">0</code>：低功耗模式</li><br><br>                                    <li class="li"><code class="ph codeph">1</code>：平衡模式</li><br><br>                                    <li class="li"><code class="ph codeph">2</code>：低延迟模式</li><br><br>                                </ul><br><br>                                <br>**常规扫描：**<br><br><br>                                <ul class="ul" id="references_1__ul_udf_sfb_kbc_navyanka_05-14-24-1543-3-190"><br>                                    <li class="li"><code class="ph codeph">0</code>：扫描窗口 (512 ms)，扫描间隔 (5120 ms)</li><br><br>                                    <li class="li"><code class="ph codeph">1</code>：扫描窗口 (1024 ms)，扫描间隔 (4096 ms)</li><br><br>                                    <li class="li"><code class="ph codeph">2</code>：扫描窗口 (4096 ms)，扫描间隔 (4096 ms)</li><br><br>                                </ul><br><br>                                <br>**批量扫描：**<br><br><br>                                <ul class="ul" id="references_1__ul_stj_sfb_kbc_navyanka_05-14-24-1543-6-308"><br>                                    <li class="li"><code class="ph codeph">0</code>：扫描窗口 (1500 ms)，扫描间隔 (150000 ms)</li><br><br>                                    <li class="li"><code class="ph codeph">1</code>：扫描窗口 (1500 ms)，扫描间隔 (15000 ms)</li><br><br>                                    <li class="li"><code class="ph codeph">2</code>：扫描窗口 (1500 ms)，扫描间隔 (5000 ms)</li><br><br>                                </ul> | 不适用 |
| `2：CallbackType` | <ul class="ul" id="references_1__ul_shp_sfb_kbc_navyanka_05-14-24-1543-10-52"><br>                                    <li class="li"><code class="ph codeph">1</code>：对所有匹配的广播进行回调</li><br><br>                                    <li class="li"><code class="ph codeph">2</code>：对第一个匹配的广播进行回调</li><br><br>                                    <li class="li"><code class="ph codeph">4</code>：第一次匹配回调之前，不再收到设备广播时提供回调。</li><br><br>                                </ul> | 不适用 |
| `3：ResultType` | <ul class="ul" id="references_1__ul_bkt_sfb_kbc_navyanka_05-14-24-1543-12-817"><br>                                    <li class="li"><code class="ph codeph">0</code>：提供包含设备、RSSI、广播数据、扫描响应和扫描时间戳的完整扫描结果。</li><br><br>                                    <li class="li"><code class="ph codeph">1</code>：提供具有设备、RSSI 和扫描时间戳的扫描结果。</li><br><br>                                </ul> | 不适用 |
| `4：ScanPhy` | <ul class="ul" id="references_1__ul_dww_sfb_kbc_navyanka_05-14-24-1543-15-159"><br>                                    <li class="li"><code class="ph codeph">1</code>：1 M-PHY</li><br><br>                                    <li class="li"><code class="ph codeph">3</code>：LE coded PHY。仅将其用于扩展扫描。</li><br><br>                                    <li class="li"><code class="ph codeph">255</code>：所有支持的 PHY</li><br><br>                                </ul> | 目前，它在应用程序代码中被硬编码为 255。 |
| `5: 传统` | <ul class="ul" id="references_1__ul_oh1_tfb_kbc_navyanka_05-14-24-1543-17-484"><br>                                    <li class="li"><code class="ph codeph">True</code>：传统扫描</li><br><br>                                    <li class="li"><br>                                        <p class="p"><code class="ph codeph">False</code>：扩展扫描</p><br><br>                                    </li><br><br>                                </ul> | 不适用 |
| `6: ReportDelay` | <ul class="ul" id="references_1__ul_sb2_tfb_kbc_navyanka_05-14-24-1543-20-36"><br>                                    <li class="li"><code class="ph codeph">0</code>：立即交付报告</li><br><br>                                    <li class="li"><code class="ph codeph">&gt;0</code>：累积扫描结果，并在上述延迟（以毫秒为单位）或缓冲区已满（批量扫描）后交付它们。</li><br><br>                                </ul> | 不适用 |
| `7：MatchMode` | <ul class="ul" id="references_1__ul_xxh_tfb_kbc_navyanka_05-14-24-1543-22-641"><br>                                    <li class="li"><br>                                        <p class="p"><code class="ph codeph">1</code>：高性能匹配模式。即使信号强度微弱，硬件也能找到匹配项。</p><br><br>                                        <p class="p"><code class="ph codeph">2</code>：持久性匹配模式。它需要更高的信号强度阈值。</p><br><br>                                    </li><br><br>                                </ul> | 不适用 |
| `8: NumOfAdvMatches` | <ul class="ul" id="references_1__ul_pnl_tfb_kbc_navyanka_05-14-24-1543-25-77"><br>                                    <li class="li"><code class="ph codeph">1</code>：为每个过滤器匹配一个广播</li><br><br>                                    <li class="li"><code class="ph codeph">2</code>：根据硬件资源的可用性匹配少量广播</li><br><br>                                    <li class="li"><code class="ph codeph">3</code>：匹配硬件允许的最大数量的广播</li><br><br>                                </ul> | 不适用 |

**Parent Topic:** [General Attribute Profile](https://docs.qualcomm.com/doc/80-70014-13Y/topic/set_up_ble_gatt.html)

Last Published: Aug 22, 2024

[Previous Topic
执行低功耗蓝牙 GATT 客户端功能](https://docs.qualcomm.com/bundle/publicresource/80-70014-13Y/topics/perform_ble_gatt_client_functions.md) [Next Topic
调试](https://docs.qualcomm.com/bundle/publicresource/80-70014-13Y/topics/bt_debugging.md)