Linux开发板使用wifi过程

1.buildroot WIFI 工具配置

首先要给文件系统添加一些操作 WIFI 的工具。进入 buildroot 源码目录里,接着运行“make menuconfig”进入图形配置界面,配置如下:

→ Target packages 
	→ Networking applications
		→ [*] wireless tools //选中
			→[*] Install shared library //选中
		→ [*] wpa_supplicant //选中
			→ [*] Enable nl80211 support //选中
			→[*] Enable AP mode //选中
				→ [*] Enable Wi-Fi Display //选中
				→ [*] Enable mesh networking //选中
			→ [*] Enable autoscan //选中
			→ [*] Enable EAP //选中
			→ [*] Enable HS20 //选中
			→ [*] Enable syslog support //选中
			→ [*] Enable WPS //选中
			→ [*] Enable WPA3 support //选中
			→ [*] Install wpa_cli binary //选中
			→ [*] Install wpa_client shared library //选中
			→ [*] Install wpa_passphrase binary //选中
			→ [*] Enable support for the DBus control interface //选中
			→ [*] Introspection support //选中

配置完成如图所示:

在这里插入图片描述

配置完成后重新编译文件系统,编译完成后,烧录并重启开发板。

2. WIFI 工具测试

我们先看下 iwlist 命令的使用的方法,命令如下:
iwlist --help
在这里插入图片描述

iwlist 命令测试 WIFI 之前得先让 WIFI 模块工作起来。运行以下命令打开 WIFI 网卡:

ifconfig wlan0 up

SDIO WIFI 已经启动了,现在可以使用 iwlist 去扫描网络(一定要接天线!!),输入如下命令扫描当前存在的无线网络:

iwlist wlan0 scanning

上述命令就会搜索当前环境下的所有 WIFI 热点,然后将这些热点的信息全部打印出来,包括 MAC 地址、ESSID(WIFI 名字)、频率、速率,信号质量等等,如图所示:
在这里插入图片描述

可以看出有两个 WIFI 热点,一个名为“ZZK”,一个名为“stone”,接下来我们使用 wpa_supplicant 这个工具来连接 WIFI 热点。简单介绍一下 wpa_supplicant命令的使用,这个命令的参数有很多,下面就列出常用的参数:
-D:指定设备,有三个设备分别为:nl80211、wext 和 wired。设备是固定的根据驱动源码
决定使用那个设备。
-c:指定 wpa_supplicant 配置文件。
-i:指定网口,比如我们的 WiFi 网口名为 wlan0。
-B:表示在后台运行。

3 RTL8723 SDIO WIFI 联网测试

默认情况下,开发板根文件系统/etc 目录下会有一个名为“wpa_supplicant.conf”的配置文件,没有的话就自行创建一下。此文件用于配置要连接的 WIFI 热点以及对应的密码,比如我要连接到“ZZK”这个热点上,因此wpa_supplicant.conf 文件内容如下所示:

ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=0
update_config=1

network={
 ssid="ZZK"
 psk="xxxxxxxxxxxxx"
}
第 6 行,ssid 是要连接的 WIFI 热点名字,这里我要连接的是“ZZK”这个 WIFI 热点。
第 7 行,psk 就是要连接的 WIFI 热点密码,根据自己的实际情况填写即可。
注意,wpa_supplicant.conf 文件对于格式要求比较严格,“=”前后一定不能有空格,缩进应该采用空格,否则的话会出现 wpa_supplicant.conf 文件解析错误!最重要的一点!

wpa_supplicant.conf 文 件 编 写 好 以 后 再 在 开 发 板 根 文 件 系 统 下 创 建一 个“/var/run/wpa_supplicant”目录,wpa_supplicant 工具要用到此目录!命令如下:

mkdir /var/run/wpa_supplicant -p

一切准备好以后就可以使用 wpa_supplicant 工具让 RTL8723 SDIO WIFI 连接到热点上,输入如下命令:

wpa_supplicant -Dnl80211 -c /etc/wpa_supplicant.conf -i wlan0 &

