您当前的位置:首页 > 科技 > 资讯

什么?不连电脑,用Wi

2020-08-01 21:21:07 来源:  作者: 朝闻网
摘要:想象一个场景:你只需将带SD卡的设置装备摆设拔出任何一个USB端口,它会自行创立一个FTP效劳器,统一个局域网下,手机、电脑等能联网的设置装备摆设均可以完成跟SD卡停止无线数据发

想象一个场景:

你只需将带SD卡的设置装备摆设拔出任何一个USB端口,它会自行创立一个FTP效劳器,统一个局域网下,手机、电脑等能联网的设置装备摆设均可以完成跟SD卡停止无线数据发送以及接纳。

不再需求重复插拔,拿个卡拷来拷去了,是否是很便当?

明天,咱们要引见的便是如许一个名目。

所需资料以及东西

硬件模块

x1 ESP8266 ESP-12E

x1 MicroSD卡

x1 MicroSD卡适配器

x1 双排10脚直角排针

x1 FDTI模块

x1 3.3v稳压器

x1 全能PCB板

软件使用顺序以及正在线效劳

Arduino IDE

必备东西

烙铁

无铅焊锡丝

制造布景

USB的计划初志是通用性,次要目的是完成热插拔、超等简单与其余设置装备摆设对于接,但多年来这个设法主意变患上凌乱。

使人感触懊丧的是USB接口有那末多差别的变种,任务体式格局与它们的名字完整冲突。抱负状况是每一个USB接纳器该当与任何USB设置装备摆设兼容!但理想状况是你不克不及把U盘或者键盘插正在充电器里,而后盼望它能任务。

这便是我启动这个复杂名目“无线读卡器”来完成这个“通用端口”创意的缘由。这算是个十分好的创意!

咱们所要做的便是把它拔出恣意USB接纳器,不论哪个!

一旦您把它拔出USB,它会创立一个热门,而后咱们就能够衔接到这个热门,正在任何兼容设置装备摆设中翻开恣意FTP客户端顺序。经过此配置,咱们能够用无线体式格局从SD卡复制文件,和往SD卡保管文件!

购置资料

起首咱们需求预备上面这些资料:

ESP-12E

SD卡

Micro-SD适配器

直排针

90度排针

导线

FTDI模块

Arduino Nano及USB线

USB公头

全能PCB板

烙铁

焊锡丝

第1步:看法SD卡

SD是Secure Digital的首字母缩写,它相似于你的Pendrive,但尺寸更小,价钱更廉价。

SD卡与微把持器的衔接有两种体式格局,辨别是SDIO以及SPI。

年夜少数SD卡都具有很多规范功用,而且具备相反的物理以及电气规格。

SPI以及SDIO之间的实践差别次要表现正在软件层面。具体信息可前去理解SD、SDIO 以及MMC接口。

复杂说便是SDIO更快但更难完成,SPI较慢但更易完成。因为年夜少数微把持器默许撑持SPI,以是咱们就挑选SPI吧。

如下是SD卡的SPI引脚界说:

Pin-1 - CS

Pin-2 - DI

Pin-3 - GND

Pin-4 - VCC

Pin-5 - SCLK

Pin-6 - GND

Pin-7 - DO

Pin-8 - NC

Pin-9 - NC

第2步:改装SD卡适配器

你可使用任何撑持Arduino以及ESP8266的SD卡模块,但关于本项,咱们将运用MicroSD卡适配器,并将对于它停止改装,改装后能够替换SD卡模块。

起首,干净SD卡适配器的触点。接着将90度排针的插脚间接焊接到适配器触点上。焊接实现后,反省触点之间有无短路。而后一个一个地卸下玄色分开块,以便把它放回原处时,它会与全能PCB板平齐。

裁剪全能PCB板使其与SD卡适配器完满婚配,且有一些额定的空间来装置USB接口。

固然也能够不必SD卡适配器,间接对于SD卡做异样的处置,可是危害很年夜,相称简单破坏SD卡。

第3步:装置USB插头

咱们将运用USB接口自身给SD卡供电。因而咱们运用USB公头。USB凡是有4个引脚,两头2个引脚用于数据传输,边上2个引脚用于电源以及接地。因为咱们只要要电源,以是剪失落数据引脚,只保存GND以及VCC。

把USB公头插正在SD卡适配器前端咱们以前预留的空间那边,而后焊接到位。但这尚未真正处理供电成绩!由于SD卡需求3.3伏的电压,可是USB电源是规范的5V,假如你间接插上5V电源,你极可能会烧坏SD卡。

这就处理了SD卡的电压适配。您能够检查电路图,理解更具体的接线

第4步:把一切元件跟ESP-12E整合

如今要读写SD卡上的数据,咱们将运用ESP12E WIFI模块,固然它比ESP32慢。但挑选哪个其实不紧张,我会正在前面的步调中阐明缘由。

起首将EN焊接到ESP12E的VCC上,这是用来启动IC的。假如使能引脚不衔接到高电平旌旗灯号,IC将没有会启动。而后将ESP12E放正在全能PCB板反面,将ESP12E的SPI引脚焊接到SD卡上对于应的SPI引脚上。衔接细节请检查电路图。

