AI 编程课
完整教案
自学课件
17 课 · 共 17/48

通信谱系与 WiFi 的两种角色 ——连路由器与自己开热点

课时
待定
器材
ESP32-S3 触摸屏板 + USB 线
前置知识
配套代码
见项目 demo 目录

自学读本:跟着读、照着做,卡住就问 AI

你好,我是吴老师。

这份是给你自己读的——不用等我讲,你一段一段往下看,看到让你停下来的地方,就照着做一遍。看不懂的整段复制给 AI,加一句"请一次只解释一个概念,讲完问我一个小问题"。

读完之后,你应该能:用"传送带"比喻说出 WiFi 和 I2S 的相同点;说出 STA 和 AP 的区别并各举一个例子;解释 SSID / IP / MAC 分别是什么;亲手让板子连上 WiFi 打印 IP、自己开热点、扫描周围网络。

用时:60–90 分钟。准备:板子、数据线、已经接入板卡 Skill 的 WorkBuddy。本课 WiFi 名称和密码要你自己填教室的真实信息。


一、从"板内"走到"板外"

前面十几课,灯变色、屏幕画画、动画跑、麦克风收声、扬声器放歌——这些全是板子"自己跟自己玩"。它们都挂在板子内部的 I2C、I2S 这些"内部总线"上。

今天第一次,我们要让板子走出自己,去连外面的世界

先想:板子上没有网线口、没有 SIM 卡,凭什么能上网?

答案:靠无线。而无线里最容易懂的,是 WiFi

二、一个接得住的比喻:无线也是一种"传送带"

回忆第 3 章 I2S:扬声器不会自己响,是程序按固定节奏,把一串数字通过 I2S 总线"搬"到扬声器里——总线就是那根传送带,时钟一敲,数字一个接一个被送过去。

今天把画面换一个地方:

同样的"按节奏送数字",只不过传送带不再是一根铜线,而是变成了看不见的电波。

这就是 WiFi 最朴素的本质——它也是一条传送带,只是把数据从板子送到了空气里,再被路由器接住。

💡 本课一句话:板子连 WiFi 不是魔法,是"把数字按节奏打到空中去",和 I2S 送声音是同一类本事,只是方向从"板内"转向"板外"。

小目标:让板子连上教室 WiFi,屏幕打出它的 IP;再让它自己开个热点,你的手机能搜到它。

三、先让它连上路由器

请使用课程的 esp32s3-touchboard-hardware-dev Skill,
让板子以"连路由器"的方式连接 WiFi:
连接成功后,在屏幕上显示"已联网"、SSID 和分配到的 IP 地址;
连接失败则提示"连接失败"。
WiFi 名称和密码请使用我下面给的占位符,
烧录前我会自己改成教室的真实 WiFi。帮我新建程序并烧录。

填上你教室的 WiFi 后,把你看到的写下来:

我观察到的现象勾选
屏幕显示"已联网"和一行 IP
一直卡在"连接中…"
提示"连接失败"
串口里有规律的"."在刷

四、两种角色:连别人的网,还是自己当网

想象一间大教室:

  • 方式 A:你带手机连教室路由器,路由器给你发一个"座位号",你就能和外网说话。这叫 STA(站点)模式——板子当"学生",去连别人的路由器。
  • 方式 B:你手机开热点,让别人来连你。这叫 AP(接入点)模式——板子自己当"路由器",开一个热点。

同一块无线芯片,能演这两个完全不同的角色。这就是 WiFi 的"两种角色"。

刚做的委托是方式 A。现在换实验,让板子当方式 B。

五、让板子自己开个热点

请基于刚才的程序改一版:
让板子进入"自己开热点"的模式(AP 模式),
热点名称用板子自己的名字(比如 TouchBoard-AP),密码留空或设一个简单密码;
开机后屏幕显示"热点已开启"和这个热点的名称。
烧录后,请用你的手机去搜 WiFi,看能不能搜到它。帮我新建程序并烧录。

手机一搜——板子变成了一个小小的路由器。同一块芯片,角色反过来了:刚才"去连别人",现在"被别人连"。

⚠️ 比喻有边界:AP 开出的热点通常只让设备"互相连上",不一定能上互联网(除非板子再找另一张网上去)。它像你手机临时开的热点,能组网,但不等于通了外网。别把"开了热点"和"能上网"画等号。

六、连上之后,板子"有"了什么

板子连上路由器,路由器给它三样东西,记牢:

名字通俗说法干什么用
SSIDWiFi 的名字你连的是"哪一个"网
IP 地址网里的"门牌号"数据要送到哪块板子,靠这个号找
MAC 地址芯片的"身份证"出厂写死,全球唯一

把局域网想成一栋楼:SSID 是楼名,IP 是房间号,MAC 是住户身份证。 邮差(数据)靠房间号把信送到你手上。

只记两个你今天一定会用到的"代码名",不讲语法:

  • WiFi.begin(名字, 密码) —— 让板子以 STA 身份去连某个 WiFi;
  • WiFi.localIP() —— 连上后问板子"我的 IP 是什么",它把门牌号报给你。

(后面你会用到 WiFi.softAP(名字) 开热点、WiFi.scanNetworks() 扫周围网。)

七、改一个条件:看看周围有多少 WiFi

保持 STA 模式,做一个"睁眼看世界"的实验——让板子扫一下周围,看看这间教室里飘着多少个 WiFi。

先预测,再实验:

我改了什么我预测实际扫到
运行"扫描周围 WiFi"程序自己填写(比如 3 个?)实验后填写

把这段发给 AI:

请让板子扫描周围所有 WiFi 网络,
把每个网络的名称(SSID)、信号强度(RSSI)和加密类型,
通过串口打印出来,并在屏幕上列出前 10 个。
其余逻辑保持简洁。帮我烧录,我先预测再观察。

你多半会吓一跳:明明看不见,空气里却飘着好几个甚至十几个 WiFi。 这就是"无线"的真实样子——它一直都在。

顺手记一个量:RSSI(信号强度),单位 dBm,数字越大(越接近 0)信号越强,比如 −40 很强、−80 就很弱。

八、一条完整的"出板"链路

你的程序调用 WiFi.begin
    ↓
无线芯片按节奏把数据打到空中
    ↓
路由器接住电波
    ↓
给板子发一个 IP 门牌号
    ↓
板子从此能在局域网里收发数据
    ↓
下一步:和另一台设备对话(第 18 课 TCP/UDP)

真正要记住的只有一句:连上 WiFi = 板子拿到了一个 IP 门牌号,从此能在网里被找到、也能去找别人。

九、故障排查:连不上怎么办

现象先检查
一直卡在"连接中"SSID/密码对吗?教室 WiFi 是 2.4G 吗(板子不支持 5G 单频)?
提示"连接失败"密码错、路由器 MAC 黑名单、或信号太弱
连上但没 IP路由器 DHCP 开了吗?
手机搜不到我开的热点AP 代码真跑了吗?热点名有乱码吗?

把现象如实告诉 AI,一次让它教你查一件事。

💡 老规矩:"连不上"是观察,"密码填错"是推测。 推测要靠日志和实验验证。

十、过关检查

不看 AI,自己说:

  1. 用 I2S 送声音的比喻,讲讲 WiFi 也是在"按节奏送数字"——只是传送带去了哪?
  2. STA 和 AP 有什么不一样?各举一个生活例子。
  3. 板子连上路由器后拿到了哪三样东西?IP 是干什么的?
  4. SSID、IP、MAC 分别像楼里的什么?
  5. WiFi.beginWiFi.localIP 各自干什么?
  6. 你扫到的 WiFi 里,信号最强的那个 RSSI 大概多少?说明什么?

十一、还能玩什么

方向想法继续想
教室 WiFi 雷达扫描周围 WiFi,按信号强度排序画成条形怎样用 RSSI 判断"哪台设备离板子近"?
板子当热点信标不开外网,只让手机连上来显示欢迎语没有互联网,两块板能互相说话吗?(第 18 课)
联网状态灯连上绿灯、断了红灯,BOOT 键手动重连断线后怎么自动重连最省电?
信号巡逻车板子走动记录每个位置 RSSI,找信号死角怎样把"位置+信号"变成一张图?

想做"板子去网上找一个 AI 聊天"?那需要板子既能连 WiFi、又会一套"网上对话"规则——第 19 课(HTTP/JSON)和第 6 章 AI 的事。这课的"拿到 IP",就是那扇门的第一道缝。

本节配套资源 · 在线烧录

查看全部固件 →

下列演示程序已编译为可烧录固件。把你的 ESP32-S3 触摸屏板 用 USB 接上电脑(需 Chrome / Edge 浏览器),点「在线烧录」即可直接写入,无需安装任何软件。

第 17 课 · 板子连路由器
可烧录

板子以 STA 模式连上教室 WiFi,屏幕显示自己的 IP 和 MAC。烧录前把 SSID/密码占位符改成真实 WiFi。

17 网络通信
第 17 课 · 板子自己开热点
可烧录

板子变成 AP 热点,手机能搜到并连上它——不靠路由器也能组一张小网。

17 网络通信
第 17 课 · 扫描周围 WiFi
可烧录

扫出飘在教室空气里的 WiFi 名字和信号强度,把看不见的无线电变成看得见的清单。

17 网络通信