Sisukord:

Juhtmevaba SD -kaardilugeja [ESP8266]: 10 sammu (piltidega)
Juhtmevaba SD -kaardilugeja [ESP8266]: 10 sammu (piltidega)

Video: Juhtmevaba SD -kaardilugeja [ESP8266]: 10 sammu (piltidega)

Video: Juhtmevaba SD -kaardilugeja [ESP8266]: 10 sammu (piltidega)
Video: Trust Thinity Juhtmevaba Klaviatuuri ülevaade 2024, Juuli
Anonim
Image
Image

USB pidi olema universaalne ja peamine eesmärk oli muuta kuumalt vahetatav ja ülilihtne teiste seadmetega liidestada, kuid aastate jooksul läks see mõte hulluks. Nende USB -portide jaoks on nii palju erinevaid variante, mis on kohati nii masendavad ja nende tööpõhimõte on nende nimega täiesti vastuolus [USB - universaalne jadasiin], sest iga USB -vastuvõtja peaks ühilduma mis tahes USB -seadmega! Te ei saa laadija sisse ühendada USB -mälupulka ega klaviatuuri ja oodata, et see töötab.

Kuid kontseptsioon kõlab liiga hästi! Seetõttu alustasin selle universaalse pordi kontseptsiooni algatamiseks lihtsa projektiga "Traadita kaardilugeja"

See täitis kõik mu soovid, mul pole vaja muud teha kui lihtsalt ühendada see mis tahes USB -vastuvõtja sisse, pole vahet, milline!

Niipea, kui ühendate selle vooluvõrku, loob see pääsupunkti, kus saame ühenduse luua ja seejärel pääsupunktiga ühenduse luua ning lihtsalt avada mis tahes ühilduva seadme mis tahes FTP -kliendirakenduse. Selle seadistusega saame kopeerida ja salvestada faile SD -kaardile juhtmevabalt!

Tarvikud

Siin on nimekiri toodetest, mis aitavad teil seda projekti hõlpsalt teha

(Sidusreklaamija link)

  • Esp12E:
  • SD -kaart:
  • Micro SD -adapter:
  • HeaderPins:
  • Nurga all olevad päise tihvtid:
  • Juhtmed:
  • FTDI:
  • Arduino nano + programmeerija traat:
  • Mees -USB:
  • PCB:
  • Jootmispüstol:
  • Jootmisjuhe:

1. samm: SD (turvaline digitaalne) kaart

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

SD tähistab Secure Digitali, see sarnaneb teie Pendrive'iga, kuid on väiksema jalajälje ja palju odavama hinnaga.

Kui me peame seda kasutama mõne mikrokontrolleriga, on kaks võimalust, üks on SDIO ja SPI. Peaaegu kõigil SD -kaartidel on palju standardfunktsioone ning neil on samad füüsilised ja elektrilised omadused. Tegelikud erinevused SPI ja SDIO vahel on peamiselt tarkvara tasemel. Selle kohta saate rohkem lugeda sellelt lingilt.

Ütleme praegu, et SDIO on kiirem, kuid raskem rakendada ja SPI on aeglasem, kuid lihtsam rakendada. Kuna enamik mikrokontrollereid toetab vaikimisi SPI -d, jääme selle juurde.

SD -kaardi pistik SPI jaoks

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

Samm: SD -kaardi adapteri muutmine

SD -kaardi adapteri muutmine
SD -kaardi adapteri muutmine
SD -kaardi adapteri muutmine
SD -kaardi adapteri muutmine
SD -kaardi adapteri muutmine
SD -kaardi adapteri muutmine
SD -kaardi adapteri muutmine
SD -kaardi adapteri muutmine

Võite kasutada mis tahes SD -kaardi mooduleid, mis toetavad Arduino ja esp8266, kuid selle projekti jaoks kasutame microSD -kaardi adapterit ja muudame seda nii, et saame seda mooduli asemel kasutada.

Kõigepealt puhastage SD -kaardi adapteri kontaktid. Seejärel kasutage nurga all olevaid päise tihvte ja jootke tihvtid otse adapteri kontaktide külge. Kui jootmine on tehtud, kontrollige päise tihvtide vahelisi kontakte, et kontrollida lühise olemasolu. Eemaldage must eraldaja ükshaaval, nii et kui me selle tagasi asetame, oleks see PCB -ga ühtlane.

Meessoost USB -pordi lisamiseks lõigake trükkplaat nii, et see sobiks ideaalselt SD -kaardi adapteriga ja sellel oleks veidi rohkem ruumi.

Sama protsessi saate teha ka adapteri asemel SD -kaardiga, kuid selle kahjustamine on üsna riskantne.

