[doc] update ble pds31 rst

This commit is contained in:
jzlv 2021-10-19 18:59:12 +08:00
parent dd10abb8bd
commit 3722131da7
92 changed files with 986 additions and 222 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

View file

@ -68,5 +68,6 @@ BL MCU SDK 将为您提供博流 BL70X 系列 MCU 开发的全方位支持。
samples/advance samples/lowpower_demo
samples/advance samples/boot2_iap_info
samples/advance samples/ble_scan_demo
samples/advance samples/ble_pds
samples/advance samples/emac/index

View file

@ -0,0 +1,132 @@
BLE PDS31
=======================
本 demo 基于 **bl702** 演示 **ble PDS31**
准备工具
-----------------------
- 一块 bl702 开发板 + 手机 app
软件实现
-----------------------
BLE PDS31 软件实现
^^^^^^^^^^^^^^^^^^^^^^^^
- 软件代码见 ``examples/ble/ble_pds``
.. code-block:: C
:linenos:
#define configUSE_TICKLESS_IDLE 1
- BLE PDS31 function 需要开启freertos tickless 功能 见 ``components/freertos/portable/gcc/risc-v/bl702/FreeRTOSConfig.h``
.. code-block:: C
:linenos:
int ble_start_adv(void)
{
struct bt_le_adv_param adv_param = {
//options:3, connectable undirected, adv one time
.options = 3, \
.interval_min = 0x280, \
.interval_max = 0x280, \
};
char *adv_name = "BL_PDS_TEST_01"; // This name must be the same as adv_name in ble_central
uint8_t data[1] = {(BT_LE_AD_LIMITED | BT_LE_AD_NO_BREDR)};
uint8_t data_uuid[2] = {0x12, 0x18};//0x1812
uint8_t data_appearance[2] = {0x80, 0x01};//0x0180
uint8_t data_manu[4] = {0x71, 0x01, 0x04, 0x13};
struct bt_data adv_data[] = {
BT_DATA(BT_DATA_FLAGS, data, 1),
BT_DATA(BT_DATA_UUID16_ALL, data_uuid, sizeof(data_uuid)),
BT_DATA(BT_DATA_GAP_APPEARANCE, data_appearance, sizeof(data_appearance)),
BT_DATA(BT_DATA_NAME_COMPLETE, adv_name, strlen(adv_name)),
BT_DATA(BT_DATA_MANUFACTURER_DATA, data_manu, sizeof(data_manu))
};
return bt_le_adv_start(&adv_param, adv_data, ARRAY_SIZE(adv_data), NULL, 0);
}
- 在 ``ble_start_adv`` 函数中, ``adv_name`` 设置这次广播的设备名称,设备就开始进行广播
.. code-block:: C
:linenos:
void bt_enable_cb(int err)
{
MSG("ble_tp_init\r\n");
ble_tp_init();
#if defined(CONFIG_BT_OAD_SERVER)
oad_service_enable(app_check_oad);
#endif
MSG("Start adv\r\n");
ble_start_adv();
MSG("Advertising.........\r\n");
pds_start = true;
}
- 广播开始之后, 在 ``bt_enable_cb`` 中, ``pds_start = true`` 是允许进入PDS31
- 连接成功后,在 ``ble_tp_connected`` 函数, ``pds_start = false`` 会关闭pds31.
- 如果想要连接成功后继续进入PDS31需要板子上带有external xtal 32K. 配置以下设置, 当connection interval > 100ms 的时候会进入PDS31.
.. code-block:: C
:linenos:
#define XTAL_32K_TYPE INTERNAL_XTAL_32K
- pds31 唤醒时钟源配置,见 ``bsp/board/bl706_iot/clock_config.h``
.. code-block:: C
:linenos:
#define BLE_CONN_PDS 1
- 连接成功后进入PDS31配置见 ``examples/ble/ble_pds/ble_peripheral_tp_server.c``
编译和烧录
-----------------------------
- **命令行编译**
.. code-block:: bash
:linenos:
$ cd <sdk_path>/bl_mcu_sdk
$ make build BOARD=bl706_iot SUPPORT_BLECONTROLLER_LIB=m0s1p SUPPORT_FAST_WAKEUP=y SUPPORT_HW_SEC_ENG_DISABLE=y
- **烧录**
详见 :ref:`bl_dev_cube`
实验现象
-----------------------------
- **手机连接 bl702**
.. figure:: img/phone_pds_connect.png
:alt:
- 连接成功,如下图所示
.. figure:: img/phone_connected.png
:alt:
- 进入PDS31 显示
.. figure:: img/pds31.png
:alt:

View file

@ -146,7 +146,8 @@
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -171,7 +171,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -160,7 +160,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -154,7 +154,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -152,7 +152,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -169,7 +169,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -158,7 +158,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -158,7 +158,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -157,7 +157,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -160,7 +160,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -157,7 +157,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -164,7 +164,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -159,7 +159,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -164,7 +164,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -160,7 +160,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -161,7 +161,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -170,7 +170,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -146,7 +146,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -139,7 +139,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -175,7 +175,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../samples/advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -127,7 +127,8 @@
<li class="toctree-l1"><a class="reference internal" href="samples/advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="samples/advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="samples/advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="samples/advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="samples/advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="samples/advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -149,7 +149,8 @@
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -145,7 +145,8 @@
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -151,7 +151,8 @@
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -138,7 +138,8 @@
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -150,7 +150,8 @@
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -145,7 +145,8 @@
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -133,7 +133,8 @@
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -145,7 +145,8 @@
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -138,7 +138,8 @@
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -144,7 +144,8 @@
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -138,7 +138,8 @@
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -134,7 +134,8 @@
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../samples/advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -128,7 +128,8 @@
<li class="toctree-l1"><a class="reference internal" href="samples/advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="samples/advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="samples/advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="samples/advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="samples/advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="samples/advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>
@ -249,7 +250,8 @@
<li class="toctree-l1"><a class="reference internal" href="samples/advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="samples/advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="samples/advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="samples/advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="samples/advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="samples/advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>
</div>
</div>

View file

