INHOUDSOPGAWE:

Draadlose SD -kaartleser [ESP8266]: 10 stappe (met foto's)
Draadlose SD -kaartleser [ESP8266]: 10 stappe (met foto's)

Video: Draadlose SD -kaartleser [ESP8266]: 10 stappe (met foto's)

Video: Draadlose SD -kaartleser [ESP8266]: 10 stappe (met foto's)
Video: Smartwares CMS-30100 Draadloze beveiliginscamera set 2024, Julie
Anonim
Image
Image

USB was veronderstel om universeel te wees, en die hoofdoel was om 'n warm-uitruilbare, super maklike koppelvlak met ander toestelle te maak, maar deur die jare het die idee in die wiele gery. Daar is soveel verskillende variante van hierdie USB -poorte, wat soms so frustrerend is en die manier waarop dit werk, hulle naam heeltemal weerspreek [USB - Universal Serial Bus], want elke USB -ontvanger moet verenigbaar wees met enige USB -toestel! U kan nie u USB -stick of 'n sleutelbord in 'n laaier aansluit en verwag dat dit sal werk nie.

Maar die konsep klink te goed! Daarom het ek begin met hierdie "Universal-Port" -konsep met 'n eenvoudige projek "Wireless Card reader"

Dit het aan al my wense voldoen, al wat ek hoef te doen is om dit net in 'n USB -ontvanger te steek, dit maak nie saak watter een nie!

Sodra u dit inprop, skep dit 'n toegangspunt waar ons kan koppel en dan aan die toegangspunt kan koppel en net 'n FTP -kliënt -toepassing op enige versoenbare toestel kan oopmaak. Met hierdie opset kan ons sowel as lêers draadloos na die SD -kaart kopieer en stoor!

Voorrade

Dit is die lys produkte wat u maklik kan help om hierdie projek te doen

(Geaffilieerde skakel)

  • Esp12E:
  • SD -kaart:
  • Micro SD -adapter:
  • HeaderPins:
  • Hoekkoppenne:
  • Drade:
  • FTDI:
  • Arduino nano + programmeerderdraad:
  • Manlike USB:
  • PCB:
  • Soldeergeweer:
  • Soldeerbout:

Stap 1: SD (Secure Digital) kaart

SD (Secure Digital) kaart
SD (Secure Digital) kaart

SD staan vir Secure Digital, dit is soortgelyk aan u Pendrive, maar met 'n kleiner voetspoor en baie goedkoper prys.

As ons dit met een van die mikrobeheerders moet gebruik, is daar 2 opsies, een is SDIO en SPI. Byna al die SD -kaarte het baie standaardkenmerke en het dieselfde fisiese en elektriese spesifikasies. Die werklike verskille tussen die SPI en SDIO is hoofsaaklik op sagteware -vlak. U kan meer hieroor lees in hierdie skakel.

Laat ons nou maar sê SDIO is vinniger, maar moeiliker om te implementeer en SPI is stadiger, maar makliker om te implementeer. Aangesien die meeste van die mikrobeheerders standaard SPI ondersteun, hou ons daarby.

SD -kaart pinout vir SPI

Pin -1 - CS (Chip select) Pin -2 - DI (MOSI) Pin -3 - GNDPin -4 - VCCPin -5 - SCLKPin -6 - GNDPin -7 - DO (MISO) Pin -8 - NCPin -9 - NC

Stap 2: wysiging van die SD -kaartadapter

Verandering van SD -kaartadapter
Verandering van SD -kaartadapter
Verandering van SD -kaartadapter
Verandering van SD -kaartadapter
Verandering van SD -kaartadapter
Verandering van SD -kaartadapter
Verandering van SD -kaartadapter
Verandering van SD -kaartadapter

U kan enige SD -kaartmodules gebruik wat Arduino en esp8266 ondersteun, maar vir die doel van hierdie projek gebruik ons die microSD -kaartadapter en sal dit so verander dat ons dit kan gebruik in plaas van die module.

Maak eers die kontakte van die SD -kaartadapter skoon. Gebruik dan hoekige koppenne en soldeer die penne direk aan die adapterkontakte. Sodra die soldeer klaar is, kyk na die kontakte tussen die koppenne om te sien of daar 'n kortsluiting is. Verwyder die swart skeier een vir een, so as ons dit terug plaas, spoel dit met die printplaat.

Sny die printplaat so uit dat dit perfek pas by die SD -kaartadapter en ekstra ruimte het om die USB -poort van die man te voeg.

U kan ook dieselfde proses doen met die SD -kaart in plaas van die adapter, maar dit is baie riskant as u dit beskadig.

Stap 3: USB -verbinding

USB -verbinding
USB -verbinding
USB -verbinding
USB -verbinding
USB -verbinding
USB -verbinding

Ons moet die SD -kaart voed, daarvoor gebruik ons die USB -ontvangspoort self. Ons gebruik dus 'n manlike USB -poort. Dit het gewoonlik 4 penne, waar 2 middelste penne gebruik word vir data -oordrag en 2 ekstreme penne vir krag en grond. Aangesien ons net krag benodig, sny ek die datapennetjies en hou ek die GND en VCC.

Plaas dan die manlike USB -poort voor die SD -kaart waar ons vroeër ruimte gemaak het en soldeer dit dan vas. Dit het nog geen kragkwessie opgelos nie! Omdat die SD -kaart 3.3v benodig, maar die USB -toevoer standaard 5V is, as u dit net in die stroom aansluit, braai u waarskynlik die SD -kaart (maar die microSD -adapter sal geen skade aanneem nie).

Om dit op te los, gebruik ons 'n 3.3V -reguleerder en koppel die ingang van die USB -toevoer aan die 3.3V -reguleerder, d.w.s. verbind die GND van die USB met pen 1 van die reguleerder en koppel pen 3 van die reguleerder aan +5V van die reguleerder. Soldeer uiteindelik die pen 3 (uitgangspen) en die grond van die reguleerder aan die SD -kaart.

Dit stel die krag van die SD -kaart in. U kan die kringdiagram nagaan vir 'n meer gedetailleerde verbinding.

Stap 4: Alles saamvoeg met ESP-12E

Alles saamvoeg met ESP-12E
Alles saamvoeg met ESP-12E
Alles saamvoeg met ESP-12E
Alles saamvoeg met ESP-12E
Alles saamvoeg met ESP-12E
Alles saamvoeg met ESP-12E
Alles saamvoeg met ESP-12E
Alles saamvoeg met ESP-12E

Om die data van die SD -kaart te lees en te skryf, gebruik ons die Esp12E wifi -module, al is dit stadiger as esp32. Maar dit maak nie saak watter een u kies nie; ek sal in die laaste stappe rede gee.

Soldeer eers die EN (aktiveer pen) aan die VCC van die esp12E, dit skakel die IC aan. As dit nie aan die HIGH -sein gekoppel is nie, sal die IC nie aanskakel nie. Plaas dan die esp12E op die agterkant van die printplaat en soldeer die SPI -penne van die esp12E aan die SPI -penne op die SD -kaart. Vir meer inligting, kyk die verbinding na die kringdiagram.

Stap 5: HTTP VS FTP

Voordat ek geprogrammeer het, het ek ondersoek ingestel na hoe aflaaie en oplaaie werk, dit is toe ek die woord FTP raakloop. Eintlik staan FTP vir lêeroordragprotokol, hierdie protokol word gebruik om lêers tussen bedieners en kliënt oor te dra, en dit verskil heeltemal van die gewone HTTP waar die kliënt en bediener versoeke/reaksies stuur wat baie klein is.

FTP is vinniger as die HTTP vir die oordrag van lêers omdat dit spesifiek daarvoor gemaak is. Ek wou dit dus in hierdie projek implementeer. Waar 'n FTP-bediener op die esp-12E loop en ons data deur hierdie FTP na die SD-kaart kan haal en haal.

Stap 6: Ontdek die FTP -biblioteek

Ontdek die FTP -biblioteek
Ontdek die FTP -biblioteek
Ontdek die FTP -biblioteek
Ontdek die FTP -biblioteek

Ek kon geen FTP -biblioteek vind wat baie aktief ontwikkel is of spesifiek gemaak is vir esp8266 nie. Maar met 'n bietjie grawe het ek op David Paiva afgekom wat 'n Arduino -weergawe van die FTP -bediener na esp8266 oorgedra het, maar met die SPIFFS -ondersteuning en nie die SD -kaart nie.

Maar met bietjie meer moeite het ek iemand gevind wat 'n bietjie werk aan die David Paiva -biblioteek gedoen het om die SPIFFS na die SD -kaart te omskep. Maar toe ek dit probeer gebruik, het ek 2 probleme ondervind. Eerstens was die bladsy waar ek dit agtergekom het, in Koreaans, so ek moes letterlik sit en alles vertaal om te weet wat aangaan voordat ek iets daarmee kon doen. Toe was die tweede probleem: ek moes die bestaande SD -biblioteek verander om die veranderings wat hy aangebring het, te ondersteun, maar dit voel baie lomp.

Dus het ek hierdie biblioteek vergelyk, een van David Paiva en die ander van die Koreaanse webwerf. Toe het ek 'n paar klein veranderings aangebring en die hele ding in 'n enkele projek gemaak, sodat dit nie nodig is om enige biblioteek van enige aard te installeer nie. U kan die kode na my Github -rekening kyk.

Stap 7: Programmering van die ESP-12E

Die programmering van die ESP-12E
Die programmering van die ESP-12E
Die programmering van die ESP-12E
Die programmering van die ESP-12E
Die programmering van die ESP-12E
Die programmering van die ESP-12E

ESP-12E kom nie met 'n ingeboude programmeerder nie, dus moet ons 'n eksterne programmeerder soos die FDTI-module gebruik. Daarom het ek 'n adapter gemaak met 'n paar drade en penkoppe, waarmee ons die esp12E tydelik kan soldeer en dit kan programmeer met behulp van die FTDI -module.

Koppel die GND [esp12E] aan GND, Rx [esp12E] aan Tx, Tx [esp12E] aan Rx, GPIO15 [esp12E] aan GND, GPIO0 [esp12E] aan GND, VCC [esp12E] na VCC van FDTI -module.

Laai dan die kode van Github op met die Arduino IDE.

Sodra die program opgelaai is, kan u die drade wat verbind was met die programmering van die esp12E, desolder.

Stap 8: Voltooi die projek

Die projek voltooi!
Die projek voltooi!
Die projek voltooi!
Die projek voltooi!
Die projek voltooi!
Die projek voltooi!

Plaas net 'n microSD -kaart (maksimum 32 GB) in die adapter en steek die hele toestel in 'n USB -versoenbare toestel. Maar daar is min dinge om in ag te neem; maak seker dat die USB -poort se uitsetstroom groter is as 1amp, net om aan 'n veiliger kant te wees. Omdat die Esp12E -module meer stroom verbruik wanneer dit lêers oordra.

Stap 9: Gebruik die toestel

Die gebruik van die toestel
Die gebruik van die toestel
Die gebruik van die toestel
Die gebruik van die toestel
Die gebruik van die toestel
Die gebruik van die toestel

Sodra die toestel aangeskakel is, skep die toestel 'n toegangspunt genaamd SD Reader. Koppel aan hierdie toegangspunt met die wagwoord op die kode. Aflaai dan die ooreenstemmende FTP -kliënt sagteware, afhangende van watter toestel u gebruik om aan te sluit op die 12E, en laai dan WinSCP of Filzella af en as u 'n Android -toestel gebruik, laai AndFTP af.

Sodra die installasie voltooi is, maak die AndFTP oop en vul die geloofsbriewe in om die FTP -kliënt op te stel. In my geval het ek die gebruikersnaam en die wagwoord by die standaard "esp8266" in die kode gelaat. Gebruik dit dus vir die gebruikersinligting en vir die gasheer, 192.168.12.7. Koppel uiteindelik aan die FTP -bediener.

Sodra dit klaar is, kan u enige lêers van die SD -kaart aflaai, en u kan lêers vanaf u telefoon na die SD -kaart oplaai.

U kan die video sien om te weet hoe dit werk!

Stap 10: Laaste gedagtes

Laaste gedagtes
Laaste gedagtes
Laaste gedagtes
Laaste gedagtes

Maar voordat ons die gevolgtrekking maak dat dit 'n baie handige toestel is, laat ons 'n stap terug neem.

Alhoewel dit doen wat ek wil, is dit heeltemal stadig! Vir slegs 4 lêers (elk ~ 100Kb) neem dit ongeveer 30 sekondes, en as u met 'n groter lêer soos 10MB probeer, sal dit ongeveer 3-4 minute neem om te voltooi. Daar is maniere om dit te optimaliseer, en vanaf die bladsy waarna ek verwys het, kon hy ongeveer 450kbs leessnelheid kry. (Met Esp32- en SD_MMC -biblioteekoordragspoed kan ongeveer 1 MB/sek. Wees)

Die rede waarom ek die projek hier gestop het en dit nie probeer optimaliseer het nie, was om twee redes. Eerste rede, ek wens regtig dat ek, saam met die FTP -bediener, steeds die USB -datalyn kon gebruik om data oor te dra, maar dit word nie ondersteun in esp8266 of esp32 nie. En die tweede rede is dat ek nie genoeg spoed kon kry om die lêers oor FTP oor te dra nie. Dit is ook dieselfde rede waarom ek nie die esp32 in plaas van die esp12E wou gebruik nie.

Maar ek dink dat sommige van hierdie probleme opgelos kan word as ons die esp32 S2 -borde kan gebruik wat volle spoed onderweg ondersteun. Miskien kan ek dit doen vir nog 'n opdragbare XD.

Aanbeveel: