- 博客(42)
- 收藏
- 关注
原创 当物联网“芯”闯入纳米世界:ESP32-S3驱动的原子力显微镜能走多远?
本文探讨了如何利用ESP32-S3微控制器打造一台DIY原子力显微镜(AFM)。AFM通过探针“触摸”样品表面,利用原子间作用力重构纳米级表面形貌。ESP32-S3凭借其双核处理器、丰富GPIO、高精度ADC/DAC和灵活通信接口,能够胜任AFM的实时反馈控制、数据采集和扫描控制等核心任务。DIY AFM的关键在于巧妙利用廉价器件(如光驱激光头)替代昂贵部件,并通过精心的实验设计和算法实现弥补硬件不足。此外,稳定的避震系统是确保AFM精度的关键。文章展示了ESP32-S3在科学探索中的潜力,强调了基础实验逻
2025-05-22 09:39:27
1488
原创 想让OV2640在ESP32-S3上“开口说话”?先看完这篇“劝退级”保姆教程再说!
本文详细介绍了如何驱动OV2640摄像头模块,并使其与ESP32-S3微控制器协同工作。文章首先强调了理解OV2640引脚功能的重要性,特别是电源、SCCB(串行摄像头控制总线)和DVP(数字视频端口)接口。SCCB用于配置摄像头内部寄存器,而DVP则负责传输图像数据。ESP32-S3通过提供XCLK时钟信号和高效的数据处理能力,能够捕获图像并通过Wi-Fi进行实时视频流传输。文章还提到,从初始化寄存器到实现网页视频流,每一步都需要精确的时序控制和数据处理技巧。通过掌握这些技术,开发者可以成功“驯服”OV2
2025-05-22 09:27:38
1250
1
原创 “看见”的科学:摄像头如何将光影魔法转化为数字艺术?
- 摄像头不仅仅是“咔嚓”一下那么简单,从光子到数字图像,每一步都充满了精妙的物理和电子学问。- CMOS图像传感器是现代摄像头的主流核心,它依靠光电效应将光信号转化为电信号,再通过复杂的片上电路处理。- 图像信号处理器(ISP)是幕后英雄,负责将传感器输出的原始数据“美颜”成我们看到的清晰、色彩准确的照片或视频。- 理解曝光时间、光圈、ISO、白平衡等参数是拍出好照片的关键,它们共同决定了画面的亮度、清晰度、色彩和景深。
2025-05-21 10:21:19
796
原创 告别DHT11的“感动误差”!手把手教你用ESP32S3和基础电阻元件挑战高精度温湿度测量极限
### 文章总结(帮你们节约时间)- 我们将告别误差感人的DHT11,深入了解它为何让我们又爱又恨,以及为什么是时候对它说“再见,祝你(在别人的项目里)一切安好”。- 我们将从最基础的“电阻”——是的,你没看错,就是电阻——开始,探索如何利用NTC热敏电阻和湿敏电阻这两个小家伙感知真实世界的温度与湿度,并揭开它们背后的物理原理。- 我们将手把手、肩并肩地选择元器件(主角是强大的ESP32S3!),设计并搭建出我们专属的高精度温湿度传感电路,让你从电路图小白变身布线小能手(或者至少能看懂图了)。- 我
2025-05-21 09:33:20
705
原创 嘿,给你的ESP32一颗“暖男”的心:读取DHT11温湿度并在OLED上华丽展示!
### 文章总结(帮你们节约时间)- 本文将带你一步步,让冰冷的ESP32单片机化身贴心“暖男”,实时感知并播报你周围环境的“喜怒哀乐”(温湿度)。- 我们会详细介绍如何将DHT11这位“环境情报员”和OLED这块“迷你告示牌”与ESP32这位“总指挥”巧妙连接,确保硬件不出任何岔子。- 你将学会如何在Arduino IDE这片“魔法工坊”中配置环境、安装必要的“咒语库”,并逐行拆解那让一切活起来的神奇代码,让你也能轻松施展“数字魔法”。- 最后,不仅让你亲眼见证温湿度在屏幕上欢快跳动,还会为你打
2025-05-19 16:54:55
732
原创 ESP32的“有线”野望:当WiFi侠也想尝尝RJ45的稳重
- ESP32虽然自带WiFi,但在特定场景下,有线以太网(RJ45)连接因其稳定性、速度和安全性更胜一筹,别问为什么,问就是“任性”!- 要让ESP32接入有线网络,你需要一个“红娘”——以太网PHY芯片(如LAN8720),并通过RMII接口与ESP32的MAC(媒体访问控制)层“喜结连理”。- ESP32-S3不仅能玩转有线,还能化身“双面胶”,一边用WiFi连接世界,一边通过网口给你的电脑“有线上网”,充当一个迷你WiFi转有线中继器。- 整个过程涉及硬件引脚的精确连接(特别是那该死的时钟信号
2025-05-19 16:46:07
795
原创 别光知道 Wi-Fi!ESP32 和 STM32 这俩“心脏”根本不是一回事儿!
我该请哪位大侠出山呢?(以及相应的独立缓存,如指令 Cache 和数据 Cache),允许 CPU 在执行当前指令的同时,去预取下一条指令,并且可以同时进行数据读写操作,这相比于指令和数据共享同一总线的冯·诺依曼架构 (Von Neumann Architecture),能显著提高指令和数据的吞吐率,尤其是在高时钟频率下。它们就像是武侠世界里的“剑宗”和“气宗”,修炼的路线不同,达到的境界各有所长,没有绝对的孰优孰劣,只有是否适合你当前的“战斗场景”。它给你的,是那种“连接无限可能”的兴奋和创造力。
2025-04-16 10:38:37
1875
原创 不只是 `setup()` 和 `loop()`!深扒 ESP32 Arduino 程序运行前的“秘密仪式” (含代码视角)
ESP32 上电先执行芯片内部固化的 ROM Bootloader(第一阶段引导),它只负责最基础的检查和加载下一阶段引导程序。ROM Bootloader 加载并验证存储在外部 Flash (0x1000 地址) 的 Second Stage Bootloader(第二阶段引导)。Second Stage Bootloader 初始化更多硬件,读取 Flash 中的分区表 (Partition Table) 找到你的应用程序 (App) 分区,验证 App 并将其加载到 RAM。
2025-04-16 10:16:53
632
原创 ESP32S3 造反实录:我们不连 Wi-Fi 了,我们自己就是 Wi-Fi!
你的 ESP32S3 可以不依赖路由器,直接和其他 ESP32S3 小伙伴“私聊”。实现这种“秘密通讯”的关键技术叫做 ESP-NOW,是乐鑫官方提供的一种快速、低功耗的直连方案。使用 ESP-NOW,你需要知道对方的“门牌号”(MAC 地址),然后就能像发短信一样直接发送和接收数据。这种方式特别适合需要快速响应、低延迟或者没有外部网络覆盖的场景,比如遥控、传感器网络等。老铁们,有没有觉得你桌子上的 ESP32S3 有点“闷闷不乐”?
2025-04-15 15:30:28
814
原创 给 ESP32S3 一个支点,它能...共享你的 Wi-Fi?离谱路由器搭建指南
咱要把 ESP32S3 这小玩意儿变成一个能发射 Wi-Fi 信号(AP 模式),还能自己连上家里 Wi-Fi(STA 模式)的神奇设备。它不仅能自己上网,还能大方地把网络共享给连上它 Wi-Fi 的其他设备(手机、电脑啥的),扮演路由器的角色。为了让连接它的设备能自动拿到 IP 地址愉快上网,咱还得让 ESP32S3 掌握 DHCP 服务器这门“分配家产”的手艺。
2025-04-15 15:25:21
1466
1
原创 TCP是什么?不需要!使用ESP32网络层直接通信!
TCP虽然可靠但带来额外开销,ESP32能够绕过传输层,在网络层甚至链路层直接实现自定义通信协议,显著降低延迟并提高效率。使用Arduino环境为ESP32实现自定义网络协议不需要深厚的网络知识,通过esp_wifi原生API和lwip库即可实现原始套接字通信和802.11帧发送。自定义协议特别适合对延迟敏感、资源受限或需要高效率的场景,如实时控制系统、传感器网络和低功耗应用。虽然舍弃了TCP的可靠性,但通过自定义确认机制、校验和和简单加密,仍可构建稳定且安全的通信系统。帧格式。
2025-04-14 10:45:02
856
原创 预防WIFI攻击,保证网络安全
WiFi协议存在多种安全漏洞,从去认证攻击到KRACK和PMKID攻击,这些都源于协议设计中的历史遗留问题。ESP32S3微控制器结合Arduino环境,成为强大的WiFi安全研究平台,可用于网络扫描、监控和安全测试。通过升级到WPA3、启用受保护管理帧(PMF)和采用企业级认证方案,可以有效防御大多数WiFi攻击。网络安全知识应用于保护自己的网络和合法安全研究,而非干扰他人网络,这既是技术伦理也是法律要求。
2025-04-14 10:06:19
1207
1
原创 点亮世界的第一步:ESP32-S3的GPIO点灯详解
深入解析了ESP32S3的GPIO架构及其输入输出功能。从零开始实现了基本LED控制与PWM调光功能。详细说明了按键输入的工作原理与消抖技术。展示了如何通过IO0捕获按键输入并用IO9控制LED实现交互效果。你是否曾想过,当我们按下一个开关,一盏灯就亮起来的背后,究竟发生了什么?这看似简单的"开灯"行为,在微控制器的世界里,却涉及到一整套精密的电子信号控制机制。今天,我们将深入探索ESP32-S3这款强大的微控制器,如何通过其GPIO(通用输入输出)接口,点亮一个小小的LED灯。
2025-04-12 09:59:10
1433
原创 ESP-IDF 开发框架:探索ESP32的强大底层世界
介绍了ESP-IDF作为乐鑫ESP32系列芯片的官方开发框架。对比了Arduino、MicroPython和ESP-IDF三种ESP32开发方式的优缺点。详细讲解了ESP-IDF的核心特性和多层架构设计。展示了ESP-IDF的开发流程和应用场景。你是否曾经好奇过,那些精巧的物联网设备背后蕴藏着怎样的技术魔力?又或者在琳琅满目的嵌入式开发平台中,迷失了方向?今天,就让我们一起揭开ESP-IDF的神秘面纱,探索这个赋予ESP32芯片生命力的强大框架!
2025-04-12 09:45:26
1262
原创 玩转ESP32-S3:UDP网络通信技术详解
ESP32S3的UDP通信功能。详细讲解了UDP与TCP的区别和适用场景。解释了UDP的安全问题及解决方法。展示了如何用ESP32S3实现两块板子之间的UDP通信。你是否曾经想过,当你按下手机上的发送按钮,你的消息是如何瞬间传递到朋友的手机上的?或者当你观看在线视频直播时,视频画面是如何实时传输到你的屏幕上的?这些背后的魔法,很可能是UDP协议在发挥作用!今天,我们将深入探讨UDP协议,特别是如何在功能强大的ESP32-S3微控制器上实现UDP通信。
2025-04-11 09:03:44
2014
原创 ESP32S3 TCP直接通信实战指南
详细解析了TCP协议及其在物联网中的重要性。讲解了TCP通信的三次握手和四次挥手流程。提供了完整的ESP32S3 TCP服务器和客户端代码实现。分析了代码的工作原理和TCP通信的健壮性。探讨了ESP32S3 TCP通信的扩展应用场景。你是否曾想让两个ESP32S3开发板像多年好友一样无障碍地聊天?没错,我们今天就要实现这个看似简单却又充满挑战的任务 - 让两块ESP32S3通过TCP协议互相通信!这就像是教两个陌生人如何用同一种语言流畅对话,听起来容易,做起来可有点门道!
2025-04-11 08:56:34
890
原创 MQTT协议:IoT通信的轻量级选手
MQTT协议是一种轻量级的发布/订阅通信协议。MQTT通信包括连接建立、订阅、发布和断开等过程。MQTT基于TCP/IP,其通信过程涉及多种控制包和数据包。ESP32S3可以通过MQTT协议接收消息来控制IO9引脚上的LED。想象一下,如果互联网是一个繁忙的城市,那么MQTT就像是一个高效的快递系统。而传统HTTP通信?那就是你不得不亲自上门取包裹的情况!
2025-04-08 18:58:11
1707
原创 ESP32S3与MQTT:让你的智能设备开口说话
MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是一个轻量级的发布/订阅消息传输协议,专为资源受限的设备和低带宽、高延迟或不可靠的网络设计。它就像是物联网世界中的"微信",只不过这个"微信"更加节能、高效。为什么说它轻量级?一个MQTT消息头部可能只有2字节,而HTTP的头部动辄几百字节!这在带宽受限的环境中,简直就是从"大餐"到"便当"的华丽转变!
2025-04-08 18:48:22
1145
原创 ESP32-S3的串口通信:从理论到实践的华丽转身
从最基础的LED控制到复杂的设备通信协议,从简单的调试信息到完整的人机交互界面,串口通信就像是ESP32-S3的一把万能钥匙,能够打开各种应用的大门。毕竟,有时候最简单的解决方案往往是最可靠的!这段代码简直就像一个尽职的服务员——时刻关注着是否有"顾客"(数据)到来,一旦有,立即"接单"(读取数据)并执行相应的"服务"(控制LED)。现在,打开Arduino IDE的串口监视器(Serial Monitor),确保波特率设置为115200(要和代码中的一致,就像两个人说话要用同一种语言一样)。
2025-04-07 11:16:39
1686
原创 串口通信:电子设备间的悄悄话从 基本原理到ESP32-S3实现
这种通信方式看似简单,却支撑了数十年的技术发展,从古老的调制解调器到现代的微控制器,串口通信就像是那个历经岁月却依然精神矍铄的老者,依然在电子世界的舞台上熠熠生辉!常见的波特率有9600、115200等,数字越大,传输越快,但对时序精度的要求也越高。这个标准使用±3V到±15V的电压来表示逻辑状态,其中负电压表示逻辑"1",正电压表示逻辑"0"(是的,这里是倒着的!它就像是一位精通两种语言的翻译官,一边听取并理解平行数据(计算机内部的语言),一边将其翻译成串行数据(传输线路上的语言)发送出去,反之亦然。
2025-04-07 11:16:04
987
原创 STM32 GPIO底层揭秘:寄存器与引脚的奇妙舞蹈
详细介绍了STM32 GPIO的内部结构和工作原理深入解析了所有GPIO相关寄存器及其每个位的功能展示了如何通过直接操作寄存器控制GPIO引脚提供了实用的寄存器编程示例,包括LED控制分析了寄存器操作的优势和常见陷阱你是否曾经思考过,当你写下那行时,STM32内部到底发生了什么?那个小小的LED为何能够如此听话地亮起或熄灭?今天,我们将掀开STM32 GPIO的神秘面纱,一探究竟这背后的数字魔法!
2025-04-02 09:26:24
538
原创 STM32寄存器与标准库点亮LED大揭秘
寄存器就像是单片机的"控制面板"上的一个个开关和指示灯。通过调整这些"开关"(写操作),我们可以控制单片机的行为;通过查看这些"指示灯"(读操作),我们可以了解单片机的状态。寄存器实际上是芯片内部的一小块存储区域,每个位都对应着特定的硬件功能。直接操作寄存器就像是直接手动调整机器的每个齿轮和杠杆,相比使用自动化系统(标准库),它更接近硬件本质。// GPIO引脚配置结构体// 引脚号:0~15// 模式:输入、输出、复用、模拟// 输出类型:推挽、开漏// 速度:低、中、高、超高。
2025-04-02 09:24:29
578
原创 ESP32与EC11旋转编码器的奇妙配对:转啊转,亮起来!
详细介绍了EC11旋转编码器的工作原理及接口特点解析了ESP32如何处理编码器的旋转和按键信号展示了使用EC11控制LED亮度及开关的完整实现提供了抗抖动和中断处理的优化方案与代码解析。
2025-04-01 14:26:58
1000
原创 ESP32与超声波测距模块的奇妙之旅
详细讲解了超声波测距模块HC-SR04的工作原理介绍了ESP32如何通过GPIO接口与超声波模块进行通信展示了如何根据测量距离智能控制LED亮灭提供了完整代码和接线方案,助你快速实现项目。
2025-04-01 14:25:48
1660
原创 ESP32S3网页控制内部FLASH:打造你的私人云存储系统
想象一下,在一个仅有邮票大小的芯片上建立一个迷你网盘,随时随地通过手机或电脑访问、上传、下载甚至删除文件。听起来是不是很酷?这正是我们今天要实现的项目:利用ESP32S3的强大功能,通过网页界面控制其内部FLASH存储。ESP32S3作为ESP32系列的高性能新成员,不仅拥有双核处理器、丰富的外设接口,还具备大容量的内部FLASH和PSRAM。这为我们构建各种本地存储应用提供了绝佳平台。无论是数据记录器、离线缓存,还是简易网盘,都可以在这个小小的芯片上实现。或许你会问:为什么不直接使用SD卡呢?好问题!虽然
2025-03-31 09:03:02
1014
原创 ESP32S3控制舵机:当电子大脑遇上机械肌肉
电机的分类及舵机在其中的位置舵机的内部结构和工作原理ESP32S3的强大功能及其与舵机控制的完美结合EC11旋转编码器的使用方法及与ESP32S3的配合详细的硬件连接和Arduino代码实现。
2025-03-31 08:58:59
1766
原创 ESP-NOW在Arduino上的神奇之旅:ESP32S3无线通信实战指南
你是否曾经想过,如果两个ESP32S3开发板能像两个好朋友一样自由交谈,而不需要复杂的网络设置,那该多酷?或者你是否厌倦了传统WiFi通信那令人头疼的连接过程和高耗电量?今天,我们就来一起探索ESP-NOW这个"通信界的轻量级拳击手",看看它如何在ESP32S3上大显身手!
2025-03-28 16:17:45
1683
原创 深入探秘ESP-NOW:WiFi通信协议的轻量级高手
你是否曾经好奇,当两个ESP32S3芯片"窃窃私语"时,它们背后的通信机制究竟是如何运作的?ESP-NOW这个看似简单的通信协议,其实内部蕴含了一整套精妙的设计!今天,让我们掀开ESP-NOW的神秘面纱,从网络底层视角一探究竟,看看这位"无线通信界的忍者"如何在WiFi的世界中轻装上阵!
2025-03-28 16:16:06
1039
原创 控制算法大乱斗:PID及其门派兄弟们的江湖故事
详细介绍了PID及类似控制算法的工作原理和特点对比分析了各种控制算法在平衡车应用中的优缺点提供了六种控制算法的Arduino实现代码探讨了如何根据项目需求选择合适的控制算法阐述了混合控制方法的优势与应用场景想象一下控制系统是一辆需要你驾驶的车,而控制算法就是你的驾驶技巧。过弯太快会翻车,太慢又赶不上时间,加速太猛会让乘客不适,刹车太急会撞上方向盘…听起来很难掌握,对吧?这正是控制算法要解决的问题!今天,就让我们深入了解控制算法的江湖,看看除了大名鼎鼎的PID外,还有哪些算法高手在暗中较劲。
2025-03-27 16:52:20
1665
原创 揭秘FPGA:硬件世界的变形金刚
详细介绍了FPGA的定义与基本架构(可编程逻辑块、查找表、触发器等)。对比FPGA与单片机的差异,突出FPGA的并行处理能力和硬件级速度优势。强调学习FPGA需要重塑思维模式,避免照搬单片机的顺序编程思路。展示了FPGA在高频交易、图像处理、AI加速等多个领域的应用案例你有没有想过,如果硬件也能像软件一样随时改变自己的功能和结构会怎样?想象一下,一块芯片上午可以是一个图像处理器,下午变成一个加密引擎,晚上又摇身一变成为一个网络控制器!这不是科幻电影中的情节,而是FPGA带给我们的现实魔法!
2025-03-27 16:45:07
1061
原创 ESP32S3的WIFI底层原理与应用:从连接到控制
ESP32S3的WIFI功能基于完整的802.11协议栈实现。详细讲解了WIFI通信的底层原理及Arduino中的实现方式。解释了数据在WIFI通信过程中的流动路径和处理机制。展示了如何创建Web服务器并通过网页控制IO9连接的LED。你是否曾经想象过,那个小小的ESP32S3芯片是如何神奇地连接到无线网络的?那种感觉就像是一个迷你外交官,能够流利地与互联网世界对话!今天,我们就要揭开这个神秘的面纱,深入探索ESP32S3的WIFI底层原理和在Arduino环境中的实现方式。准备好了吗?
2025-03-26 14:22:08
1009
原创 ESP32S3的WIFI魔法:打造你的智能网络控制系统
详细介绍了WIFI技术的基本原理和工作机制讲解了ESP32S3的WIFI功能和特点,展示其作为接入点(AP)的能力展示了如何使用ESP32S3创建WIFI热点并搭建Web服务器详细说明了如何构建一个网页控制界面并通过192.168.4.1访问实现了通过网页远程控制ESP32S3的IO9引脚连接的LED灯想象一下,你的Arduino项目突然有了翅膀,能够在无形的电磁波中自由飞翔,与世界各地的设备悄悄地窃窃私语。这不是科幻小说的情节,而是ESP32S3芯片带给我们的WIFI魔法!
2025-03-26 09:31:33
559
原创 无形电波背后的有形智慧-揭秘Arduino蓝牙函数,从协议栈到ESP32S3的应用
深入剖析了蓝牙技术的底层协议架构与工作原理详细解释了蓝牙各层协议的功能与交互方式揭秘了ESP32S3蓝牙栈的内部实现机制分析了Arduino蓝牙函数如何调用底层硬件资源展示了如何通过蓝牙协议控制ESP32S3的IO9引脚点亮LED。
2025-03-25 10:23:32
962
原创 Arduino蓝牙奇妙世界 - 用ESP32S3从理论到实战点亮LED
深入解析了蓝牙技术的基本原理与发展历程详细介绍了低功耗蓝牙(BLE)的特点与优势阐述了ESP32S3的BLE功能及特性讲解了Arduino环境下的BLE相关函数与库提供了完整的ESP32S3使用BLE控制LED的代码实例。
2025-03-25 10:15:52
1393
原创 深入探索 Arduino定时器中断的底层奥秘
ESP32S3的GPIO输入功能。详细讲解了机械按键的工作原理。解释了机械按键抖动问题及解决方法。展示了如何用IO0接收按键信号并用IO9控制LED。
2025-03-24 09:51:51
531
原创 为你的项目注入心跳与反射--ESP32S3 Arduino 定时器和中断
详细介绍了ESP32S3的定时器特性和功能。阐述了中断机制的工作原理及其重要性。提供了2秒翻转单个LED的定时器示例代码。展示了如何使用多个定时器控制三个LED以不同频率闪烁。讨论了定时器和中断在实际应用中的重要性。你是否曾经想过,为什么我们的心脏能够自律地跳动,而大脑能够在被针刺到的瞬间迅速做出反应?在微控制器的世界里,定时器就像心脏一样提供着规律的"心跳",而中断则像神经反射一样让芯片对外界刺激做出迅速响应。今天,就让我们一起深入探索ESP32S3这颗强大"大脑"中的定时器和中断机制。
2025-03-24 09:38:10
377
原创 ESP32S3 GPIO全模式解析:掀开Arduino底层的神秘面纱
ESP32S3的GPIO输入输出功能及底层实现原理。详细讲解了ESP32S3的8种GPIO工作模式。解释了ESP32S3 GPIO寄存器配置及底层驱动机制。展示了如何从底层实现LED控制和按键输入功能。
2025-03-22 09:16:47
1678
1
原创 RGB就是战斗力!!使用Arduino和ESP32S3点亮彩色LED
RGB LED的三原色原理及如何混合创造多种颜色。详细解释了不同颜色LED需要不同电阻值(红色220欧姆,绿蓝1k欧姆)。展示了如何用ESP32S3的GPIO4/5/6控制RGB LED的基本开关。介绍了PWM技术在LED亮度控制中的应用,实现彩虹色变换效果。
2025-03-22 09:07:13
1645
原创 探索Arduino GPIO底层实现的奥秘
pinMode()设置引脚为输入或输出模式,通过配置寄存器实现。输入模式接收外部信号,输出模式发送信号到外部设备。设置引脚电平(HIGH或LOW),通过修改输出控制寄存器实现。读取引脚当前状态(高电平或低电平),通过访问输入状态寄存器读取值。当我们使用Arduino IDE编写代码时,pinMode()和这些函数似乎是轻而易举就能使用的工具。但你是否好奇过这些函数是如何在芯片内部工作的?让我们一起揭开这些函数的底层神秘面纱。
2025-03-21 11:09:37
817
原创 GPIO输入的神奇之旅:用机械按键点亮LED
ESP32S3的GPIO输入功能。详细讲解了机械按键的工作原理。解释了机械按键抖动问题及解决方法。展示了如何用IO0接收按键信号并用IO9控制LED。
2025-03-21 10:21:15
560
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人