@ -0,0 +1,419 @@
<!DOCTYPE html>
<html class="writer-html5" lang="zh-CN" >
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>7. BLE PDS31 &mdash; BL_MCU_SDK 开发指南 0.3 文档</title>
<link rel="stylesheet" href="../../_static/css/theme.css" type="text/css" />
<link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
<!--[if lt IE 9]>
<script src="../../_static/js/html5shiv.min.js"></script>
<![endif]-->
<script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
<script src="../../_static/jquery.js"></script>
<script src="../../_static/underscore.js"></script>
<script src="../../_static/doctools.js"></script>
<script src="../../_static/translations.js"></script>
<script type="text/javascript" src="../../_static/js/theme.js"></script>
<link rel="index" title="索引" href="../../genindex.html" />
<link rel="search" title="搜索" href="../../search.html" />
<link rel="next" title="8. EMAC 以太网应用" href="emac/index.html" />
<link rel="prev" title="6. BLE 客户端和服务端互连" href="ble_scan_demo.html" />
</head>
<body class="wy-body-for-nav">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
<div class="wy-side-scroll">
<div class="wy-side-nav-search" >
<a href="../../index.html" class="icon icon-home"> BL_MCU_SDK 开发指南
</a>
<div class="version">
0.3
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../../search.html" method="get">
<input type="text" name="q" placeholder="Search docs" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
</div>
<div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
<p class="caption"><span class="caption-text">快速开发指南</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../get_started/get_started.html">1. 开发前的准备</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../get_started/connecting_hardware.html">2. 硬件连接指南</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../get_started/index.html">3. 开发环境搭建指南</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../get_started/cmake_quick_start.html">4. 基于 cmake 框架新建工程指南</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../get_started/cdk_new_project_quick_start.html">5. 基于 CDK 新建工程指南</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../get_started/bl_dev_cube.html">6. BLDevCube 烧录工具指南</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../get_started/board.html">7. Board 配置系统使用指南</a></li>
</ul>
<p class="caption"><span class="caption-text">API 手册</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../api_reference/api_overview.html">1. API 概述</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../api_reference/peripheral/index.html">2. Peripheral</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../api_reference/shell/api_shell.html">3. Shell</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../api_reference/usb%20stack/api_usb_stack.html">4. USB Stack</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../api_reference/bluetooth/api_ble.html">5. BLE</a></li>
</ul>
<p class="caption"><span class="caption-text">基础外设例程</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../basic%20samples/gpio/index.html">1. GPIO 示例</a></li>
<li class="toctree-l1"><a class="reference internal" href="../basic%20samples/uart/index.html">2. UART 示例</a></li>
<li class="toctree-l1"><a class="reference internal" href="../basic%20samples/pwm/index.html">3. PWM 示例</a></li>
<li class="toctree-l1"><a class="reference internal" href="../basic%20samples/mtimer/index.html">4. MTIMER 示例</a></li>
<li class="toctree-l1"><a class="reference internal" href="../basic%20samples/dma/index.html">5. DMA 示例</a></li>
<li class="toctree-l1"><a class="reference internal" href="../basic%20samples/spi/index.html">6. SPI 示例</a></li>
<li class="toctree-l1"><a class="reference internal" href="../basic%20samples/i2c/index.html">7. I2C 示例</a></li>
<li class="toctree-l1"><a class="reference internal" href="../basic%20samples/i2s/index.html">8. I2S 示例</a></li>
<li class="toctree-l1"><a class="reference internal" href="../basic%20samples/adc/index.html">9. ADC 示例</a></li>
<li class="toctree-l1"><a class="reference internal" href="../basic%20samples/timer/index.html">10. TIMER 示例</a></li>
<li class="toctree-l1"><a class="reference internal" href="../basic%20samples/flash/index.html">11. XIP FLASH 示例</a></li>
</ul>
<p class="caption"><span class="caption-text">进阶例程</span></p>
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="shell_demo.html">1. Shell 命令行调试</a></li>
<li class="toctree-l1"><a class="reference internal" href="fatfs_demo.html">2. FatFs 文件系统读写(SD 卡)</a></li>
<li class="toctree-l1"><a class="reference internal" href="usb/index.html">3. USB Device 应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1 current"><a class="current reference internal" href="#">7. BLE PDS31</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#id1">7.1. 准备工具</a></li>
<li class="toctree-l2"><a class="reference internal" href="#id2">7.2. 软件实现</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#id3">7.2.1. BLE PDS31 软件实现</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="#id4">7.3. 编译和烧录</a></li>
<li class="toctree-l2"><a class="reference internal" href="#id5">7.4. 实验现象</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="emac/index.html">8. EMAC 以太网应用</a></li>
</ul>
</div>
</div>
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
<nav class="wy-nav-top" aria-label="top navigation">
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="../../index.html">BL_MCU_SDK 开发指南</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content">
<div role="navigation" aria-label="breadcrumbs navigation">
<ul class="wy-breadcrumbs">
<li><a href="../../index.html" class="icon icon-home"></a> &raquo;</li>
<li><span class="section-number">7. </span>BLE PDS31</li>
<li class="wy-breadcrumbs-aside">
<a href="../../_sources/samples/advance samples/ble_pds.rst.txt" rel="nofollow"> View page source</a>
</li>
</ul>
<hr/>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<div class="section" id="ble-pds31">
<h1><span class="section-number">7. </span>BLE PDS31<a class="headerlink" href="#ble-pds31" title="永久链接至标题"></a></h1>
<p>本 demo 基于 <strong>bl702</strong> 演示 <strong>ble PDS31</strong></p>
<div class="section" id="id1">
<h2><span class="section-number">7.1. </span>准备工具<a class="headerlink" href="#id1" title="永久链接至标题"></a></h2>
<ul class="simple">
<li><p>一块 bl702 开发板 + 手机 app</p></li>
</ul>
</div>
<div class="section" id="id2">
<h2><span class="section-number">7.2. </span>软件实现<a class="headerlink" href="#id2" title="永久链接至标题"></a></h2>
<div class="section" id="id3">
<h3><span class="section-number">7.2.1. </span>BLE PDS31 软件实现<a class="headerlink" href="#id3" title="永久链接至标题"></a></h3>
<ul class="simple">
<li><p>软件代码见 <code class="docutils literal notranslate"><span class="pre">examples/ble/ble_pds</span></code></p></li>
</ul>
<div class="highlight-C notranslate"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal">1</span></pre></div></td><td class="code"><div class="highlight"><pre><span></span><span class="cp">#define configUSE_TICKLESS_IDLE 1</span>
</pre></div>
</td></tr></table></div>
<ul class="simple">
<li><p>BLE PDS31 function 需要开启freertos tickless 功能 <code class="docutils literal notranslate"><span class="pre">components/freertos/portable/gcc/risc-v/bl702/FreeRTOSConfig.h</span></code></p></li>
</ul>
<div class="highlight-C notranslate"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
<span class="normal"> 2</span>
<span class="normal"> 3</span>
<span class="normal"> 4</span>
<span class="normal"> 5</span>
<span class="normal"> 6</span>
<span class="normal"> 7</span>
<span class="normal"> 8</span>
<span class="normal"> 9</span>
<span class="normal">10</span>
<span class="normal">11</span>
<span class="normal">12</span>
<span class="normal">13</span>
<span class="normal">14</span>
<span class="normal">15</span>
<span class="normal">16</span>
<span class="normal">17</span>
<span class="normal">18</span>
<span class="normal">19</span>
<span class="normal">20</span>
<span class="normal">21</span>
<span class="normal">22</span>
<span class="normal">23</span>
<span class="normal">24</span>
<span class="normal">25</span>
<span class="normal">26</span></pre></div></td><td class="code"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="nf">ble_start_adv</span><span class="p">(</span><span class="kt">void</span><span class="p">)</span>
<span class="p">{</span>
<span class="k">struct</span> <span class="nc">bt_le_adv_param</span> <span class="n">adv_param</span> <span class="o">=</span> <span class="p">{</span>
<span class="c1">//options:3, connectable undirected, adv one time</span>
<span class="p">.</span><span class="n">options</span> <span class="o">=</span> <span class="mi">3</span><span class="p">,</span> \
<span class="p">.</span><span class="n">interval_min</span> <span class="o">=</span> <span class="mh">0x280</span><span class="p">,</span> \
<span class="p">.</span><span class="n">interval_max</span> <span class="o">=</span> <span class="mh">0x280</span><span class="p">,</span> \
<span class="p">};</span>
<span class="kt">char</span> <span class="o">*</span><span class="n">adv_name</span> <span class="o">=</span> <span class="s">&quot;BL_PDS_TEST_01&quot;</span><span class="p">;</span> <span class="c1">// This name must be the same as adv_name in ble_central</span>
<span class="kt">uint8_t</span> <span class="n">data</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="o">=</span> <span class="p">{(</span><span class="n">BT_LE_AD_LIMITED</span> <span class="o">|</span> <span class="n">BT_LE_AD_NO_BREDR</span><span class="p">)};</span>
<span class="kt">uint8_t</span> <span class="n">data_uuid</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="o">=</span> <span class="p">{</span><span class="mh">0x12</span><span class="p">,</span> <span class="mh">0x18</span><span class="p">};</span><span class="c1">//0x1812</span>
<span class="kt">uint8_t</span> <span class="n">data_appearance</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="o">=</span> <span class="p">{</span><span class="mh">0x80</span><span class="p">,</span> <span class="mh">0x01</span><span class="p">};</span><span class="c1">//0x0180</span>
<span class="kt">uint8_t</span> <span class="n">data_manu</span><span class="p">[</span><span class="mi">4</span><span class="p">]</span> <span class="o">=</span> <span class="p">{</span><span class="mh">0x71</span><span class="p">,</span> <span class="mh">0x01</span><span class="p">,</span> <span class="mh">0x04</span><span class="p">,</span> <span class="mh">0x13</span><span class="p">};</span>
<span class="k">struct</span> <span class="nc">bt_data</span> <span class="n">adv_data</span><span class="p">[]</span> <span class="o">=</span> <span class="p">{</span>
<span class="n">BT_DATA</span><span class="p">(</span><span class="n">BT_DATA_FLAGS</span><span class="p">,</span> <span class="n">data</span><span class="p">,</span> <span class="mi">1</span><span class="p">),</span>
<span class="n">BT_DATA</span><span class="p">(</span><span class="n">BT_DATA_UUID16_ALL</span><span class="p">,</span> <span class="n">data_uuid</span><span class="p">,</span> <span class="k">sizeof</span><span class="p">(</span><span class="n">data_uuid</span><span class="p">)),</span>
<span class="n">BT_DATA</span><span class="p">(</span><span class="n">BT_DATA_GAP_APPEARANCE</span><span class="p">,</span> <span class="n">data_appearance</span><span class="p">,</span> <span class="k">sizeof</span><span class="p">(</span><span class="n">data_appearance</span><span class="p">)),</span>
<span class="n">BT_DATA</span><span class="p">(</span><span class="n">BT_DATA_NAME_COMPLETE</span><span class="p">,</span> <span class="n">adv_name</span><span class="p">,</span> <span class="n">strlen</span><span class="p">(</span><span class="n">adv_name</span><span class="p">)),</span>
<span class="n">BT_DATA</span><span class="p">(</span><span class="n">BT_DATA_MANUFACTURER_DATA</span><span class="p">,</span> <span class="n">data_manu</span><span class="p">,</span> <span class="k">sizeof</span><span class="p">(</span><span class="n">data_manu</span><span class="p">))</span>
<span class="p">};</span>
<span class="k">return</span> <span class="n">bt_le_adv_start</span><span class="p">(</span><span class="o">&amp;</span><span class="n">adv_param</span><span class="p">,</span> <span class="n">adv_data</span><span class="p">,</span> <span class="n">ARRAY_SIZE</span><span class="p">(</span><span class="n">adv_data</span><span class="p">),</span> <span class="nb">NULL</span><span class="p">,</span> <span class="mi">0</span><span class="p">);</span>
<span class="p">}</span>
</pre></div>
</td></tr></table></div>
<ul class="simple">
<li><p><code class="docutils literal notranslate"><span class="pre">ble_start_adv</span></code> 函数中, <code class="docutils literal notranslate"><span class="pre">adv_name</span></code> 设置这次广播的设备名称,设备就开始进行广播</p></li>
</ul>
<div class="highlight-C notranslate"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal"> 1</span>
<span class="normal"> 2</span>
<span class="normal"> 3</span>
<span class="normal"> 4</span>
<span class="normal"> 5</span>
<span class="normal"> 6</span>
<span class="normal"> 7</span>
<span class="normal"> 8</span>
<span class="normal"> 9</span>
<span class="normal">10</span>
<span class="normal">11</span>
<span class="normal">12</span></pre></div></td><td class="code"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">bt_enable_cb</span><span class="p">(</span><span class="kt">int</span> <span class="n">err</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">MSG</span><span class="p">(</span><span class="s">&quot;ble_tp_init</span><span class="se">\r\n</span><span class="s">&quot;</span><span class="p">);</span>
<span class="n">ble_tp_init</span><span class="p">();</span>
<span class="cp">#if defined(CONFIG_BT_OAD_SERVER)</span>
<span class="n">oad_service_enable</span><span class="p">(</span><span class="n">app_check_oad</span><span class="p">);</span>
<span class="cp">#endif</span>
<span class="n">MSG</span><span class="p">(</span><span class="s">&quot;Start adv</span><span class="se">\r\n</span><span class="s">&quot;</span><span class="p">);</span>
<span class="n">ble_start_adv</span><span class="p">();</span>
<span class="n">MSG</span><span class="p">(</span><span class="s">&quot;Advertising.........</span><span class="se">\r\n</span><span class="s">&quot;</span><span class="p">);</span>
<span class="n">pds_start</span> <span class="o">=</span> <span class="nb">true</span><span class="p">;</span>
<span class="p">}</span>
</pre></div>
</td></tr></table></div>
<ul class="simple">
<li><p>广播开始之后, 在 <code class="docutils literal notranslate"><span class="pre">bt_enable_cb</span></code> 中, <code class="docutils literal notranslate"><span class="pre">pds_start</span> <span class="pre">=</span> <span class="pre">true</span></code> 是允许进入PDS31</p></li>
<li><p>连接成功后,在 <code class="docutils literal notranslate"><span class="pre">ble_tp_connected</span></code> 函数, <code class="docutils literal notranslate"><span class="pre">pds_start</span> <span class="pre">=</span> <span class="pre">false</span></code> 会关闭pds31.</p></li>
<li><p>如果想要连接成功后继续进入PDS31需要板子上带有external xtal 32K. 配置以下设置, 当connection interval &gt; 100ms 的时候会进入PDS31.</p></li>
</ul>
<div class="highlight-C notranslate"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal">1</span></pre></div></td><td class="code"><div class="highlight"><pre><span></span><span class="cp">#define XTAL_32K_TYPE INTERNAL_XTAL_32K</span>
</pre></div>
</td></tr></table></div>
<ul class="simple">
<li><p>pds31 唤醒时钟源配置,见 <code class="docutils literal notranslate"><span class="pre">bsp/board/bl706_iot/clock_config.h</span></code></p></li>
</ul>
<div class="highlight-C notranslate"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal">1</span></pre></div></td><td class="code"><div class="highlight"><pre><span></span><span class="cp">#define BLE_CONN_PDS 1</span>
</pre></div>
</td></tr></table></div>
<ul class="simple">
<li><p>连接成功后进入PDS31配置<code class="docutils literal notranslate"><span class="pre">examples/ble/ble_pds/ble_peripheral_tp_server.c</span></code></p></li>
</ul>
</div>
</div>
<div class="section" id="id4">
<h2><span class="section-number">7.3. </span>编译和烧录<a class="headerlink" href="#id4" title="永久链接至标题"></a></h2>
<ul class="simple">
<li><p><strong>命令行编译</strong></p></li>
</ul>
<div class="highlight-bash notranslate"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal">1</span>
<span class="normal">2</span></pre></div></td><td class="code"><div class="highlight"><pre><span></span> $ <span class="nb">cd</span> &lt;sdk_path&gt;/bl_mcu_sdk
$ make build <span class="nv">BOARD</span><span class="o">=</span>bl706_iot <span class="nv">SUPPORT_BLECONTROLLER_LIB</span><span class="o">=</span>m0s1p <span class="nv">SUPPORT_FAST_WAKEUP</span><span class="o">=</span>y <span class="nv">SUPPORT_HW_SEC_ENG_DISABLE</span><span class="o">=</span>y
</pre></div>
</td></tr></table></div>
<ul>
<li><p><strong>烧录</strong></p>
<p>详见 <a class="reference internal" href="../../get_started/bl_dev_cube.html#bl-dev-cube"><span class="std std-ref">BLDevCube 烧录工具指南</span></a></p>
</li>
</ul>
</div>
<div class="section" id="id5">
<h2><span class="section-number">7.4. </span>实验现象<a class="headerlink" href="#id5" title="永久链接至标题"></a></h2>
<ul class="simple">
<li><p><strong>手机连接 bl702</strong></p></li>
</ul>
<div class="figure align-default">
<img alt="" src="../../_images/phone_pds_connect.png" />
</div>
<ul class="simple">
<li><p>连接成功,如下图所示</p></li>
</ul>
<div class="figure align-default">
<img alt="" src="../../_images/phone_connected.png" />
</div>
<ul class="simple">
<li><p>进入PDS31 显示</p></li>
</ul>
<div class="figure align-default">
<img alt="" src="../../_images/pds31.png" />
</div>
</div>
</div>
</div>
</div>
<footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="emac/index.html" class="btn btn-neutral float-right" title="8. EMAC 以太网应用" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
<a href="ble_scan_demo.html" class="btn btn-neutral float-left" title="6. BLE 客户端和服务端互连" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
</div>
<hr/>
<div role="contentinfo">
<p>
&#169; 版权所有 2021, BouffaloLab Co., Ltd.
</p>
</div>
Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a
<a href="https://github.com/readthedocs/sphinx_rtd_theme">theme</a>
provided by <a href="https://readthedocs.org">Read the Docs</a>.
</footer>
</div>
</div>
</section>
</div>
<script type="text/javascript">
jQuery(function () {
SphinxRtdTheme.Navigation.enable(true);
});
</script>
</body>
</html>

