IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> OpenHarmony WLAN驱动模型分析 导读(更新中) -> 正文阅读

[系统运维]OpenHarmony WLAN驱动模型分析 导读(更新中)

WLAN Model

本系列文章准备深入了解OpenHarmony的WLAN驱动模型,由于WLAN驱动模型非常庞大,我尝试根据WIFI 驱动模型的设计特点来给整个模式分模块进行介绍,本文是本系列文章的导读。

学习OpenHarmony的最好途径就是从官网的文档入手,我们可查看官网对于WLAN驱动模型的介绍:

zh-cn/device-dev/driver/driver-peripherals-external-des.md · OpenHarmony/docs - 码云 - 开源中国 (gitee.com)

一、前提必读

OpenHarmony WIFI 驱动模型是基于 HDF 驱动框架开发的,需要先理解 HDF 驱动开发框架,才能来学习WIFI 驱动模型。HDF 驱动的介绍:https://gitee.com/openharmony/docs/blob/master/zh-cn/device-dev/driver/driver-hdf-overview.md

计算机技术是为了解决实际问题而产生,而我们学习WIFI驱动框架,就需要知道这个软件技术是为了解决什么问题。答案可在官网找到:

首先WIFI 驱动模型的基本功能就是提供给上层WLAN能力:

HDI层开发人员可根据WLAN模块提供的向上统一接口获取如下能力:建立/关闭WLAN热点、扫描、关联WLAN热点等。

其次,提供给驱动开发人员接口:

各WLAN厂商驱动开发人员可根据WLAN模块提供的向下统一接口适配各自的驱动代码.

最后是模型的优点:

基于OpenHarmony驱动框架的WLAN驱动模型,可实现跨操作系统迁移,自适应器件差异,模块化拼装编译等功能。

二、WIFI

WIFI是一种无线传输技术,一般由WIFI芯片实现,通过SDIO或USB接口等与主控芯片连接。WIFI芯片与主控有两种通信通路:命令和数据。数据和命令以分时复用的方式使用SDIO总线。

2.1、命令

命令有三种:base,station,ap。

base命令包括:电源、复位等。

station命令包括扫描,连接等。

ap命令包括建立热点,获取连接状态等。

2.2、数据

数据包含接受和发送,WIFI是网络设备,其数据需要经过网络协议栈处理,例如LWIP协议栈。

协议栈的数据最终通过SDIO发送到WIFI芯片,WIFI芯片的网络数据也是通过SDIO最终输入到协议栈。

三、代码实现

在代码上就可以分为命令和数据两个部分。

命令部分又可以分为三类,分别以feature的方式来命名:

  • base feature
  • sta feature
  • ap feature

这三个概念会贯穿命令传输的通路。

数据通路主要是实现与网络协议栈的适配对接。

3.1、学习方法

由于OpenHarmony的驱动框架采用的是C语言面向对象的编程方法,所以在学习中也尽量使用面向对象的方法来入手。着重理解各个对象之间的调用关系,以及对象的创建方法。

下图所示是WLAN 命令通路:

在这里插入图片描述

以hdf_wifi_core.c为界,可将通路分为两部分:HDI 层和核心层。

从这两个部分来分别学习 WIFI 命令通路。

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-03-06 13:35:20  更:2022-03-06 13:39:38 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 3:26:47-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码