第5步:比拟HTTP以及FTP

正在进修编程以前,我对于下载以及上传的任务道理做了一些研讨,当时我偶尔碰着FTP这个词。FTP是文件传输和谈的首字母缩写,它是用来正在效劳器以及客户机之间传输文件的,它与平凡的HTTP和谈完整差别,后者是用来正在客户机以及效劳器之间发送恳求以及接纳呼应的,并且数据量十分小。

FTP正在传输文件方面比HTTP快,由于它是特地为传输文件计划的。因而,正在这个名目中我挑选运用FTP。FTP效劳器运转正在ESP-12E上,咱们能够经过这个FTP效劳器跟SD卡停止数据推送与获得。

第6步:应战FTP库

我不找到一个十分活泼的或许特地为ESP8266开辟的FTP库。可是颠末一番发掘,我碰到了David Paiva,他将一个Arduino版本的FTP效劳器移植到ESP8266,惋惜它只撑持SPIFFS,没有撑持SD卡。

终究功夫没有负故意人,我发明有人支出积极把David Paiva的FTP库从撑持SPIFFS转换成撑持SD卡了。可是,当我测验考试运用这个库时,碰到了两个成绩。起首,我发明这个网页是韩语的,以是我不能不坐上去一点一点翻译一切的工具,以便正在我能实践运用它以前晓得外部的任务道理。第二个成绩是,我必需修正现有的SD库来引入他所做的变动,这让人觉得很蠢笨。

因而我比拟了一下这两个库,一个来自David Paiva,另外一个来自韩国网站,而后做了一些小的窜改,把一切代码整合到一个名目里,如许就不用再装置别的额定的库了。你能够从我的Github帐户中检查名目的完好代码。

第7步:对于ESP-12E编程

因为ESP-12E不内置的烧录器,因而咱们需求运用一个内部的烧录器,比方FDTI模块。以是我用多少根导线以及排母插座制造了一个适配器,有了这个,咱们能够暂时焊接到ESP12E并经过FTDI模块停止烧录。

详细接线办法是:

GND衔接到FDTI模块的GND

Rx衔接到FDTI模块的Tx

Tx衔接到FDTI模块的Rx

GPIO15衔接到FDTI模块的GND

GPIO0衔接到FDTI模块的GND

VCC衔接到FDTI模块的VCC

最初,运用Arduino IDE上传Github高低载的代码。

一旦顺序上传终了,你就能够焊失落衔接到ESP12E烧录器的导线。

第8步:半途而废!

只要正在适配器内拔出MicroSD卡,而后将全部设置装备摆设拔出任一个USB兼容设置装备摆设,如许就能够开启设置装备摆设了!可是先别焦急,另有一些工作需求留意,为了平安起见,要确保USB端口的输入电流年夜于1安培。由于ESP12E模块正在传输文件时会耗费更多的电流。

第9步:运用设置装备摆设

一旦通电启动,设置装备摆设就会创立一个名为SD Reader的热门。运用写代码里的暗码衔接到此热门。而后依据衔接到ESP12E的设置装备摆设范例,下载响应的FTP客户端软件,假如您运用PC就下载WinSCP或者Filzella,假如您运用安卓设置装备摆设就下载AndFTP。

以安卓设置装备摆设为例,装置实现后,翻开AndFTP并填写账号暗码,配置FTP客户端。对于我来讲,我坚持代码中运用默许的用户名以及暗码“ESP8266”。以是,用户信息运用默许值,主机运用192.168.12.7。最初,衔接到FTP效劳器。

衔接上后,就能够从SD卡下载任何文件,也能够将文件从手机上传到SD卡。

你能够旁观视频理解它是若何任务的!

总结

正在判定它是一个十分便当的设置装备摆设以前,让咱们往返顾一下。

固然做到了我想要的功用,但它毕竟是迟缓的!关于4个文件约莫需求30秒,假如您测验考试运用10MB如许更年夜的文件,则需求约莫3-4分钟才干实现。固然,传输速度另有必定的优化空间,从我以前提到的网页来看,作者可以取得约莫450kbs的读取速率。

我之以是到此为止而不测验考试去优化它有两个缘由。第一个缘由,我真的很但愿,除FTP效劳器以外,我还可使用USB数据线来传输数据,但ESP8266或者ESP32都没有撑持。第二个缘由,我没法经过FTP传输文件取得充足的速率。这也是为何我没有操心用ESP32替代ESP12E的缘由。

但我感到假如咱们能运用撑持全速USB OTG的ESP32 S2板,这些成绩该当能够处理。大概我能够正在另外一个教程中作此测验考试。

电路图

完好代码

大众号DF创客社区答复\"无线SD读卡器\",获得。

或许前去作者GitHub代码堆栈下载最新代码

名目链接:https://www.hackster.io/Neutrino-1/wireless-sd-card-reader-esp8266-de7f07

中文翻译:fibx

热门推荐
返回顶部