View file

@ -39,7 +39,7 @@
<link rel="index" title="索引" href="../../genindex.html" />
<link rel="search" title="搜索" href="../../search.html" />
<link rel="next" title="7. EMAC 以太网应用" href="emac/index.html" />
<link rel="next" title="7. BLE PDS31" href="ble_pds.html" />
<link rel="prev" title="5. BOOT2 IAP" href="boot2_iap_info.html" />
</head>
@ -139,7 +139,8 @@
<li class="toctree-l2"><a class="reference internal" href="#id4">6.4. 实验现象</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="emac/index.html">8. EMAC 以太网应用</a></li>
</ul>
@ -470,7 +471,7 @@
</div>
<footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="emac/index.html" class="btn btn-neutral float-right" title="7. EMAC 以太网应用" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
<a href="ble_pds.html" class="btn btn-neutral float-right" title="7. BLE PDS31" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
<a href="boot2_iap_info.html" class="btn btn-neutral float-left" title="5. BOOT2 IAP" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
</div>

View file

@ -133,7 +133,8 @@
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -7,7 +7,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>7.1. emac basic 发送 ARP 数据包 &mdash; BL_MCU_SDK 开发指南 0.3 文档</title>
<title>8.1. emac basic 发送 ARP 数据包 &mdash; BL_MCU_SDK 开发指南 0.3 文档</title>
@ -39,8 +39,8 @@
<link rel="index" title="索引" href="../../../genindex.html" />
<link rel="search" title="搜索" href="../../../search.html" />
<link rel="next" title="7.2. UDP echo" href="eth_udp_echo.html" />
<link rel="prev" title="7. EMAC 以太网应用" href="index.html" />
<link rel="next" title="8.2. UDP echo" href="eth_udp_echo.html" />
<link rel="prev" title="8. EMAC 以太网应用" href="index.html" />
</head>
<body class="wy-body-for-nav">
@ -129,19 +129,20 @@
<li class="toctree-l1"><a class="reference internal" href="../lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="index.html">7. EMAC 以太网应用</a><ul class="current">
<li class="toctree-l2 current"><a class="current reference internal" href="#">7.1. ARP - 发送 ARP 裸包</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#id1">7.1.1. 硬件准备</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id2">7.1.2. 硬件连接</a></li>
<li class="toctree-l3"><a class="reference internal" href="#arp">7.1.3. 构造 ARP 数据包</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id3">7.1.4. 编译和下载</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id4">7.1.5. 实验现象</a></li>
<li class="toctree-l1"><a class="reference internal" href="../ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="index.html">8. EMAC 以太网应用</a><ul class="current">
<li class="toctree-l2 current"><a class="current reference internal" href="#">8.1. ARP - 发送 ARP 裸包</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#id1">8.1.1. 硬件准备</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id2">8.1.2. 硬件连接</a></li>
<li class="toctree-l3"><a class="reference internal" href="#arp">8.1.3. 构造 ARP 数据包</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id3">8.1.4. 编译和下载</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id4">8.1.5. 实验现象</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="eth_udp_echo.html">7.2. UDP - LwIP UDP echo</a></li>
<li class="toctree-l2"><a class="reference internal" href="eth_tcp_echo.html">7.3. TCP - LwIP TCP echo</a></li>
<li class="toctree-l2"><a class="reference internal" href="eth_http_server.html">7.4. HTTP - LwIP HTTP server</a></li>
<li class="toctree-l2"><a class="reference internal" href="eth_lwip_iperf.html">7.5. IPERF - LwIP iperf</a></li>
<li class="toctree-l2"><a class="reference internal" href="eth_udp_echo.html">8.2. UDP - LwIP UDP echo</a></li>
<li class="toctree-l2"><a class="reference internal" href="eth_tcp_echo.html">8.3. TCP - LwIP TCP echo</a></li>
<li class="toctree-l2"><a class="reference internal" href="eth_http_server.html">8.4. HTTP - LwIP HTTP server</a></li>
<li class="toctree-l2"><a class="reference internal" href="eth_lwip_iperf.html">8.5. IPERF - LwIP iperf</a></li>
</ul>
</li>
</ul>
@ -192,9 +193,9 @@
<li><a href="../../../index.html" class="icon icon-home"></a> &raquo;</li>
<li><a href="index.html"><span class="section-number">7. </span>EMAC 以太网应用</a> &raquo;</li>
<li><a href="index.html"><span class="section-number">8. </span>EMAC 以太网应用</a> &raquo;</li>
<li><span class="section-number">7.1. </span>emac basic 发送 ARP 数据包</li>
<li><span class="section-number">8.1. </span>emac basic 发送 ARP 数据包</li>
<li class="wy-breadcrumbs-aside">
@ -214,11 +215,11 @@
<div itemprop="articleBody">
<div class="section" id="emac-basic-arp">
<h1><span class="section-number">7.1. </span>emac basic 发送 ARP 数据包<a class="headerlink" href="#emac-basic-arp" title="永久链接至标题"></a></h1>
<h1><span class="section-number">8.1. </span>emac basic 发送 ARP 数据包<a class="headerlink" href="#emac-basic-arp" title="永久链接至标题"></a></h1>
<p>本 demo 基于 BL706 emac 实现通过以太网发送一个 ARP 裸数据包的例程,通过本例程可以确认 emac 以及 PHY 芯片的配置是否正确。</p>
<p>以太网 PHY 芯片这里使用的是 PHY8720</p>
<div class="section" id="id1">
<h2><span class="section-number">7.1.1. </span>硬件准备<a class="headerlink" href="#id1" title="永久链接至标题"></a></h2>
<h2><span class="section-number">8.1.1. </span>硬件准备<a class="headerlink" href="#id1" title="永久链接至标题"></a></h2>
<ul class="simple">
<li><p>一块 BL706 ETH 开发板</p></li>
<li><p>一块 PHY 8720 模块</p></li>
@ -227,7 +228,7 @@
</ul>
</div>
<div class="section" id="id2">
<h2><span class="section-number">7.1.2. </span>硬件连接<a class="headerlink" href="#id2" title="永久链接至标题"></a></h2>
<h2><span class="section-number">8.1.2. </span>硬件连接<a class="headerlink" href="#id2" title="永久链接至标题"></a></h2>
<p>本 demo 基于 BL706 ETH 开发板,将对应的功能引脚连接到 PHY8720 模块上,连接方式如下:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span> <span class="n">GPIO</span> <span class="n">function</span> <span class="n">GPIO</span> <span class="n">pin</span>
<span class="o">----------------------------------</span>
@ -246,7 +247,7 @@
<p>接下来需要将 PHY8720 模块的 RJ-45 接口通过标准 5/6 类网线连接到与测试 PC 在同一局域网中的路由器或者交换机上。</p>
</div>
<div class="section" id="arp">
<h2><span class="section-number">7.1.3. </span>构造 ARP 数据包<a class="headerlink" href="#arp" title="永久链接至标题"></a></h2>
<h2><span class="section-number">8.1.3. </span>构造 ARP 数据包<a class="headerlink" href="#arp" title="永久链接至标题"></a></h2>
<p>通过查阅 ARP 协议可以知道 ARP 包的数据报文组织结构如下:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="o">|</span><span class="n">dst</span> <span class="n">mac</span><span class="o">|</span><span class="n">src</span> <span class="n">mac</span><span class="o">|</span><span class="n">frame</span> <span class="nb">type</span><span class="o">|</span><span class="n">Hardware</span> <span class="nb">type</span><span class="o">|</span><span class="n">Protocol</span> <span class="nb">type</span><span class="o">|</span><span class="n">Hardware</span> <span class="n">size</span><span class="o">|</span><span class="n">Protocol</span> <span class="n">size</span><span class="o">|</span><span class="n">Opcode</span><span class="o">|</span><span class="n">src</span> <span class="n">mac</span><span class="o">|</span><span class="n">src</span> <span class="n">ip</span><span class="o">|</span><span class="n">dst</span> <span class="n">mac</span><span class="o">|</span><span class="n">dst</span> <span class="n">ip</span><span class="o">|</span>
<span class="o">|</span><span class="mi">6</span> <span class="n">Byte</span> <span class="o">|</span><span class="mi">6</span> <span class="n">Byte</span> <span class="o">|</span><span class="mi">2</span> <span class="n">Byte</span> <span class="o">|</span> <span class="mi">2</span> <span class="n">Byte</span> <span class="o">|</span> <span class="mi">2</span> <span class="n">Byte</span> <span class="o">|</span> <span class="mi">1</span> <span class="n">Byte</span> <span class="o">|</span> <span class="mi">1</span> <span class="n">Byte</span> <span class="o">|</span><span class="mi">2</span> <span class="n">Byte</span><span class="o">|</span><span class="mi">6</span> <span class="n">Byte</span> <span class="o">|</span><span class="mi">4</span> <span class="n">Byte</span><span class="o">|</span><span class="mi">6</span> <span class="n">Byte</span> <span class="o">|</span><span class="mi">4</span> <span class="n">Byte</span><span class="o">|</span>
@ -278,7 +279,7 @@
</td></tr></table></div>
</div>
<div class="section" id="id3">
<h2><span class="section-number">7.1.4. </span>编译和下载<a class="headerlink" href="#id3" title="永久链接至标题"></a></h2>
<h2><span class="section-number">8.1.4. </span>编译和下载<a class="headerlink" href="#id3" title="永久链接至标题"></a></h2>
<ul class="simple">
<li><p><strong>命令行编译</strong></p></li>
</ul>
@ -294,7 +295,7 @@ $ make <span class="nv">APP</span><span class="o">=</span>emac_basic
</ul>
</div>
<div class="section" id="id4">
<h2><span class="section-number">7.1.5. </span>实验现象<a class="headerlink" href="#id4" title="永久链接至标题"></a></h2>
<h2><span class="section-number">8.1.5. </span>实验现象<a class="headerlink" href="#id4" title="永久链接至标题"></a></h2>
<p>串口 log 信息:</p>
<div class="figure align-default">
<img alt="" src="../../../_images/emac_basic_arp_2.png" />
@ -312,8 +313,8 @@ $ make <span class="nv">APP</span><span class="o">=</span>emac_basic
</div>
<footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="eth_udp_echo.html" class="btn btn-neutral float-right" title="7.2. UDP echo" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
<a href="index.html" class="btn btn-neutral float-left" title="7. EMAC 以太网应用" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
<a href="eth_udp_echo.html" class="btn btn-neutral float-right" title="8.2. UDP echo" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
<a href="index.html" class="btn btn-neutral float-left" title="8. EMAC 以太网应用" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
</div>
<hr/>