Samm: USB -ühendus

USB ühendus
USB ühendus
USB ühendus
USB ühendus
USB ühendus
USB ühendus

Peame SD -kaardi toiteallikaks kasutama. Selleks kasutame USB -vastuvõtuporti ennast. Seega kasutame meessoost USB -porti. Sellel on tavaliselt 4 tihvti, kus 2 keskmist tihvti kasutatakse andmeedastuseks ja 2 äärmist tihvti toite ja maanduse jaoks. Kuna me vajame lihtsalt voolu, lõikan ma andmestiku ja jätan GND ja VCC alles.

Seejärel asetage meessoost USB -port SD -kaardi ette, kus me varem ruumi tegime, ja jootke see oma kohale. See ei lahendanud veel ühtegi energiaprobleemi! Kuna SD -kaart vajab 3,3 V pinget, kuid USB -toide on tavaline 5 V, kui selle lihtsalt vooluvõrku ühendate, praadite SD -kaardi tõenäoliselt välja (kuid microSD -adapter ei kahjusta).

Selle lahendamiseks kasutame 3,3 V regulaatorit ja ühendame USB -toite sisendi 3,3 V regulaatoriga, st ühendame USB GND regulaatori kontaktiga 1 ja ühendame regulaatori kontakti 3 +5 V regulaatoriga. Lõpuks jootke regulaatori tihvt 3 (väljundnõel) ja maandus SD -kaardile.

See seadistab SD -kaardi toiteallika. Üksikasjalikumat ühendust saate vaadata vooluahela skeemist.

4. samm: ühendage kõik koos ESP-12E-ga

Kõik koos ESP-12E-ga
Kõik koos ESP-12E-ga
Kõik koos ESP-12E-ga
Kõik koos ESP-12E-ga
Kõik koos ESP-12E-ga
Kõik koos ESP-12E-ga
Kõik koos ESP-12E-ga
Kõik koos ESP-12E-ga

Nüüd kasutame SD -kaardilt andmete lugemiseks ja kirjutamiseks Esp12E WiFi -moodulit, kuigi see on aeglasem kui esp32. Kuid tegelikult pole vahet, kumma valite, ma ütlen põhjuse viimastes sammudes.

Esmalt jootke EN (lubatav tihvt) esp12E VCC külge, see lülitab IC sisse. Kui see pole HIGH -signaaliga ühendatud, ei lülitu IC sisse. Seejärel asetage esp12E trükkplaadi tagaküljele ja jootage esp12E SPI -tihvtid SD -kaardi SPI -tihvtidega. Üksikasjalikult kontrollib ühendus vooluahelat.

Samm: HTTP VS FTP

Enne programmeerimist uurisin alla- ja üleslaadimiste toimimist, just siis sattusin sõna FTP otsa. Põhimõtteliselt tähistab FTP failiedastusprotokolli, seda protokolli kasutatakse failide edastamiseks serverite ja kliendi vahel ning see erineb täielikult tavalisest HTTP -st, kus klient ja server saadavad ja võtavad vastu väga väikeseid päringuid/vastuseid.

FTP on failide edastamisel kiirem kui HTTP, kuna see oli spetsiaalselt selle jaoks loodud. Niisiis, ma tahtsin seda selles projektis rakendada. Kui FTP-server töötab esp-12E-l ja me saame selle FTP kaudu andmeid SD-kaardile tõsta ja tuua.

6. samm: FTP -teegi leidmine

FTP raamatukogu leidmine
FTP raamatukogu leidmine
FTP raamatukogu leidmine
FTP raamatukogu leidmine

Ma ei leidnud ühtegi FTP -raamatukogu, mis oleks väga aktiivselt välja töötatud või spetsiaalselt esp8266 jaoks loodud. Kuid mõningate kaevamistega kohtasin David Paivat, kes teisaldas FTP -serveri Arduino versiooni esp8266 -le, kuid SPIFFS -i toega, mitte SD -kaardiga.

Kuid veidi suurema vaevaga leidsin kellegi, kes tegi David Paiva raamatukogus tööd, et muuta SPIFF -id SD -kaardiks. Aga kui ma proovisin seda kasutada, tekkis mul 2 probleemi. Esiteks oli leht, kust ma selle leidsin, korea keeles, nii et ma pidin sõna otseses mõttes istuma ja kõike tõlkima, et teada saada, mis toimub, enne kui ma sellega midagi teha saan. Siis oli teine probleem see, et pidin muutma olemasolevat SD -raamatukogu, et toetada tema tehtud muudatusi, kuid see tundus väga kohmakas.

