1、概述
XR871 系列 IC 是基于 Wi-Fi 技术的无线 MCU,其内置 Wi-Fi 协议栈,并于 SDK 中集成
lwIP,因此可以应用于物联网中的各类 Wi-Fi 联网设备。此文档用以说明 XR871 的 SDK 中的
WLAN 的功能描述和使用方法,进而指导网络应用开发者能够有效的使用正确的 API 完成应用功能实现。
此文档将指引你实现以下功能:
●初始化 Wi-Fi 系统进入 STA 模式或者 AP 模式
●配置 STA 或 AP 模式下的 Wi-Fi 系统参数
●扫描,连接可用是 AP 节点
●创建 socket,使用上层网络协议
1.1 网络系统架构
XR871 软件系统架构分为四层结构:驱动层,OSAL 层,服务层及应用层,如下图所示。
- 驱动层:提供
芯片级功能访问 API,提供外设数据传输通道,实现完整的设备管理。
- OSAL 层:提供操作系统抽象,对接各操作系统内核。
- 服务层:提供系统接口,功耗管理,网络协议实现等,WLAN 系统及网络相关内容都属于服务层。
- 应用层:提供应用程序实现,网络配置管理,产品集成等。
1.2 网络通信实现描述
XR871 硬件实现 Application 子系统和 WLAN 子系统物理隔离的架构,从而为应用提供更加灵活稳定的系统运行环境,也为开发者提供了更加丰富的系统资源。在此系统中,应用子系统与网络子系统通过 MailBox进行通信,其实现架构如下图。
该系统在 MailBox 的基础上实现了一套通用的传输协议 DUCC,通过 DUCC 命令实现对网络子系统的基本访问,并通过 DUCC 命令之一 WLAN_WPA_CTRL_REQUEST 实现 supplicant 功能扩展中,具体命令如下:
2、WLAN 功能描述
2.1 示例工程
请参考 sdk-code/project/wlan_demo。
2.2 WLAN 系统启动
在 wlan_demo 工程中,网络系统加载流程如下:
网络系统加载过程中依次完成了以下几个重要的过程:
1. 初始化系统消息队列,创建系统消息处理线程;
2. 配置网络子系统硬件,加载网络子系统固件;
3. 初始化 DUCC 服务,注册回调函数;
4. 初始化 TCP/IP 协议栈;
5. 创建 netif 网络接口并启动 WLAN 子系统任务;
更多详细内容请下载附件查看