View file

@ -7,7 +7,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>7.4. http server 网页服务器 &mdash; BL_MCU_SDK 开发指南 0.3 文档</title>
<title>8.4. http server 网页服务器 &mdash; BL_MCU_SDK 开发指南 0.3 文档</title>
@ -39,8 +39,8 @@
<link rel="index" title="索引" href="../../../genindex.html" />
<link rel="search" title="搜索" href="../../../search.html" />
<link rel="next" title="7.5. lwip iperf 网络性能测试" href="eth_lwip_iperf.html" />
<link rel="prev" title="7.3. TCP echo" href="eth_tcp_echo.html" />
<link rel="next" title="8.5. lwip iperf 网络性能测试" href="eth_lwip_iperf.html" />
<link rel="prev" title="8.3. TCP echo" href="eth_tcp_echo.html" />
</head>
<body class="wy-body-for-nav">
@ -129,19 +129,20 @@
<li class="toctree-l1"><a class="reference internal" href="../lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="index.html">7. EMAC 以太网应用</a><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="eth_basic.html">7.1. ARP - 发送 ARP 裸包</a></li>
<li class="toctree-l2"><a class="reference internal" href="eth_udp_echo.html">7.2. UDP - LwIP UDP echo</a></li>
<li class="toctree-l2"><a class="reference internal" href="eth_tcp_echo.html">7.3. TCP - LwIP TCP echo</a></li>
<li class="toctree-l2 current"><a class="current reference internal" href="#">7.4. HTTP - LwIP HTTP server</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#id1">7.4.1. 硬件准备</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id2">7.4.2. 硬件连接</a></li>
<li class="toctree-l3"><a class="reference internal" href="#web-lwip">7.4.3. 生成 Web 网页及 LwIP 协议栈配置</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id3">7.4.4. 编译和下载</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id4">7.4.5. 实验现象</a></li>
<li class="toctree-l1"><a class="reference internal" href="../ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="index.html">8. EMAC 以太网应用</a><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="eth_basic.html">8.1. ARP - 发送 ARP 裸包</a></li>
<li class="toctree-l2"><a class="reference internal" href="eth_udp_echo.html">8.2. UDP - LwIP UDP echo</a></li>
<li class="toctree-l2"><a class="reference internal" href="eth_tcp_echo.html">8.3. TCP - LwIP TCP echo</a></li>
<li class="toctree-l2 current"><a class="current reference internal" href="#">8.4. HTTP - LwIP HTTP server</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#id1">8.4.1. 硬件准备</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id2">8.4.2. 硬件连接</a></li>
<li class="toctree-l3"><a class="reference internal" href="#web-lwip">8.4.3. 生成 Web 网页及 LwIP 协议栈配置</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id3">8.4.4. 编译和下载</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id4">8.4.5. 实验现象</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="eth_lwip_iperf.html">7.5. IPERF - LwIP iperf</a></li>
<li class="toctree-l2"><a class="reference internal" href="eth_lwip_iperf.html">8.5. IPERF - LwIP iperf</a></li>
</ul>
</li>
</ul>
@ -192,9 +193,9 @@
<li><a href="../../../index.html" class="icon icon-home"></a> &raquo;</li>
<li><a href="index.html"><span class="section-number">7. </span>EMAC 以太网应用</a> &raquo;</li>
<li><a href="index.html"><span class="section-number">8. </span>EMAC 以太网应用</a> &raquo;</li>
<li><span class="section-number">7.4. </span>http server 网页服务器</li>
<li><span class="section-number">8.4. </span>http server 网页服务器</li>
<li class="wy-breadcrumbs-aside">
@ -214,11 +215,11 @@
<div itemprop="articleBody">
<div class="section" id="http-server">
<h1><span class="section-number">7.4. </span>http server 网页服务器<a class="headerlink" href="#http-server" title="永久链接至标题"></a></h1>
<h1><span class="section-number">8.4. </span>http server 网页服务器<a class="headerlink" href="#http-server" title="永久链接至标题"></a></h1>
<p>HTTP 协议是 Hypertext Transfer Protocol超文本传输协议的缩写是一种用于分布式、协作式和超媒体信息系统的应用层协议。HTTP 是万维网的数据通信的基础。</p>
<p>本 demo 主要是在 BL706 上基于 LwIP 协议栈,实现一个 HTTP 服务器,在 BL706 上部署了一个简单的网页,然后我们可以通过浏览器去访问 BL706 上的网页。</p>
<div class="section" id="id1">
<h2><span class="section-number">7.4.1. </span>硬件准备<a class="headerlink" href="#id1" title="永久链接至标题"></a></h2>
<h2><span class="section-number">8.4.1. </span>硬件准备<a class="headerlink" href="#id1" title="永久链接至标题"></a></h2>
<ul class="simple">
<li><p>一块 BL706 ETH 开发板</p></li>
<li><p>一块 PHY 8720 模块</p></li>
@ -227,7 +228,7 @@
</ul>
</div>
<div class="section" id="id2">
<h2><span class="section-number">7.4.2. </span>硬件连接<a class="headerlink" href="#id2" title="永久链接至标题"></a></h2>
<h2><span class="section-number">8.4.2. </span>硬件连接<a class="headerlink" href="#id2" title="永久链接至标题"></a></h2>
<p>本 demo 基于 BL706 ETH 开发板,将对应的功能引脚连接到 PHY8720 模块上,连接方式如下:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span> <span class="n">GPIO</span> <span class="n">function</span> <span class="n">GPIO</span> <span class="n">pin</span>
<span class="o">----------------------------------</span>
@ -246,7 +247,7 @@
<p>接下来需要将 PHY8720 模块的 RJ-45 接口通过标准 5/6 类网线连接到与测试 PC 在同一局域网中的路由器或者交换机上。</p>
</div>
<div class="section" id="web-lwip">
<h2><span class="section-number">7.4.3. </span>生成 Web 网页及 LwIP 协议栈配置<a class="headerlink" href="#web-lwip" title="永久链接至标题"></a></h2>
<h2><span class="section-number">8.4.3. </span>生成 Web 网页及 LwIP 协议栈配置<a class="headerlink" href="#web-lwip" title="永久链接至标题"></a></h2>
<p>Web demo 的源码存放在 <code class="docutils literal notranslate"><span class="pre">examples\emac\lwip_http_server\web_demo\pages</span></code> 目录下,网页设计好后,可以使用 <code class="docutils literal notranslate"><span class="pre">web_demo</span></code> 目录下的 <code class="docutils literal notranslate"><span class="pre">makefsdata.exe</span></code> 工具将网页翻译成 LwIP 协议栈能够解析的文件格式,
在该目录下还有一个 <code class="docutils literal notranslate"><span class="pre">makefsdata.bat</span></code> 脚本,该脚本执行后会将 <code class="docutils literal notranslate"><span class="pre">pages</span></code> 目录下的 web 网页生成一个 <code class="docutils literal notranslate"><span class="pre">fsdata_custom.c</span></code> 文件;
将输出的 <code class="docutils literal notranslate"><span class="pre">fsdata_custom.c</span></code> 文件,放到 <code class="docutils literal notranslate"><span class="pre">components\lwip\src\apps\http</span></code> 目录下,然后在 <code class="docutils literal notranslate"><span class="pre">components/lwip/lwipopts.h</span></code> 文件中,使能 <code class="docutils literal notranslate"><span class="pre">HTTPD_USE_CUSTOM_FSDATA</span></code> 宏定义。</p>
@ -262,7 +263,7 @@
</td></tr></table></div>
</div>
<div class="section" id="id3">
<h2><span class="section-number">7.4.4. </span>编译和下载<a class="headerlink" href="#id3" title="永久链接至标题"></a></h2>
<h2><span class="section-number">8.4.4. </span>编译和下载<a class="headerlink" href="#id3" title="永久链接至标题"></a></h2>
<ul class="simple">
<li><p><strong>命令行编译</strong></p></li>
</ul>
@ -278,7 +279,7 @@ $ make <span class="nv">APP</span><span class="o">=</span>lwip_http_server
</ul>
</div>
<div class="section" id="id4">
<h2><span class="section-number">7.4.5. </span>实验现象<a class="headerlink" href="#id4" title="永久链接至标题"></a></h2>
<h2><span class="section-number">8.4.5. </span>实验现象<a class="headerlink" href="#id4" title="永久链接至标题"></a></h2>
<p>编译完成后,烧写到芯片正确运行后,打开浏览器访问 BL706 相应的 IP 地址,即可看到一个测试网页。</p>
<p>串口 log 信息:</p>
<div class="figure align-default">
@ -300,8 +301,8 @@ $ make <span class="nv">APP</span><span class="o">=</span>lwip_http_server
</div>
<footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="eth_lwip_iperf.html" class="btn btn-neutral float-right" title="7.5. lwip iperf 网络性能测试" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
<a href="eth_tcp_echo.html" class="btn btn-neutral float-left" title="7.3. TCP echo" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
<a href="eth_lwip_iperf.html" class="btn btn-neutral float-right" title="8.5. lwip iperf 网络性能测试" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
<a href="eth_tcp_echo.html" class="btn btn-neutral float-left" title="8.3. TCP echo" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
</div>
<hr/>

