新闻详情

新闻详情

首页 / 资讯中心 / 详情

HoloCubic_AIO FTP服务完整指南:文件管理器APP背后的工作原理

发布时间:2026/10/2 16:22:06来源:尧图网络
HoloCubic_AIO FTP服务完整指南:文件管理器APP背后的工作原理
HoloCubic_AIO FTP服务完整指南文件管理器APP背后的工作原理【免费下载链接】HoloCubic_AIOHoloCubic超多功能AIO固件 基于esp32-arduino的天气时钟、相册、视频播放、桌面投屏、web服务、bilibili粉丝等项目地址: https://gitcode.com/GitHub_Trending/ho/HoloCubic_AIOHoloCubic_AIO是一款基于 ESP32 的多功能 AIO 固件其中的FTP 服务是「文件管理器File ManagerAPP」的核心小电视开机后变成一个小型 FTP 服务器你在电脑上用任意 FTP 客户端就能直接读写它 TF 卡里的图片、视频和字体文件整个过程无需拆机、无需编程。本文带你完整看懂这套 FTP 服务背后的实现原理与使用方法。文件管理器APP能做什么 进入File Manager应用后屏幕会显示当前设备的WiFi 名称、IP 地址和端口21并提示 Wait connect....上传文件把 PC 上的图片.bin/.jpg、视频.mjpeg、字体直接传到 TF 卡下载备份把卡里的文件取回电脑增删改目录新建文件夹、删除文件、改名这个 APP 本身不做任何文件解析它只是把 FTP 服务亮出来的入口界面真正干活的是一套内置的 FTP 服务器。FTP服务的工作原理两个端口 一台状态机 ⚙️21 端口命令通道控制连接FTP 协议天然分为控制和数据两条链路。在 ESP32FtpServer.h 中可以看到关键定义宏定义值作用FTP_CTRL_PORT21命令端口接收 USER/PASS/RETR/STOR 等指令FTP_DATA_PORT_PASV50009被动模式下的数据端口真正传文件FTP_TIME_OUT5 分钟客户端无操作自动断开FTP_BUF_SIZE1024 字节文件读写缓冲区大小客户端连上 21 端口后会先收到一条220--- Welcome to FTP for ESP8266 ---的欢迎语然后进入USER → PASS两步认证。认证凭据在 file_manager.cpp 中硬编码用户名holocubic密码aio50009 端口数据通道被动模式文件本体不走 21 端口。客户端发送PASV命令后服务器回复自己的 IP 和 50009 端口见 ESP32FtpServer.cpp 中的PASV分支客户端再单独建立一条数据连接到该端口。下载RETRdoRetrieve()从 TF 卡按 1KB 一块读出逐块写入数据连接上传STORdoStore()反向进行把收到的字节写回 TF 卡列目录LIST / MLSD / NLST遍历当前目录把文件名、大小、DIR标记按标准 FTP 格式发回handleFTP() 里的状态机整个服务是非阻塞的file_manager_app的主循环每轮都会调用一次ftpSrv.handleFTP()file_manager.cpp。它内部用一个cmdStatus状态机推进等待连接→ 2.空闲→ 3.等待用户名→ 4.等待密码→ 5.执行命令命令执行部分processCommand()完整实现了常用 FTP 指令CWD切换目录还专门做了兼容 xftp 和 Windows 自带 ftp 客户端的处理、CDUP、PWD、DELE删除、MKD建目录、TYPE、ABOR、QUIT等并带 5 分钟超时踢人机制非常适合小内存的 ESP32 环境。底层SdCard 驱动读写 TF 卡 FTP 服务不直接操作文件系统而是通过 sd_card.cpp 里的SdCard类封装 TF 卡基于SD_MMC提供了一组干净的接口listDir()—— 目录树遍历返回双向链表节点createDir()/removeDir()—— 建目录 / 删目录writeFile()/readFileLine()—— 文本读写readBinFromSd()/writeBinToSd()—— 二进制读写所以你在 FTP 里看到的/image/、/movie/、/weather/等目录其实就对应 TF 卡根目录下这些文件夹仓库里 放置到内存卡/ 目录给出了各文件夹的标准内容模板。连接步骤手把手接入 HoloCubic FTP 服务 小电视开机进入File Manager应用固件收到APP_MESSAGE_WIFI_CONN消息后开启 WiFi并把 IP 显示在屏幕上此时ftpSrv.begin(holocubic, aio)被调用两个端口开始监听手机/电脑连上热点默认热点名为HoloCubic_AIO见 network.cpp打开任意 FTP 客户端如 FileZilla、Xftp填入主机屏幕显示的 IP端口21用户名holocubic密码aio之后即可像管理本地磁盘一样拖拽上传下载文件 小知识APP 每 20 秒会向系统发送一次APP_MESSAGE_WIFI_ALIVE心跳见 file_manager.cpp防止空闲的 WiFi 连接被系统自动回收。代码导航相关文件都在哪里 模块路径FTP 服务器实现AIO_Firmware_PIO/src/app/file_manager/ESP32FtpServer.cppFTP 服务器接口AIO_Firmware_PIO/src/app/file_manager/ESP32FtpServer.h文件管理器 APP 逻辑AIO_Firmware_PIO/src/app/file_manager/file_manager.cpp文件管理器界面AIO_Firmware_PIO/src/app/file_manager/file_manager_gui.cTF 卡驱动AIO_Firmware_PIO/src/driver/sd_card.cppWiFi/热点管理AIO_Firmware_PIO/src/network.cpp常见问题 ❓Q连接一直卡在 Wait connect....先确认手机/电脑已连上HoloCubic_AIO热点且 IP 与屏幕显示一致WiFi 就绪后界面会自动变为 Connect succ。Q可以用 Web 浏览器直接访问吗不行。21 端口是 FTP 控制协议不是 HTTP请一定使用 FTP 客户端。Q上传的文件放在哪里TF 卡根目录即SD挂载点/下。建议按 放置到内存卡/ 的目录规范分类存放相册、视频、天气动画才能被对应 APP 识别。Q长时间不操作会怎样5 分钟无指令会被handleFTP()判定超时530 Timeout并主动断开重新连接即可。从 21 端口认证到 50009 端口传文件再到 SdCard 驱动落盘 TF 卡——HoloCubic_AIO 用一个约千行的轻量 FTP 服务器就实现了完整的文件管理能力。理解了这个原理你也可以为自己的 ESP32 项目移植同样的「屏幕显示地址 FTP 传输」方案。【免费下载链接】HoloCubic_AIOHoloCubic超多功能AIO固件 基于esp32-arduino的天气时钟、相册、视频播放、桌面投屏、web服务、bilibili粉丝等项目地址: https://gitcode.com/GitHub_Trending/ho/HoloCubic_AIO创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

