回到首页 返回首页
回到顶部 回到顶部
返回上一页 返回上一页

【花雕学编程】行空板K10系列实验之网络服务连接Wi-Fi并在屏幕上显示相关信息 简单

头像 驴友花雕 2025.03.09 3 0

00-.jpg

行空板K10是一款专为快速体验物联网和学习人工智能而设计的开发学习板,100%采用国产芯片,知识产权自主可控,符合信息科技课程中编程学习、物联网及人工智能等教学需求。该板集成2.8寸LCD彩屏、WiFi蓝牙、摄像头、麦克风、扬声器、RGB指示灯、多种传感器及丰富的扩展接口。凭借高度集成的板载资源,教学过程中无需额外连接其他设备,便可轻松实现传感器控制、物联网应用以及人脸识别、语音识别、语音合成等AI人工智能项目。

主要特点
集成摄像头&内置算法,可进行离线图像检测
集成麦克风&内置算法,可进行离线语音识别
集成扬声器&内置算法,可进行离线语音合成
2.8寸彩色屏幕,数据展示更清晰
集成度高,利于教学
接口丰富,兼容软件多,扩展性好

 

0-5.jpg

网络服务 Wi-Fi 相关积木

 

07.jpg

 

辅助:屏幕显示相关积木

 

03.jpg

知识点:Wi-Fi

Wi-Fi(无线保真)是一种允许设备通过无线电波连接到互联网的技术。以下是一些关于Wi-Fi的关键知识点:

1、基本概念
无线局域网(WLAN):Wi-Fi 技术基于无线局域网 (WLAN),通过无线电波在有限的区域内传输数据。
频段:常用的 Wi-Fi 频段有2.4GHz 和5GHz,5GHz 频段提供更快的速度,但覆盖范围较小;2.4GHz 频段则覆盖范围较大,但速度相对较慢。

2、主要标准
Wi-Fi 有多个版本,每个版本在速度和覆盖范围上都有不同的性能:
802.11b:2.4GHz 频段,最大传输速度为11 Mbps。
802.11g:2.4GHz 频段,最大传输速度为54 Mbps。
802.11n:2.4GHz 和5GHz 频段,最大传输速度为600 Mbps。
802.11ac:5GHz 频段,最大传输速度可达到1Gbps 以上。
802.11ax(Wi-Fi 6):2.4GHz 和5GHz 频段,支持更高的速度和更大的设备连接数。

3、Wi-Fi 的工作原理
接入点(AP):Wi-Fi 网络的核心组件,用于发送和接收无线信号,通常为路由器。
客户端设备:例如智能手机、电脑、平板电脑等,通过无线网络适配器连接到接入点。
数据传输:无线电波在接入点和客户端设备之间传输数据,通过SSID(服务集标识符)和安全协议(如 WPA2)进行连接和加密。

4、安全与加密
WEP:一种较早的加密标准,安全性较低,易被破解。
WPA/WPA2:较新的加密标准,WPA2 是目前广泛使用的加密协议,安全性更高。
WPA3:最新的加密协议,提供更强大的安全性和易用性。

5、Wi-Fi 的应用
Wi-Fi 广泛应用于家庭、办公、公共场所等环境,提供无线互联网连接:
家庭网络:用于连接智能家居设备、智能电视等。
办公网络:用于企业内部的无线连接,提高办公效率。
公共热点:例如咖啡店、机场等,为用户提供免费或付费的无线连接服务。

6、常见问题与解决方法
信号弱:检查路由器位置,避免放置在金属物品或墙壁后面,可以使用Wi-Fi中继器或Mesh网络增强信号。
连接不稳定:检查是否有设备过多,导致网络拥堵,尝试重启路由器或更换频段。
慢速:确保路由器和设备支持最新的Wi-Fi标准,检查是否有网络干扰或带宽被占用。
 

 

07-.jpg