View file

@ -7,7 +7,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>7.5. lwip iperf 网络性能测试 &mdash; BL_MCU_SDK 开发指南 0.3 文档</title>
<title>8.5. lwip iperf 网络性能测试 &mdash; BL_MCU_SDK 开发指南 0.3 文档</title>
@ -39,7 +39,7 @@
<link rel="index" title="索引" href="../../../genindex.html" />
<link rel="search" title="搜索" href="../../../search.html" />
<link rel="prev" title="7.4. http server 网页服务器" href="eth_http_server.html" />
<link rel="prev" title="8.4. http server 网页服务器" href="eth_http_server.html" />
</head>
<body class="wy-body-for-nav">
@ -128,20 +128,21 @@
<li class="toctree-l1"><a class="reference internal" href="../lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="index.html">7. EMAC 以太网应用</a><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="eth_basic.html">7.1. ARP - 发送 ARP 裸包</a></li>
<li class="toctree-l2"><a class="reference internal" href="eth_udp_echo.html">7.2. UDP - LwIP UDP echo</a></li>
<li class="toctree-l2"><a class="reference internal" href="eth_tcp_echo.html">7.3. TCP - LwIP TCP echo</a></li>
<li class="toctree-l2"><a class="reference internal" href="eth_http_server.html">7.4. HTTP - LwIP HTTP server</a></li>
<li class="toctree-l2 current"><a class="current reference internal" href="#">7.5. IPERF - LwIP iperf</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#id1">7.5.1. 硬件准备</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id2">7.5.2. 硬件连接</a></li>
<li class="toctree-l3"><a class="reference internal" href="#emac-lwip">7.5.3. EMAC 和 LwIP 协议栈的配置</a></li>
<li class="toctree-l3"><a class="reference internal" href="#iperf">7.5.4. iPerf 测试本地端口设置</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id3">7.5.5. 编译和下载</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id4">7.5.6. 实验现象</a></li>
<li class="toctree-l3"><a class="reference internal" href="#udp">7.5.7. UDP 性能测试</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id5">7.5.8. IPerf 测试结果</a></li>
<li class="toctree-l1"><a class="reference internal" href="../ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="index.html">8. EMAC 以太网应用</a><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="eth_basic.html">8.1. ARP - 发送 ARP 裸包</a></li>
<li class="toctree-l2"><a class="reference internal" href="eth_udp_echo.html">8.2. UDP - LwIP UDP echo</a></li>
<li class="toctree-l2"><a class="reference internal" href="eth_tcp_echo.html">8.3. TCP - LwIP TCP echo</a></li>
<li class="toctree-l2"><a class="reference internal" href="eth_http_server.html">8.4. HTTP - LwIP HTTP server</a></li>
<li class="toctree-l2 current"><a class="current reference internal" href="#">8.5. IPERF - LwIP iperf</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#id1">8.5.1. 硬件准备</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id2">8.5.2. 硬件连接</a></li>
<li class="toctree-l3"><a class="reference internal" href="#emac-lwip">8.5.3. EMAC 和 LwIP 协议栈的配置</a></li>
<li class="toctree-l3"><a class="reference internal" href="#iperf">8.5.4. iPerf 测试本地端口设置</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id3">8.5.5. 编译和下载</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id4">8.5.6. 实验现象</a></li>
<li class="toctree-l3"><a class="reference internal" href="#udp">8.5.7. UDP 性能测试</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id5">8.5.8. IPerf 测试结果</a></li>
</ul>
</li>
</ul>
@ -194,9 +195,9 @@
<li><a href="../../../index.html" class="icon icon-home"></a> &raquo;</li>
<li><a href="index.html"><span class="section-number">7. </span>EMAC 以太网应用</a> &raquo;</li>
<li><a href="index.html"><span class="section-number">8. </span>EMAC 以太网应用</a> &raquo;</li>
<li><span class="section-number">7.5. </span>lwip iperf 网络性能测试</li>
<li><span class="section-number">8.5. </span>lwip iperf 网络性能测试</li>
<li class="wy-breadcrumbs-aside">
@ -216,13 +217,13 @@
<div itemprop="articleBody">
<div class="section" id="lwip-iperf">
<h1><span class="section-number">7.5. </span>lwip iperf 网络性能测试<a class="headerlink" href="#lwip-iperf" title="永久链接至标题"></a></h1>
<h1><span class="section-number">8.5. </span>lwip iperf 网络性能测试<a class="headerlink" href="#lwip-iperf" title="永久链接至标题"></a></h1>
<p>iPerf 是一个跨平台的网络性能测试工具iPerf 可以测试 TCP 和 UDP 网络带宽性能和质量,但是 iPerf 是一个命令行形式的,对于使用者来说还不够直观,
这里我们使用 iPerf 的一个图形化版本测试程序 —— JPerfJPerf 简化了复杂的测试命令,并且测试结果可以图形化的实时显示出来。</p>
<p>JPerf 软件直接从互联网上搜索一个下载即可,本文主要介绍如何在 BL706 上实现一个 iPerf 测试线程BL706 作为服务端实时监听客户端PC Jperf 上位机)的连接和发送的数据。</p>
<p>这里主要测试 BL706 TCP 的最大接收速度,其他测试同理。</p>
<div class="section" id="id1">
<h2><span class="section-number">7.5.1. </span>硬件准备<a class="headerlink" href="#id1" title="永久链接至标题"></a></h2>
<h2><span class="section-number">8.5.1. </span>硬件准备<a class="headerlink" href="#id1" title="永久链接至标题"></a></h2>
<ul class="simple">
<li><p>一块 BL706 ETH 开发板</p></li>
<li><p>一块 PHY 8720 模块</p></li>
@ -231,7 +232,7 @@
</ul>
</div>
<div class="section" id="id2">
<h2><span class="section-number">7.5.2. </span>硬件连接<a class="headerlink" href="#id2" title="永久链接至标题"></a></h2>
<h2><span class="section-number">8.5.2. </span>硬件连接<a class="headerlink" href="#id2" title="永久链接至标题"></a></h2>
<p>本 demo 基于 BL706 ETH 开发板,将对应的功能引脚连接到 PHY8720 模块上,连接方式如下:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span> <span class="n">GPIO</span> <span class="n">function</span> <span class="n">GPIO</span> <span class="n">pin</span>
<span class="o">----------------------------------</span>
@ -250,7 +251,7 @@
<p>接下来需要将 PHY8720 模块的 RJ-45 接口通过标准 5/6 类网线连接到与测试 PC 在同一局域网中的路由器或者交换机上。</p>
</div>
<div class="section" id="emac-lwip">
<h2><span class="section-number">7.5.3. </span>EMAC 和 LwIP 协议栈的配置<a class="headerlink" href="#emac-lwip" title="永久链接至标题"></a></h2>
<h2><span class="section-number">8.5.3. </span>EMAC 和 LwIP 协议栈的配置<a class="headerlink" href="#emac-lwip" title="永久链接至标题"></a></h2>
<p>LwIP 协议栈的相关配置文件在 <code class="docutils literal notranslate"><span class="pre">components/lwip/lwipopts.h</span></code> 中,详细配置请阅读代码源文件</p>
<p>要测试 TCP 性能,那么必须要在改文件中使能 <code class="docutils literal notranslate"><span class="pre">LWIP_TCP</span></code> 宏定义,否则将会使用 LwIP 默认的配置,同时为了获得更好的 TCP 测试性能,还需要加大 <code class="docutils literal notranslate"><span class="pre">TCP_SND_BUF</span></code><code class="docutils literal notranslate"><span class="pre">TCP_WND</span></code> 以及 EMAC RX buf 深度等参数。
本 demo 测试时修改参数如下:</p>
@ -275,7 +276,7 @@
</td></tr></table></div>
</div>
<div class="section" id="iperf">
<h2><span class="section-number">7.5.4. </span>iPerf 测试本地端口设置<a class="headerlink" href="#iperf" title="永久链接至标题"></a></h2>
<h2><span class="section-number">8.5.4. </span>iPerf 测试本地端口设置<a class="headerlink" href="#iperf" title="永久链接至标题"></a></h2>
<p><code class="docutils literal notranslate"><span class="pre">examples\emac\lwip_iperf\iperf_server.h</span></code> 文件中,通过修改宏定义即可修改测试端口号</p>
<p>注:由于当前测试例程 local ip 地址采用静态 IP 配置进行的测试,如需修改可在 main.c 中进行相应的修改,也可直接使能 LWIP 的 DHCP 功能自动获取 IP 配置。</p>
<div class="highlight-c notranslate"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal">1</span></pre></div></td><td class="code"><div class="highlight"><pre><span></span><span class="cp">#define IPERF_SERVER_PORT (3365)</span>
@ -283,7 +284,7 @@
</td></tr></table></div>
</div>
<div class="section" id="id3">
<h2><span class="section-number">7.5.5. </span>编译和下载<a class="headerlink" href="#id3" title="永久链接至标题"></a></h2>
<h2><span class="section-number">8.5.5. </span>编译和下载<a class="headerlink" href="#id3" title="永久链接至标题"></a></h2>
<ul class="simple">
<li><p><strong>命令行编译</strong></p></li>
</ul>
@ -299,7 +300,7 @@ $ make <span class="nv">APP</span><span class="o">=</span>lwip_iperf
</ul>
</div>
<div class="section" id="id4">
<h2><span class="section-number">7.5.6. </span>实验现象<a class="headerlink" href="#id4" title="永久链接至标题"></a></h2>
<h2><span class="section-number">8.5.6. </span>实验现象<a class="headerlink" href="#id4" title="永久链接至标题"></a></h2>
<p>编译完成后,烧写到芯片正确运行后,可以通过配置的测试端口访问芯片。
打开 JPerf 软件开始进行 TCP 性能测试,具体配置如下图,设置好后点击 <code class="docutils literal notranslate"><span class="pre">Run</span> <span class="pre">IPerf</span></code> 即可。</p>
<p>串口 log 信息:</p>
@ -316,7 +317,7 @@ $ make <span class="nv">APP</span><span class="o">=</span>lwip_iperf
</div>
</div>
<div class="section" id="udp">
<h2><span class="section-number">7.5.7. </span>UDP 性能测试<a class="headerlink" href="#udp" title="永久链接至标题"></a></h2>
<h2><span class="section-number">8.5.7. </span>UDP 性能测试<a class="headerlink" href="#udp" title="永久链接至标题"></a></h2>
<p>UDP 性能测试,需要使用 <code class="docutils literal notranslate"><span class="pre">bl_mcu_sdk/examples/emac/lwip_udp</span></code> 的例程,使用例程的默认代码即可测试 UDP 收发全双工的性能,编译测试请参考 <a class="reference internal" href="eth_udp_echo.html#eth-udp-echo"><span class="std std-ref">UDP echo</span></a> 部分教程;</p>
<p>将代码正确编译下载到芯片后,即可通过 JPerf 软件测试 UDP 性能,具体测试配置及性能如下图,设置好后点击 <code class="docutils literal notranslate"><span class="pre">Run</span> <span class="pre">IPerf</span></code> 即可。</p>
<p>串口 log 信息:</p>
@ -337,7 +338,7 @@ $ make <span class="nv">APP</span><span class="o">=</span>lwip_iperf
</div>
</div>
<div class="section" id="id5">
<h2><span class="section-number">7.5.8. </span>IPerf 测试结果<a class="headerlink" href="#id5" title="永久链接至标题"></a></h2>
<h2><span class="section-number">8.5.8. </span>IPerf 测试结果<a class="headerlink" href="#id5" title="永久链接至标题"></a></h2>
<p>下表是在实验环境下测试的 BL706 运行 FreeRTOS + Lwip 网络协议栈的以太网性能</p>
<table class="colwidths-given docutils align-default">
<colgroup>
@ -475,7 +476,7 @@ $ make <span class="nv">APP</span><span class="o">=</span>lwip_iperf
</div>
<footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="eth_http_server.html" class="btn btn-neutral float-left" title="7.4. http server 网页服务器" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
<a href="eth_http_server.html" class="btn btn-neutral float-left" title="8.4. http server 网页服务器" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
</div>
<hr/>