当 RTL8723 连接上 WIFI 热点以后会输出如图所示的信息:
在这里插入图片描述

可以看出,当 RTL8723 连接到 WIFI 热点上以后会输出“wlan0: CTRLEVENT-CONNECTED”字样。接下来就是最后一步了,设置 wlan0 的 IP 地址,这里使用udhcpc 命令从路由器申请 IP 地址,输入如下命令:

udhcpc -i wlan0 //从路由器获取 IP 地址

IP 地址获取成功以后会输出如图所示信息:
在这里插入图片描述

可以通过电脑 ping 一下 wlan0 的 192.168.1.196 这个 IP 地址,如果能 ping 通就说明 RTL8723SDIO WIFI 工作正常。也可以直接在开发板上使用 wlan0 来 ping 一下百度网站,输入如下命令:

ping -I 192.168.1.196 www.baidu.com

-I 是指定执行 ping 操作的网卡 IP 地址,我们要使用 wlan0 去 ping 百度网站,因此要通过“-I”指定 wlan0 的 IP 地址。如果 WIFI 工作正常的话就可以 ping 通百度网站

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/927984.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

C# 元组

文章目录 一、元组(Tuple)概述二、元组的创建方式(一)使用 Tuple 类(旧的方式,C# 7.0 之前常用)(二)使用元组字面量(C# 7.0 及之后引入的更便捷方式&#xff…

2024年Java面试八股文大全(附答案版)

很多人会问Java面试八股文有必要背吗? 我的回答是:很有必要。你可以讨厌这模式,但你一定要去背,因为不背你就进不了大厂。 国内的互联网面试,恐怕是现存的、最接近科举考试的制度。 而且,我国的八股文确…

【数据库系列】Spring Boot如何配置Flyway的回调函数

Flyway 提供了回调机制,使您能够在特定的数据库迁移事件发生时执行自定义逻辑。通过实现 Flyway 的回调接口,可以在迁移前后执行操作,如记录日志、执行额外的 SQL 语句等。 1. 创建自定义回调类 要配置 Flyway 的回调函数,需要创…

Angular v19 (三):增量水合特性详解 - 什么是水合过程?有哪些应用场景?与 Qwik 相比谁更胜一筹?- 哪个技术好我就学哪个,这就是吸心大法吧

Angular在其最新版本 v19 中引入了增量水合(Incremental Hydration)这一特性。这一更新引发了开发者们广泛的讨论,特别是在优化首屏加载速度和改善用户体验方面。本文将详解水合过程的概念、增量水合的应用场景,以及它与类似框架如…

jmeter如何导出中文版的测试报告?

文章目录 0、初始步骤:把报告模板换成中文形式1、首先添加一份聚合报告2、然后点开【聚合报告】3,生成报告3.1 选择【工具】-【generate HTML report】3.2 【generate HTML report】参数详解3.3 、最后点击 【generate report】直接生成。 声明&#xff…

集团内买卖资产并以注资方式转实收资本

SAP 集团内资产买卖原值、折旧一起入账 合并是个很复杂的东西,我至今不会。 做项目过程中经历的上市公司,一般都要求内部公司间转移的固定资产不能有价格调整,也就是卖出方的账面价值需要等于买入方的账面价值。 当然,集团内也做…

【测试工具JMeter篇】JMeter性能测试入门级教程(七):JMeter断言

一、前言 在 JMeter 中,断言元件(Assertion)用于验证测试结果是否符合预期。断言元件可以检查服务器的响应数据,以确保它们符合期望的模式或值,从而验证性能测试脚本的正确性。断言元件通常在每个请求的响应中添加&am…

nerdctl:与 Docker 兼容的 containerd CLI

nerdctl 是一个用于容器管理的命令行工具,它旨在提供与 Docker CLI 相似的用户体验,但却是为 containerd 这样的低级容器运行时设计的。containerd 是一个行业标准的容器运行时,被广泛用作 Kubernetes 等容器编排平台的一部分。nerdctl 通过简…

XRP 深度解析:从技术到 Meme 币交易指南

撰文:Ignas | DeFi Research 编译:Yuliya,PANews 本文来源Techub News:XRP 深度解析:从技术到 Meme 币交易指南 在当前加密货币市场,一个令人瞩目的现象正在上演:XRP 在短短一个月内暴涨 3.5 倍&#xf…

java_判断语句——acwing

题目一:倍数 665. 倍数 - AcWing题库 代码 import java.util.Scanner;public class Main{public static void main(String[] args) {Scanner sc new Scanner(System.in);int a sc.nextInt(), b sc.nextInt();if(a%b0 || b%a0) System.out.printf("Sao Mu…

构建自己的docker的ftp镜像

aarch64系统可运行的docker镜像 构建自己的vsftpd镜像,我是在windows系统下的docker desktop中构建运行于aarch64 GNU/Linux系统的ftp镜像。 系统环境: Welcome to Debian GNU/Linux with Linux x.x.x dockerfile FROM ubuntu:latestUSER rootRUN ap…

【LeetCode】169.多数元素

题目连接: https://leetcode.cn/problems/majority-element/solutions/2362000/169-duo-shu-yuan-su-mo-er-tou-piao-qing-ledrh/?envTypestudy-plan-v2&envIdtop-interview-150 题目描述: 思路一: 使用哈希表unordered_map记录每个元…

Ajax基础总结(思维导图+二维表)

一些话 刚开始学习Ajax的时候,感觉很模糊,但是好像学什么都是这样的,很正常,但是当你学习的时候要持续性敲代码,边敲代码其实就可以理解很多了。然后在最后的总结,其实做二维表之后,就可以区分…

structuredClone()与 lodash.cloneDeep与 JSON.parse JSON.stringify()拷贝对比

structuredClone()与 lodash.cloneDeep与 JSON.parse & JSON.stringify()拷贝对比

Vue02

前端最新Vue2Vue3基础入门到实战项目全套教程,自学前端vue就选黑马程序员,一套全通关!_哔哩哔哩_bilibilihttps://www.bilibili.com/video/BV1HV4y1a7n4?spm_id_from333.788.videopod.episodes&vd_source016213ecd945408976ff307a6bda30…

数据结构---图

图是一种较为复杂的非线性结构。 为啥说其较为复杂呢? 根据前面的内容,我们知道: 线性数据结构的元素满足唯一的线性关系,每个元素(除第一个和最后一个外)只有一个直接前趋和一个直接后继。树形数据结构的元素之间有着明显的层次…

FakeLocation 1.3.5 BETA 提示校园跑漏洞修复解决

任务一 作者对此又进行了更新,在本次更新中,我们依旧使用hookvip进行破解 本次的更新,使得包名强制写入更加严重,之前靠一些方法已经无法阻止appconfigs.xml的文件的修改,而且使得验证加强,和云端加强&…

在Ubuntu 20.04和ROS中使用RViz进行数据可视化:详解Fixed Frame参数的选择与应用

在Ubuntu 20.04和ROS中使用RViz进行数据可视化:详解Fixed Frame参数的选择与应用 在ROS的可视化工具RViz中,“Fixed Frame"是一个关键的全局选项,它设置了一个参考坐标系,用于解释和显示所有其他坐标系中的数据。通过您提供的…

夜神模拟器+Charles+postern+Mgisk+TrustMeAlready实现抓包

[实测有用]夜神模拟器CharlesposternMgiskTrustMeAlready实现抓包 PS:此贴仅做为技术交流,禁止非法用途。 1.初始化条件 A.安装MUMU模拟器安卓12版本 B.按图示选择,设置好代理端口8889 C.查看本机IP地址 D.导出证书,安装配置,暂时保存…

【零基础学习UDS诊断测试】——0x10测试用例设计

从0开始学习CANoe使用 从0开始学习车载测试 相信时间的力量 星光不负赶路者,时光不负有心人。 目录 1.概述 2.三个会话介绍 3.会话切换逻辑 4.会话响应格式 5.解析测试点 5.1. 0x10 5.1.1 具体用例设计 5.1.1.1 NRC否定响应码 6.详细用例展示 1.概述 主要基于诊断调查表介…