SimpleLink Wi-Fi 片上互联网器件提供全面的网络功能。为了简化使用 SimpleLink Wi-Fi 器件的网络应用的集成和开发,TI 提供了一个简单的用户友好型主机驱动程序。
SimpleLink 主机驱动程序的功能如下:
- 为用户应用提供一个简单 API
- 处理与器件的通信,包括:
- 构建和解析命令
- 处理异步事件
- 处理数据路径的流控制
- 并发命令的串行化
- 使用现有的 UART 或 SPI 物理接口驱动程序
- 使用操作系统适配层,可灵活地选择使用或不使用操作系统
- 支持移植到任何平台
主机驱动程序采用严格的 ANSI C89 编写,可与大多数嵌入式平台和开发环境完全兼容。
主机驱动程序的关键架构概念如下:
- 微控制器
- 可在 8 位、16 位或 32 位微控制器上运行
- 可在任何时钟速度下运行,没有性能或时间依赖性
- 支持大端和小端字节序格式
标准接口通信端口:
- SPI – 支持标准 4 线 SPI:
- 8 位、16 位或 32 位字长
- 默认模式 0(CPOL=0,CPHA=0)
- SPI 时钟速率可配置为高达 20Mbps。
- 需要 CS。
- 异步操作需要额外的 IRQ 线。
- UART
- 具有硬件流控制 (RTS/CTS) 的标准 UART,速率高达 3Mbps。
- 默认波特率为 115200(8 位,无奇偶校验,1 个开始/停止位)。
- 支持系统使用或不使用操作系统:
- 简单的操作系统包装器,只需两个对象包装器:
- Sync Obj(事件/二进制信标)
- Lock Obj(互斥量/二进制信标)
- 驱动程序的内置逻辑,用于不运行操作系统的系统
SimpleLink 主机驱动程序包括一组六个逻辑模块和一个简单 API 模块:
- 器件 API – 管理硬件相关功能,如启动、停止、设置和获取器件配置。
- WLAN API – 管理 WLAN、802.11 协议相关功能,如器件模式(工作站、AP 或 P2P)、设置配置方法、添加连接配置文件和设置连接策略。
- 套接字 API – 用户应用最常见的 API 集,遵循 BSD 套接字 API。
- NetApp API – 启用不同的网络服务,包括超文本传输协议 (HTTP) 服务器服务、DHCP 服务器服务和 MDNS 客户端\服务器服务。
- NetCfg API – 配置不同的网络参数,如设置 MAC 地址、通过 DHCP 获取 IP 地址以及设置静态 IP 地址。
- 文件系统 API – 提供对串行闪存组件的访问,以进行针对网络或用户专有数据的读取和写入操作。
图 1-2 是主机驱动程序解剖图。