View file

@ -7,7 +7,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>7.3. TCP echo &mdash; BL_MCU_SDK 开发指南 0.3 文档</title>
<title>8.3. TCP echo &mdash; BL_MCU_SDK 开发指南 0.3 文档</title>
@ -39,8 +39,8 @@
<link rel="index" title="索引" href="../../../genindex.html" />
<link rel="search" title="搜索" href="../../../search.html" />
<link rel="next" title="7.4. http server 网页服务器" href="eth_http_server.html" />
<link rel="prev" title="7.2. UDP echo" href="eth_udp_echo.html" />
<link rel="next" title="8.4. http server 网页服务器" href="eth_http_server.html" />
<link rel="prev" title="8.2. UDP echo" href="eth_udp_echo.html" />
</head>
<body class="wy-body-for-nav">
@ -129,20 +129,21 @@
<li class="toctree-l1"><a class="reference internal" href="../lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="index.html">7. EMAC 以太网应用</a><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="eth_basic.html">7.1. ARP - 发送 ARP 裸包</a></li>
<li class="toctree-l2"><a class="reference internal" href="eth_udp_echo.html">7.2. UDP - LwIP UDP echo</a></li>
<li class="toctree-l2 current"><a class="current reference internal" href="#">7.3. TCP - LwIP TCP echo</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#id1">7.3.1. 硬件准备</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id2">7.3.2. 硬件连接</a></li>
<li class="toctree-l3"><a class="reference internal" href="#lwip">7.3.3. LwIP 协议栈的配置</a></li>
<li class="toctree-l3"><a class="reference internal" href="#tcp">7.3.4. TCP 测试本地端口设置</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id3">7.3.5. 编译和下载</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id4">7.3.6. 实验现象</a></li>
<li class="toctree-l1"><a class="reference internal" href="../ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="index.html">8. EMAC 以太网应用</a><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="eth_basic.html">8.1. ARP - 发送 ARP 裸包</a></li>
<li class="toctree-l2"><a class="reference internal" href="eth_udp_echo.html">8.2. UDP - LwIP UDP echo</a></li>
<li class="toctree-l2 current"><a class="current reference internal" href="#">8.3. TCP - LwIP TCP echo</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#id1">8.3.1. 硬件准备</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id2">8.3.2. 硬件连接</a></li>
<li class="toctree-l3"><a class="reference internal" href="#lwip">8.3.3. LwIP 协议栈的配置</a></li>
<li class="toctree-l3"><a class="reference internal" href="#tcp">8.3.4. TCP 测试本地端口设置</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id3">8.3.5. 编译和下载</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id4">8.3.6. 实验现象</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="eth_http_server.html">7.4. HTTP - LwIP HTTP server</a></li>
<li class="toctree-l2"><a class="reference internal" href="eth_lwip_iperf.html">7.5. IPERF - LwIP iperf</a></li>
<li class="toctree-l2"><a class="reference internal" href="eth_http_server.html">8.4. HTTP - LwIP HTTP server</a></li>
<li class="toctree-l2"><a class="reference internal" href="eth_lwip_iperf.html">8.5. IPERF - LwIP iperf</a></li>
</ul>
</li>
</ul>
@ -193,9 +194,9 @@
<li><a href="../../../index.html" class="icon icon-home"></a> &raquo;</li>
<li><a href="index.html"><span class="section-number">7. </span>EMAC 以太网应用</a> &raquo;</li>
<li><a href="index.html"><span class="section-number">8. </span>EMAC 以太网应用</a> &raquo;</li>
<li><span class="section-number">7.3. </span>TCP echo</li>
<li><span class="section-number">8.3. </span>TCP echo</li>
<li class="wy-breadcrumbs-aside">
@ -215,11 +216,11 @@
<div itemprop="articleBody">
<div class="section" id="tcp-echo">
<h1><span class="section-number">7.3. </span>TCP echo<a class="headerlink" href="#tcp-echo" title="永久链接至标题"></a></h1>
<h1><span class="section-number">8.3. </span>TCP echo<a class="headerlink" href="#tcp-echo" title="永久链接至标题"></a></h1>
<p>本 demo 基于 BL706 ETH 开发板,并基于 LwIP 轻量级网络协议栈,实现了一个 TCP 协议通信的例程。</p>
<p>以太网 PHY 芯片这里使用的是 PHY8720</p>
<div class="section" id="id1">
<h2><span class="section-number">7.3.1. </span>硬件准备<a class="headerlink" href="#id1" title="永久链接至标题"></a></h2>
<h2><span class="section-number">8.3.1. </span>硬件准备<a class="headerlink" href="#id1" title="永久链接至标题"></a></h2>
<ul class="simple">
<li><p>一块 BL706 ETH 开发板</p></li>
<li><p>一块 PHY 8720 模块</p></li>
@ -228,7 +229,7 @@
</ul>
</div>
<div class="section" id="id2">
<h2><span class="section-number">7.3.2. </span>硬件连接<a class="headerlink" href="#id2" title="永久链接至标题"></a></h2>
<h2><span class="section-number">8.3.2. </span>硬件连接<a class="headerlink" href="#id2" title="永久链接至标题"></a></h2>
<p>本 demo 基于 BL706 ETH 开发板,将对应的功能引脚连接到 PHY8720 模块上,连接方式如下:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span> <span class="n">GPIO</span> <span class="n">function</span> <span class="n">GPIO</span> <span class="n">pin</span>
<span class="o">----------------------------------</span>
@ -247,7 +248,7 @@
<p>接下来需要将 PHY8720 模块的 RJ-45 接口通过标准 5/6 类网线连接到与测试 PC 在同一局域网中的路由器或者交换机上。</p>
</div>
<div class="section" id="lwip">
<h2><span class="section-number">7.3.3. </span>LwIP 协议栈的配置<a class="headerlink" href="#lwip" title="永久链接至标题"></a></h2>
<h2><span class="section-number">8.3.3. </span>LwIP 协议栈的配置<a class="headerlink" href="#lwip" title="永久链接至标题"></a></h2>
<p>LwIP 协议栈的相关配置文件在 <code class="docutils literal notranslate"><span class="pre">components/lwip/lwipopts.h</span></code> 中,详细配置请阅读代码源文件</p>
<p>如果要使用 TCP 相关功能,需要在文件中使能 LWIP_TCP 宏定义,否则将会使用 LwIP 默认的配置</p>
<div class="highlight-c notranslate"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal">1</span>
@ -259,7 +260,7 @@
</td></tr></table></div>
</div>
<div class="section" id="tcp">
<h2><span class="section-number">7.3.4. </span>TCP 测试本地端口设置<a class="headerlink" href="#tcp" title="永久链接至标题"></a></h2>
<h2><span class="section-number">8.3.4. </span>TCP 测试本地端口设置<a class="headerlink" href="#tcp" title="永久链接至标题"></a></h2>
<p><code class="docutils literal notranslate"><span class="pre">examples\emac\lwip_tcp\tcp_server.h</span></code> 文件中,通过修改宏定义即可修改测试端口号</p>
<p>注:由于当前测试例程使用静态 IP 配置进行的测试,如需修改可在 main.c 中进行相应的修改,也可直接使能 LWIP 的 DHCP 功能自动获取 IP 配置。</p>
<div class="highlight-c notranslate"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal">1</span></pre></div></td><td class="code"><div class="highlight"><pre><span></span><span class="cp">#define TCP_SERVER_TEST_PORT (3365)</span>
@ -267,7 +268,7 @@
</td></tr></table></div>
</div>
<div class="section" id="id3">
<h2><span class="section-number">7.3.5. </span>编译和下载<a class="headerlink" href="#id3" title="永久链接至标题"></a></h2>
<h2><span class="section-number">8.3.5. </span>编译和下载<a class="headerlink" href="#id3" title="永久链接至标题"></a></h2>
<ul class="simple">
<li><p><strong>命令行编译</strong></p></li>
</ul>
@ -283,7 +284,7 @@ $ make <span class="nv">APP</span><span class="o">=</span>lwip_tcp
</ul>
</div>
<div class="section" id="id4">
<h2><span class="section-number">7.3.6. </span>实验现象<a class="headerlink" href="#id4" title="永久链接至标题"></a></h2>
<h2><span class="section-number">8.3.6. </span>实验现象<a class="headerlink" href="#id4" title="永久链接至标题"></a></h2>
<p>编译完成后,烧写到芯片正确运行后,可以通过配置的测试端口访问芯片。</p>
<p>串口 log 信息:</p>
<div class="figure align-default">
@ -309,8 +310,8 @@ $ make <span class="nv">APP</span><span class="o">=</span>lwip_tcp
</div>
<footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="eth_http_server.html" class="btn btn-neutral float-right" title="7.4. http server 网页服务器" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
<a href="eth_udp_echo.html" class="btn btn-neutral float-left" title="7.2. UDP echo" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
<a href="eth_http_server.html" class="btn btn-neutral float-right" title="8.4. http server 网页服务器" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
<a href="eth_udp_echo.html" class="btn btn-neutral float-left" title="8.2. UDP echo" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
</div>
<hr/>

View file

@ -7,7 +7,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>7.2. UDP echo &mdash; BL_MCU_SDK 开发指南 0.3 文档</title>
<title>8.2. UDP echo &mdash; BL_MCU_SDK 开发指南 0.3 文档</title>
@ -39,8 +39,8 @@
<link rel="index" title="索引" href="../../../genindex.html" />
<link rel="search" title="搜索" href="../../../search.html" />
<link rel="next" title="7.3. TCP echo" href="eth_tcp_echo.html" />
<link rel="prev" title="7.1. emac basic 发送 ARP 数据包" href="eth_basic.html" />
<link rel="next" title="8.3. TCP echo" href="eth_tcp_echo.html" />
<link rel="prev" title="8.1. emac basic 发送 ARP 数据包" href="eth_basic.html" />
</head>
<body class="wy-body-for-nav">
@ -129,20 +129,21 @@
<li class="toctree-l1"><a class="reference internal" href="../lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="index.html">7. EMAC 以太网应用</a><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="eth_basic.html">7.1. ARP - 发送 ARP 裸包</a></li>
<li class="toctree-l2 current"><a class="current reference internal" href="#">7.2. UDP - LwIP UDP echo</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#id1">7.2.1. 硬件准备</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id2">7.2.2. 硬件连接</a></li>
<li class="toctree-l3"><a class="reference internal" href="#lwip">7.2.3. LwIP 协议栈的配置</a></li>
<li class="toctree-l3"><a class="reference internal" href="#udp-ip">7.2.4. UDP 测试目标 IP 及端口设置</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id3">7.2.5. 编译和下载</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id4">7.2.6. 实验现象</a></li>
<li class="toctree-l1"><a class="reference internal" href="../ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="index.html">8. EMAC 以太网应用</a><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="eth_basic.html">8.1. ARP - 发送 ARP 裸包</a></li>
<li class="toctree-l2 current"><a class="current reference internal" href="#">8.2. UDP - LwIP UDP echo</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#id1">8.2.1. 硬件准备</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id2">8.2.2. 硬件连接</a></li>
<li class="toctree-l3"><a class="reference internal" href="#lwip">8.2.3. LwIP 协议栈的配置</a></li>
<li class="toctree-l3"><a class="reference internal" href="#udp-ip">8.2.4. UDP 测试目标 IP 及端口设置</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id3">8.2.5. 编译和下载</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id4">8.2.6. 实验现象</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="eth_tcp_echo.html">7.3. TCP - LwIP TCP echo</a></li>
<li class="toctree-l2"><a class="reference internal" href="eth_http_server.html">7.4. HTTP - LwIP HTTP server</a></li>
<li class="toctree-l2"><a class="reference internal" href="eth_lwip_iperf.html">7.5. IPERF - LwIP iperf</a></li>
<li class="toctree-l2"><a class="reference internal" href="eth_tcp_echo.html">8.3. TCP - LwIP TCP echo</a></li>
<li class="toctree-l2"><a class="reference internal" href="eth_http_server.html">8.4. HTTP - LwIP HTTP server</a></li>
<li class="toctree-l2"><a class="reference internal" href="eth_lwip_iperf.html">8.5. IPERF - LwIP iperf</a></li>
</ul>
</li>
</ul>
@ -193,9 +194,9 @@
<li><a href="../../../index.html" class="icon icon-home"></a> &raquo;</li>
<li><a href="index.html"><span class="section-number">7. </span>EMAC 以太网应用</a> &raquo;</li>
<li><a href="index.html"><span class="section-number">8. </span>EMAC 以太网应用</a> &raquo;</li>
<li><span class="section-number">7.2. </span>UDP echo</li>
<li><span class="section-number">8.2. </span>UDP echo</li>
<li class="wy-breadcrumbs-aside">
@ -215,11 +216,11 @@
<div itemprop="articleBody">
<div class="section" id="udp-echo">
<span id="eth-udp-echo"></span><h1><span class="section-number">7.2. </span>UDP echo<a class="headerlink" href="#udp-echo" title="永久链接至标题"></a></h1>
<span id="eth-udp-echo"></span><h1><span class="section-number">8.2. </span>UDP echo<a class="headerlink" href="#udp-echo" title="永久链接至标题"></a></h1>
<p>本 demo 基于 BL706 ETH 开发板,并基于 LwIP 轻量级网络协议栈,实现了一个 UDP 协议通信的例程。</p>
<p>以太网 PHY 芯片这里使用的是 PHY8720</p>
<div class="section" id="id1">
<h2><span class="section-number">7.2.1. </span>硬件准备<a class="headerlink" href="#id1" title="永久链接至标题"></a></h2>
<h2><span class="section-number">8.2.1. </span>硬件准备<a class="headerlink" href="#id1" title="永久链接至标题"></a></h2>
<ul class="simple">
<li><p>一块 BL706 ETH 开发板</p></li>
<li><p>一块 PHY 8720 模块</p></li>
@ -228,7 +229,7 @@
</ul>
</div>
<div class="section" id="id2">
<h2><span class="section-number">7.2.2. </span>硬件连接<a class="headerlink" href="#id2" title="永久链接至标题"></a></h2>
<h2><span class="section-number">8.2.2. </span>硬件连接<a class="headerlink" href="#id2" title="永久链接至标题"></a></h2>
<p>本 demo 基于 BL706 ETH 开发板,将对应的功能引脚连接到 PHY8720 模块上,连接方式如下:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span> <span class="n">GPIO</span> <span class="n">function</span> <span class="n">GPIO</span> <span class="n">pin</span>
<span class="o">----------------------------------</span>
@ -247,7 +248,7 @@
<p>接下来需要将 PHY8720 模块的 RJ-45 接口通过标准 5/6 类网线连接到与测试 PC 在同一局域网中的路由器或者交换机上。</p>
</div>
<div class="section" id="lwip">
<h2><span class="section-number">7.2.3. </span>LwIP 协议栈的配置<a class="headerlink" href="#lwip" title="永久链接至标题"></a></h2>
<h2><span class="section-number">8.2.3. </span>LwIP 协议栈的配置<a class="headerlink" href="#lwip" title="永久链接至标题"></a></h2>
<p>LwIP 协议栈的相关配置文件在 <code class="docutils literal notranslate"><span class="pre">components/lwip/lwipopts.h</span></code> 中,详细配置请阅读代码源文件</p>
<p>如果要使用 UDP 相关功能,需要在文件中使能 LWIP_UDP 宏定义,否则将会使用 LwIP 默认的配置</p>
<div class="highlight-c notranslate"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal">1</span>
@ -259,7 +260,7 @@
</td></tr></table></div>
</div>
<div class="section" id="udp-ip">
<h2><span class="section-number">7.2.4. </span>UDP 测试目标 IP 及端口设置<a class="headerlink" href="#udp-ip" title="永久链接至标题"></a></h2>
<h2><span class="section-number">8.2.4. </span>UDP 测试目标 IP 及端口设置<a class="headerlink" href="#udp-ip" title="永久链接至标题"></a></h2>
<p><code class="docutils literal notranslate"><span class="pre">examples\emac\lwip_udp\udp_echo.h</span></code> 文件中,通过修改宏定义即可修改不同测试主机 IP 及端口信息</p>
<p>注:由于当前测试例程 local ip 地址采用静态 IP 配置进行的测试,如需修改可在 main.c 中进行相应的修改,也可直接使能 LWIP 的 DHCP 功能自动获取 IP 配置。</p>
<div class="highlight-c notranslate"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal">1</span>
@ -277,7 +278,7 @@
</td></tr></table></div>
</div>
<div class="section" id="id3">
<h2><span class="section-number">7.2.5. </span>编译和下载<a class="headerlink" href="#id3" title="永久链接至标题"></a></h2>
<h2><span class="section-number">8.2.5. </span>编译和下载<a class="headerlink" href="#id3" title="永久链接至标题"></a></h2>
<ul class="simple">
<li><p><strong>命令行编译</strong></p></li>
</ul>
@ -293,7 +294,7 @@ $ make <span class="nv">APP</span><span class="o">=</span>lwip_udp
</ul>
</div>
<div class="section" id="id4">
<h2><span class="section-number">7.2.6. </span>实验现象<a class="headerlink" href="#id4" title="永久链接至标题"></a></h2>
<h2><span class="section-number">8.2.6. </span>实验现象<a class="headerlink" href="#id4" title="永久链接至标题"></a></h2>
<p>编译完成后,烧写到芯片正确运行后,可以通过配置的测试端口访问芯片。</p>
<p>串口 log 信息:</p>
<div class="figure align-default">
@ -315,8 +316,8 @@ $ make <span class="nv">APP</span><span class="o">=</span>lwip_udp
</div>
<footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="eth_tcp_echo.html" class="btn btn-neutral float-right" title="7.3. TCP echo" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
<a href="eth_basic.html" class="btn btn-neutral float-left" title="7.1. emac basic 发送 ARP 数据包" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
<a href="eth_tcp_echo.html" class="btn btn-neutral float-right" title="8.3. TCP echo" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
<a href="eth_basic.html" class="btn btn-neutral float-left" title="8.1. emac basic 发送 ARP 数据包" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
</div>
<hr/>