【花雕学编程】行空板K10系列实验之网络服务连接Wi-Fi并在屏幕上显示相关信息
实验开源代码

代码
#include <DFRobot_Iot.h>    // 引入DFRobot_Iot库,该库用于物联网(IoT)相关的Wi-Fi连接及网络数据处理
#include "unihiker_k10.h"   // 引入UNIHIKER_K10库,用于控制行空板K10系列硬件,例如屏幕显示、LED等

// 创建对象和相关变量
uint8_t screen_dir = 3;      // 定义一个8位无符号变量,用于设置屏幕的方向(例如旋转角度或预置方向编号)
DFRobot_Iot myIot;           // 创建一个DFRobot_Iot对象myIot,用于管理Wi-Fi连接和网络相关操作
UNIHIKER_K10 k10;            // 创建一个UNIHIKER_K10对象k10,用于控制行空板K10的屏幕、画布等显示模块

// 主程序开始
void setup() {
    k10.begin();                 // 初始化行空板K10硬件
    k10.initScreen(screen_dir);  // 根据变量screen_dir,初始化并设置屏幕方向
    k10.creatCanvas();           // 创建一个画布对象,使后续可以在屏幕上绘制文本或图形
    myIot.wifiConnect("zhz3", "zy156721");  // 使用DFRobot_Iot对象连接Wi-Fi;传入SSID和密码
}

void loop() {
    // 在画布上绘制实验标题,字体大小为3,文字颜色为红色(0xFF0000)
    k10.canvas->canvasText("行空板K10系列实验之Wi-Fi ", 3, 0xFF0000);

    // 获取Wi-Fi连接信息,并在画布上显示相关信息
    // 显示本地IP地址,字体大小为4,文字颜色为蓝色(0x0000FF)
    k10.canvas->canvasText((String("IP地址:") + String(myIot.getWiFiLocalIP())), 4, 0x0000FF);
    
    // 显示子网掩码,字体大小为5,文字颜色为蓝色(0x0000FF)
    k10.canvas->canvasText((String("子网掩码:") + String(myIot.getWiFiNetmask())), 5, 0x0000FF);
    
    // 显示网关地址,字体大小为6,文字颜色为蓝色(0x0000FF)
    k10.canvas->canvasText((String("网关:") + String(myIot.getGateway())), 6, 0x0000FF);
    
    // 显示DNS服务器地址,字体大小为7,文字颜色为蓝色(0x0000FF)
    k10.canvas->canvasText((String("DNS:") + String(myIot.getDNS())), 7, 0x0000FF);
    
    k10.canvas->updateCanvas();  // 更新画布,将所有已绘制的文本显示到屏幕上
}

代码解读

1、库及对象初始化

使用 DFRobot_Iot 库中的对象 myIot 实现Wi-Fi连接,将设备与网络相连。

使用 UNIHIKER_K10 库中的 k10 对象对行空板K10设备进行初始化,其中包括设定屏幕方向、创建画布和设置背景颜色等操作。

2、Wi-Fi连接

在 setup() 中调用 myIot.wifiConnect("zhz3", "zy156721") 函数通过指定的SSID和密码连接到Wi-Fi网络。

3、显示网络信息

在 loop() 循环内,首先在屏幕上显示“行空板K10系列实验之Wi-Fi”作为标题。

通过读取 myIot 对象的各项网络参数(本地IP地址、子网掩码、网关、DNS),并使用 canvasText() 方法将这些信息以不同的字体大小和颜色在屏幕上显示出来。

最后,每次调用 updateCanvas() 方法更新画布,将所有绘制内容刷新到显示屏上。

这种做法可以用于物联网开发板调试,实时监测Wi-Fi连接状态和网络参数,并直观地在设备屏幕上显示出来,方便检查设备网络连接是否成功。

 

Mind+图形编程

 

07-01.jpg

实验场景图

 

07-02.jpg

评论

user-avatar
icon 他的勋章
    展开更多