Arduino ESP32当作FTP服务器 访问SD卡文件

ESP32当作FTP服务器 访问SD卡文件


  • 通过 MobaXterm软件FTP访问ESP32,查看SD卡,并下载和上传文件演示。
    在这里插入图片描述

该项目原创来源于一位日本的开发者,今天来学习一下,但是也有国内开发者,在此基础上做了一版改进,我将会在下文当中,介绍如何搭建和使用。

  • 开源项目原地址(采用的是镜像地址,国内访问无障碍):https://hub.fastgit.org/robo8080/ESP32_FTPServer_SD
  • 国内开发者在此基础上改的一版的地址:https://github.com/MollySophia/ESP32_FTPServer_SD

访问方式:

  • 程序烧录完成后,串口打印信息
    在这里插入图片描述
  • 访问方式一:双击我的电脑,打开,在地址栏输入:ftp://esp32:esp32@192.168.0.110,按回车键,进入。具体的IP地址根据开发板串口打印信息来定的,不是我这个示例中的IP地址。
    在这里插入图片描述
  • 按回车键进入后的页面,可以看到挂载在ESP32 上的SD卡里面的额内容。
    在这里插入图片描述
  • 访问方式二:MobaXterm软件,
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

SD卡接线说明

在这里插入图片描述
在这里插入图片描述

  • 使用的是上面的VSPI这组。(如果接在了HSPI上,会导致开发板无限循环的重启)
ESP32 -----tf卡
VIN-----VCC
GND----GND
D5----CS
D19-----MISO
D23----MOSI
D18----SCK

下载和上传速度

下载和下载速度基本就是250KB/s

程序源码

#include 
#include 
#include "ESP32FtpServer.h"const char* ssid = "blablabla..."; //WiFi SSID
const char* password = "blablabla..."; //WiFi PasswordFtpServer ftpSrv;   //set #define FTP_DEBUG in ESP32FtpServer.h to see ftp verbose on serialvoid setup(void){Serial.begin(115200);WiFi.begin(ssid, password);Serial.println("");// Wait for connectionwhile (WiFi.status() != WL_CONNECTED) {delay(500);Serial.print(".");}Serial.println("");Serial.print("Connected to ");Serial.println(ssid);Serial.print("IP address: ");Serial.println(WiFi.localIP());/FTP Setup, ensure SD is started before ftp;  /if (SD.begin()) {Serial.println("SD opened!");ftpSrv.begin("esp32","esp32");    //username, password for ftp.  set ports in ESP32FtpServer.h  (default 21, 50009 for PASV)}    
}void loop(void){ftpSrv.handleFTP();        //make sure in loop you call handleFTP()!!   
}
  • ESP32FtpServer.cppESP32FtpServer.h代码过长,不在这里贴出,一起和程序源码,以网盘链接分享出来。

资源链接

链接:https://pan.baidu.com/s/1wDq3EM-2tdH2jdbvj8fK7A 
提取码:7kkj


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部