Niisiis, ma võrdlesin seda raamatukogu, üks David Paivalt ja teine Korea veebisaidilt. Seejärel tegin mõned väikesed muudatused ja tegin kogu asja üheks projektiks, nii et pole vaja installida ühtegi raamatukogu. Koodi saate vaadata minu Githubi kontolt.

Samm 7: ESP-12E programmeerimine

ESP-12E programmeerimine
ESP-12E programmeerimine
ESP-12E programmeerimine
ESP-12E programmeerimine
ESP-12E programmeerimine
ESP-12E programmeerimine

ESP-12E ei ole sisseehitatud programmeerijaga kaasas, seega peame kasutama välist programmeerijat nagu FDTI moodul. Nii tegin mõne juhtme ja naissoost päisepistikutega adapteri. Selle abil saame esp12E ajutiselt jootma ja programmeerida FTDI mooduli abil.

Ühendage GND [esp12E] GND -ga, Rx [esp12E] Tx -ga, Tx [esp12E] Rx -iga, GPIO15 [esp12E] GND -ga, GPIO0 [esp12E] GND -ga, VCC [esp12E] FDTI -mooduli VCC -ga.

Seejärel laadige kood Githubist üles Arduino IDE abil.

Kui programm on üles laaditud, saate esp12E programmeerimiseks ühendatud juhtmed desoldeerida.

8. samm: projekti lõpetamine

Projekti lõpetamine!
Projekti lõpetamine!
Projekti lõpetamine!
Projekti lõpetamine!
Projekti lõpetamine!
Projekti lõpetamine!

Lihtsalt pange adapterisse mis tahes microSD -kaart [kuni 32 GB] ja ühendage kogu seade mis tahes USB -ühilduva seadmega, see peaks asju üles ajama! Kuid turvalisuse huvides veenduge, et USB -pordi väljundvool on suurem kui 1 amp, kuid on vähe asju. Kuna Esp12E moodul tarbib failide edastamisel rohkem voolu.

9. samm: seadme kasutamine

Seadme kasutamine
Seadme kasutamine
Seadme kasutamine
Seadme kasutamine
Seadme kasutamine
Seadme kasutamine

Niipea kui seade saab toite, loob seade juurdepääsupunkti nimega SD Reader. Ühendage selle pääsupunktiga koodil oleva parooli abil. Seejärel olenevalt sellest, millist seadet 12E -ga ühendamiseks kasutate, laadige alla vastav FTP -klienditarkvara, kui kasutate arvuti allalaadimist WinSCP või Filzella ja kui kasutate Android -seadme allalaadimist AndFTP.

Kui installimine on tehtud, avage AndFTP ja täitke FTP -kliendi seadistamiseks mandaadid. Minu puhul jätsin kasutajanime ja parooli vaikimisi "esp8266" koodi. Kasutage seda kasutajateabe ja hosti jaoks 192.168.12.7. Lõpuks looge ühendus FTP -serveriga.

Kui see on tehtud, saate SD -kaardilt kõik failid alla laadida ja oma telefonist SD -kaardile faile üles laadida.

Videost saate teada, kuidas see toimib!

10. samm: lõplikud mõtted

Lõplikud mõtted
Lõplikud mõtted
Lõplikud mõtted
Lõplikud mõtted

Aga enne kui jõuame järeldusele, et see on väga mugav seade, astugem samm tagasi.

Kuigi see teeb seda, mida ma tahan, on see aeglane! Vaid 4 faili (iga ~ 100Kb) jaoks kulub umbes 30 sekundit ja kui proovite suurema failiga, näiteks 10 MB, kulub selle valmimiseks umbes 3-4 minutit. Selle optimeerimiseks on viise ja lehelt, kuhu viitasin, suutis ta lugeda umbes 450 kilo lugemiskiirust. (Esp32 ja SD_MMC raamatukogu edastuskiirus võib olla umbes 1 MB/s)

Põhjus, miks ma siin projekti lõpetasin ega proovinud seda optimeerida, oli kahel põhjusel. Esimene põhjus, ma tõesti soovin, et saaksin koos FTP -serveriga andmete edastamiseks ikkagi kasutada USB -andmesideühendust, kuid seda ei toeta esp8266 ega esp32. Ja teine põhjus on see, et ma ei saanud piisavalt kiirust failide ülekandmiseks FTP kaudu. See on ka sama põhjus, miks ma ei viitsinud esp32 asemel kasutada esp32.

Kuid ma arvan, et mõnda neist probleemidest saab lahendada, kui saame kasutada esp32 S2 plaate, mis toetavad liikvel olevat USB -d täiskiirusel. Võib -olla saan seda teha mõne teise juhendatava XD jaoks.

Soovitan: