项目简介
本项目是基于C/C++语言的Mbed OS开发的示例项目,旨在展示如何实现WLAN低功耗运行,包含网络连接、HTTP服务器搭建、低功耗运行控制以及LED状态控制等功能。
项目的主要特性和功能
- 网络连接:根据mbed_app.json中的凭证连接到指定网络。
- HTTP服务器:网络连接成功后,启动HTTP服务器,支持用户通过浏览器或
cURL
工具发送HTTP请求。 - 低功耗运行:将WLAN设备配置为节能模式,主机MCU在网络无活动时进入深度睡眠或睡眠状态,通过监测网络活动暂停和恢复网络堆栈,延长深度睡眠时间。
- LED控制:接收到包含“/toggle”参数的HTTP请求时,切换LED状态。
安装使用步骤
环境准备
- 确保已安装支持的工具链,如GNU Arm® Embedded Compiler v9.2.1 (GCC_ARM) 或 Arm compiler v6.14 (ARM)。
- 部分情况下需安装 ModusToolbox® software v2.1 ,若没有终端模拟器,需安装一个,如 Tera Term。
导入项目
可以使用Mbed CLI命令导入代码示例并编译,也可手动执行以下步骤:
1. 部署依赖库:
mbed deploy
2. 设置当前目录为根目录:
mbed new .
硬件设置
- 确保开发板处于正确配置状态,部分开发板需将KitProg升级到KitProg3,且对于Mbed OS,开发板必须处于DAPLink模式。
- 使用提供的USB电缆通过KitProg3 USB连接器将开发板连接到PC。
运行项目
- 打开mbed_app.json,编辑Wi-Fi SSID和密码以匹配接入点设置。
- 确保计算机连接到与步骤1中配置相同的Wi-Fi接入点。
- 编译并烧录代码到开发板:
mbed compile -m <TARGET> -t <TOOLCHAIN> --flash --sterm
例如,使用GCC_ARM
工具链为目标CY8CPROTO_062_4343W
构建时,使用以下命令:mbed compile -m CY8CPROTO_062_4343W -t GCC_ARM --flash --sterm
若要使用其他串口终端应用程序(如PuTTY或Tera Term),则不要使用--sterm
选项。 - 烧录完成后,设备会连接到接入点并成功启动HTTP服务器,此时会在串口终端显示设备的IP地址。
- 在与设备连接到同一网络的PC上打开浏览器,在搜索窗口中输入
http://<ip_address>/
以发送HTTP GET请求,设备会响应并显示一个包含切换LED选项的页面。点击按钮会发送HTTP POST请求,设备接收到请求后会切换LED的状态。 - 也可使用
cURL
工具发送HTTP请求:- GET请求:
curl -v -X GET "http://<ip_address>/"
- POST请求:
curl -v -X POST "http:// <ip_address>/toggle/"
- GET请求:
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】