RV1126B芯片WiFi STA模式通信技术解析
2025-12-03 来源:elecfans
1.网络配置简介
本文档介绍了系统的网络基础配置。另外为了解决在程序中修改网络配置需求,我们也提供使用yaml-cpp库修改网络配置的简单示例。
1.1 netplan与yaml文件
1.1.1 背景
本分析系统运行环境采用的是Ubuntu22.04系统。由于Ubuntu从18.04版本不再使用 ifupdown 配置网络,而改用 netplan,所以在 /etc/network/interfaces 配置固定IP是无效的,必须在/etc/netplan/中进行使用yaml文件网络配置,即我们需要了解yaml文件的基础语法。
1.1.2 语法基础及注意事项
以下语法并不包含YAML的所有语法,只说明网络配置中所需语法。更详细的语法知识请参考YAML官网:https://yaml.org/
l 数据结构采用键值对的形式,即(键名称: 值),注意冒号后面要有空格。
l 数组有两种表达方式,例如配置双ip地址时每个元素单独一行,并以(- )开头;配置DNS时使用方括号,元素用逗号隔开。如下图所示。
l 使用缩进表示层级关系,缩进使用空格不推荐使用 tab,因为在不同系统 tab 长度可能不一样。
l 字母大小写敏感。
1.2 WIFI使用操作
1.2.1 接上

1.2.2 修改WI-FI网络配置
用以下命令查看开发板网络配置存放路径,会发现有4个配置文件。其中52-wlan0-init.yaml是【wif网卡】相关的netplan配置。
ls /etc/netplan/

下面是一个把wlan0配置成DHCP的示例:

关于网卡配置每一个部分的配置细节说明,如下图所示:

如果对yaml进行过了修改,则需要执行下方命令进行更新:
sudo netplan genera sudo netplan apply
2. 快速上手
2.1 开发环境准备
如果您初次阅读此文档,请阅读《入门指南/开发环境准备/Easy-E编译环境准备与更新》,并按照其相关的操作,进行编译环境的部署。
在PC端Ubuntu系统中执行run脚本,进入EASY-EAI编译环境,具体如下所示。
cd ~/develop_environment ./run.sh

2.2 源码下载以及例程编译
首先,在虚拟机后台终端,执行以下命令,创建外设单例源码管理目录:
cd /opt mkdir -p EASY-EAI-Nano-TB/demo
首先,到【百度网盘】上下载相关的单例程序:
链接:https://pan.baidu.com/s/1Br608Hiff2Xs65PzWO_qWQ?pwd=1234
提取码:1234
比如把单例程序下载到:此D:BaiduNetdisk (无规定,用户可自主选择),如下图所示。
再将下载好的单例复制进入虚拟机的文件系统,过程如下图所示。



最后,进入到对应的例程目录执行编译操作,具体命令如下所示:
cd EASY-EAI-Nano-TB/demo/01_network ./build.sh
注:
* 由于依赖库部署在板卡上,因此交叉编译过程中必须保持/mnt挂载。
若有以下报错则需要在【开发板上】安装一下libyaml-cpp-dev库
sudo apt-get install libyaml-cpp-dev
2.3 例程运行
通过串口调试或ssh调试,进入板卡后台,定位到例程部署的位置,如下所示:
cd /userdata

运行例程命令如下所示:
./test-wifi
此demo的效果是把wlan0的配置修改成wifi station,连接到一个叫HUAWEI-0H1YW8的wifi AP(热点)上。
2.4 运行效果
执行后若能成功连接,热点则会给开发板分配IP地址,效果如下所示。

3. 操作例程
例程位于01_network/test-wifi/main.cpp。
3.1 例程源码
以下代码展示了设置wlan0的热点连接的使用案例,供用户编码参考:
int main() { // 加载YAML文件 YAML::Node config = YAML::LoFile("/etc/netplan/52-wlan0-init.yaml"); // =====================修改wifis的参数=========================== config["network"]["wifis"]["wlan0"]["dhcp4"] = "true"; config["network"]["wifis"]["wlan0"]["dhcp4-overrides"]["route-metric"] = "200"; config["network"]["wifis"]["wlan0"]["cess-points"]["HUAWEI-0H1YW8"]["password"] = "lmo12345678"; // ============================================================= // 将修改后的YAML文档写回到文件中 std::ofstream fout("/etc/netplan/52-wlan0-init.yaml"); fout << config; fout.close(); // =======================重启网卡=============================== system("sudo netplan generate"); system("sudo netplan apply"); return 0; }
- 嵌入式的风向变了:2026纽伦堡嵌入式展透露这些趋势
- 高通确认不在GDC 2026发布新款骁龙G系列掌机处理器SoC
- 行业评论 从工具到平台:如何化解跨架构时代的工程开发和管理难题
- 阿里达摩院发布玄铁C950,打破全球RISC-V CPU性能纪录
- 面向嵌入式部署的神经网络优化:模型压缩深度解析
- Mujoco中添加Apriltag标签并实现相机识别教程
- 摩尔线程MTT S5000全面适配Qwen3.5三款新模型
- 英飞凌与宝马集团携手合作,基于Neue Klasse架构塑造软件定义汽车的未来
- 物理AI仿真新突破:摩尔线程与五一视界共建全栈国产化生态
- 爆火的OpenClaw! 告别云端,米尔RK3576开发板本地部署
- 中国芯片研发重要成果!中科院发布香山、如意系统
- Altera 与 Arm 深化合作,共筑 AI 数据中心高效可编程新方案
- 莱迪思加入英伟达 Halos生态系统,通过Holoscan传感器桥接技术提升物理人工智能安全性
- 芯科科技闪耀2026嵌入式世界展 以Connected Intelligence赋能,构建边缘智能网联新生态
- 边缘计算主机盒选购指南:五大核心指标解析
- Arm AGI CPU 更多细节:台积电 3nm 制程、Neoverse V3 微架构
- Arm AGI CPU 重磅发布:构筑代理式 AI 云时代的芯片基石
- Arm 拓展其计算平台矩阵,首次跨足芯片产品
- 阿里达摩院发布RISC-V CPU玄铁C950,首次原生支持千亿参数大模型