(论文速读)AdaCluster:让视频 DiT 的稀疏注意力学会“区别对待”Q 和 K 2026/10/2 17:24:20

(论文速读)AdaCluster:让视频 DiT 的稀疏注意力学会“区别对待”Q 和 K

论文题目: AdaCluster: Adaptive Query-Key Clustering for Sparse Attention in Video Generation 中文翻译: AdaCluster:面向视频生成稀疏注意力的自适应 Query-Key 聚类 会议: CVPR 2026 源码: https://github.com/…

阅读更多 →
Pa、kPa、bar、MPa怎么换算 2026/10/2 17:24:19

Pa、kPa、bar、MPa怎么换算

单位换算Pa、kPa、bar、MPa1 bar 100 kPa 1 kPa 1000 Pa 1 MPa 1000 kPa整合一行直接写表达式(不用函数,适合的公式)bar 转 kPa:kPa bar * 100.0;kPa 转 bar:bar kPa / 100.0;mm是毫米

阅读更多 →
Qwerty Learner 自定义词典怎么导入?3 步走完,附 5 个高频坑 2026/10/2 17:23:59

Qwerty Learner 自定义词典怎么导入?3 步走完,附 5 个高频坑

Qwerty Learner 自定义词典怎么导入?3 步走完,附 5 个高频坑 【免费下载链接】qwerty-learner 为键盘工作者设计的单词记忆与英语肌肉记忆锻炼软件 / Words learning and English muscle memory training software designed for keyboard workers 项目…

阅读更多 →
基于Django的宠物服务管理系统:从数据建模到远程调试实战 2026/10/2 17:23:52

基于Django的宠物服务管理系统:从数据建模到远程调试实战

如果你最近正在为毕业设计发愁,我建议你认真考虑一个方向:基于Django的宠物服务管理系统。这个选题我前前后后带过不少学弟学妹做过,从需求梳理到代码实现,再到远程调试、论文撰写,踩过的坑基本都见过。它不是那种一眼…

阅读更多 →
法务知识图谱构建实战:从Neo4j本体建模到问答系统落地 2026/10/2 17:23:52

法务知识图谱构建实战:从Neo4j本体建模到问答系统落地

简介:面向法律智能与知识图谱应用场景的完整项目码源包,适合NLP算法工程师、法律科技从业者及高校相关方向学生,可作为行业级法务问答系统的参考基线。项目围绕法务智能知识图谱展开,涵盖20万法务问答与法律资讯问答功能&#xff…

阅读更多 →
元初混沌体系 第四卷 太赫兹高频通信与超宽带频谱体系:第九十五篇 智慧工厂、智慧城市太赫兹超大带宽工业应用范式 2026/10/2 17:23:52

元初混沌体系 第四卷 太赫兹高频通信与超宽带频谱体系:第九十五篇 智慧工厂、智慧城市太赫兹超大带宽工业应用范式

第九十五篇 智慧工厂、智慧城市太赫兹超大带宽工业应用范式前置提要本篇隶属于元初混沌体系・第四卷《太赫兹高频通信与超宽带频谱体系》第六单元全域组网、产业落地、代差升维总纲(91–108),以元初混沌一气频谱流转公理、频域五行制衡定律为…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