View file

@ -7,7 +7,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>7. EMAC 以太网应用 &mdash; BL_MCU_SDK 开发指南 0.3 文档</title>
<title>8. EMAC 以太网应用 &mdash; BL_MCU_SDK 开发指南 0.3 文档</title>
@ -39,8 +39,8 @@
<link rel="index" title="索引" href="../../../genindex.html" />
<link rel="search" title="搜索" href="../../../search.html" />
<link rel="next" title="7.1. emac basic 发送 ARP 数据包" href="eth_basic.html" />
<link rel="prev" title="6. BLE 客户端和服务端互连" href="../ble_scan_demo.html" />
<link rel="next" title="8.1. emac basic 发送 ARP 数据包" href="eth_basic.html" />
<link rel="prev" title="7. BLE PDS31" href="../ble_pds.html" />
</head>
<body class="wy-body-for-nav">
@ -129,12 +129,13 @@
<li class="toctree-l1"><a class="reference internal" href="../lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1 current"><a class="current reference internal" href="#">7. EMAC 以太网应用</a><ul>
<li class="toctree-l2"><a class="reference internal" href="eth_basic.html">7.1. ARP - 发送 ARP 裸包</a></li>
<li class="toctree-l2"><a class="reference internal" href="eth_udp_echo.html">7.2. UDP - LwIP UDP echo</a></li>
<li class="toctree-l2"><a class="reference internal" href="eth_tcp_echo.html">7.3. TCP - LwIP TCP echo</a></li>
<li class="toctree-l2"><a class="reference internal" href="eth_http_server.html">7.4. HTTP - LwIP HTTP server</a></li>
<li class="toctree-l2"><a class="reference internal" href="eth_lwip_iperf.html">7.5. IPERF - LwIP iperf</a></li>
<li class="toctree-l1"><a class="reference internal" href="../ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1 current"><a class="current reference internal" href="#">8. EMAC 以太网应用</a><ul>
<li class="toctree-l2"><a class="reference internal" href="eth_basic.html">8.1. ARP - 发送 ARP 裸包</a></li>
<li class="toctree-l2"><a class="reference internal" href="eth_udp_echo.html">8.2. UDP - LwIP UDP echo</a></li>
<li class="toctree-l2"><a class="reference internal" href="eth_tcp_echo.html">8.3. TCP - LwIP TCP echo</a></li>
<li class="toctree-l2"><a class="reference internal" href="eth_http_server.html">8.4. HTTP - LwIP HTTP server</a></li>
<li class="toctree-l2"><a class="reference internal" href="eth_lwip_iperf.html">8.5. IPERF - LwIP iperf</a></li>
</ul>
</li>
</ul>
@ -185,7 +186,7 @@
<li><a href="../../../index.html" class="icon icon-home"></a> &raquo;</li>
<li><span class="section-number">7. </span>EMAC 以太网应用</li>
<li><span class="section-number">8. </span>EMAC 以太网应用</li>
<li class="wy-breadcrumbs-aside">
@ -205,7 +206,7 @@
<div itemprop="articleBody">
<div class="section" id="emac">
<h1><span class="section-number">7. </span>EMAC 以太网应用<a class="headerlink" href="#emac" title="永久链接至标题"></a></h1>
<h1><span class="section-number">8. </span>EMAC 以太网应用<a class="headerlink" href="#emac" title="永久链接至标题"></a></h1>
<p>BL70x 系列芯片拥有一个 EMAC 模块,该模块是一个兼容 <a class="reference external" href="https://en.wikipedia.org/wiki/Ethernet_flow_control">IEEE 802.3</a> 的 10/100 Mbps 以太网 MAC。
EMAC 主要通过 RMII 接口连接到 PHY 芯片,以进行以太网通信。</p>
<p>在 BL706 上移植了 <a class="reference external" href="https://en.wikipedia.org/wiki/LwIP">LwIP</a> 网络协议栈, LwIP 是一个专为嵌入式系统设计的被广泛使用的开源的轻量级 TCP/IP 协议栈。
@ -213,11 +214,11 @@ LwIP 协议栈可以在裸机中或在 RTOS 操作系统中运行,目前下列
<p>以下例程都是通过 RMII 接口连接到 PHY 8720 芯片进行通信的。</p>
<div class="toctree-wrapper compound">
<ul>
<li class="toctree-l1"><a class="reference internal" href="eth_basic.html">7.1. ARP - 发送 ARP 裸包</a></li>
<li class="toctree-l1"><a class="reference internal" href="eth_udp_echo.html">7.2. UDP - LwIP UDP echo</a></li>
<li class="toctree-l1"><a class="reference internal" href="eth_tcp_echo.html">7.3. TCP - LwIP TCP echo</a></li>
<li class="toctree-l1"><a class="reference internal" href="eth_http_server.html">7.4. HTTP - LwIP HTTP server</a></li>
<li class="toctree-l1"><a class="reference internal" href="eth_lwip_iperf.html">7.5. IPERF - LwIP iperf</a></li>
<li class="toctree-l1"><a class="reference internal" href="eth_basic.html">8.1. ARP - 发送 ARP 裸包</a></li>
<li class="toctree-l1"><a class="reference internal" href="eth_udp_echo.html">8.2. UDP - LwIP UDP echo</a></li>
<li class="toctree-l1"><a class="reference internal" href="eth_tcp_echo.html">8.3. TCP - LwIP TCP echo</a></li>
<li class="toctree-l1"><a class="reference internal" href="eth_http_server.html">8.4. HTTP - LwIP HTTP server</a></li>
<li class="toctree-l1"><a class="reference internal" href="eth_lwip_iperf.html">8.5. IPERF - LwIP iperf</a></li>
</ul>
</div>
</div>
@ -228,8 +229,8 @@ LwIP 协议栈可以在裸机中或在 RTOS 操作系统中运行,目前下列
</div>
<footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="eth_basic.html" class="btn btn-neutral float-right" title="7.1. emac basic 发送 ARP 数据包" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
<a href="../ble_scan_demo.html" class="btn btn-neutral float-left" title="6. BLE 客户端和服务端互连" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
<a href="eth_basic.html" class="btn btn-neutral float-right" title="8.1. emac basic 发送 ARP 数据包" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
<a href="../ble_pds.html" class="btn btn-neutral float-left" title="7. BLE PDS31" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
</div>
<hr/>

View file

@ -136,7 +136,8 @@
<li class="toctree-l1"><a class="reference internal" href="lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -140,7 +140,8 @@
</li>
<li class="toctree-l1"><a class="reference internal" href="boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -140,7 +140,8 @@
<li class="toctree-l1"><a class="reference internal" href="lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -136,7 +136,8 @@
<li class="toctree-l1"><a class="reference internal" href="../lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -143,7 +143,8 @@
<li class="toctree-l1"><a class="reference internal" href="../lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -136,7 +136,8 @@
<li class="toctree-l1"><a class="reference internal" href="../lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -136,7 +136,8 @@
<li class="toctree-l1"><a class="reference internal" href="../lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -143,7 +143,8 @@
<li class="toctree-l1"><a class="reference internal" href="../lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -143,7 +143,8 @@
<li class="toctree-l1"><a class="reference internal" href="../lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -138,7 +138,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -132,7 +132,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -138,7 +138,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -132,7 +132,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -138,7 +138,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -132,7 +132,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -139,7 +139,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -139,7 +139,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -133,7 +133,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -138,7 +138,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -132,7 +132,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -145,7 +145,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -140,7 +140,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -145,7 +145,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -134,7 +134,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -132,7 +132,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -138,7 +138,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -133,7 +133,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -139,7 +139,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -139,7 +139,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -132,7 +132,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -138,7 +138,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -132,7 +132,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -137,7 +137,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -132,7 +132,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -138,7 +138,8 @@
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

View file

@ -130,7 +130,8 @@
<li class="toctree-l1"><a class="reference internal" href="samples/advance%20samples/lowpower_demo.html">4. Power Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="samples/advance%20samples/boot2_iap_info.html">5. BOOT2 IAP</a></li>
<li class="toctree-l1"><a class="reference internal" href="samples/advance%20samples/ble_scan_demo.html">6. BLE 客户端和服务端互连</a></li>
<li class="toctree-l1"><a class="reference internal" href="samples/advance%20samples/emac/index.html">7. EMAC 以太网应用</a></li>
<li class="toctree-l1"><a class="reference internal" href="samples/advance%20samples/ble_pds.html">7. BLE PDS31</a></li>
<li class="toctree-l1"><a class="reference internal" href="samples/advance%20samples/emac/index.html">8. EMAC 以太网应用</a></li>
</ul>

File diff suppressed because one or more lines are too long