Sadržaj:
- Pribor
- Korak 1: SD (Secure Digital) kartica
- Korak 2: Izmjena adaptera SD kartice
- Korak 3: USB veza
- Korak 4: Spajanje svega s ESP-12E
- Korak 5: HTTP VS FTP
- Korak 6: Pronalaženje FTP knjižnice
- Korak 7: Programiranje ESP-12E
- Korak 8: Završite projekt
- Korak 9: Korištenje uređaja
- Korak 10: Završne misli
Video: Bežični čitač SD kartica [ESP8266]: 10 koraka (sa slikama)
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:32
USB je trebao biti univerzalan, a glavni cilj je bio napraviti zamjenu vrućom, super laku za sučelje s drugim uređajima, ali s godinama je ideja krenula naopako. Postoji toliko mnogo varijanti ovih USB priključaka što je ponekad toliko frustrirajuće i način na koji oni rade potpuno je u suprotnosti s njihovim imenom [USB - Univerzalna serijska sabirnica] jer bi svaki USB prijemnik trebao biti kompatibilan s bilo kojim USB uređajem! USB punjač ili tipkovnicu ne možete priključiti unutar punjača i očekivati da će raditi.
Ali koncept zvuči previše dobro! Zato sam za pokretanje ovog koncepta "Universal-Port" započeo s jednostavnim projektom "Bežični čitač kartica"
Ovo mi je ispunilo sve želje, sve što moram učiniti je samo ga uključiti u bilo koji USB prijemnik, nije važno koji!
Čim ga priključite, on stvara pristupnu točku na koju se možemo povezati, a zatim spojiti na pristupnu točku i jednostavno otvoriti bilo koju FTP klijentsku aplikaciju na bilo kojem kompatibilnom uređaju. S ovim postavljanjem možemo bežično kopirati, ali i spremati datoteke na SD karticu!
Pribor
Ovo je popis proizvoda koji vam mogu pomoći da s lakoćom napravite ovaj projekt
(Affiliate Link)
- Esp12E:
- SD kartica:
- Micro SD adapter:
- Zaglavlja:
- Igle zaglavlja pod kutom:
- Žice:
- FTDI:
- Arduino nano + programerska žica:
- Muški USB:
- PCB:
- Lemni pištolj:
- Lemilica:
Korak 1: SD (Secure Digital) kartica
SD označava Secure Digital, sličan je vašem Pendriveu, ali s manjim otiskom i mnogo jeftinijom cijenom.
Kad ovo moramo koristiti s bilo kojim od mikrokontrolera, postoje 2 mogućnosti, jedna je SDIO i SPI. Gotovo sve SD kartice dijele mnoge standardne značajke i imaju iste fizičke i električne specifikacije. Stvarne razlike između SPI -a i SDIO -a uglavnom su na razini softvera. Više o tome možete pročitati na ovoj poveznici.
Zasad recimo da je SDIO brži, ali teži za implementaciju, a SPI sporiji, ali lakši za implementaciju. Budući da većina mikrokontrolera prema zadanim postavkama podržava SPI, zadržat ćemo se toga.
Isključivanje SD kartice za SPI
Pin -1 - CS (odabir čipa) Pin -2 - DI (MOSI) Pin -3 - GNDPin -4 - VCCPin -5 - SCLKPin -6 - GNDPin -7 - DO (MISO) Pin -8 - NCPin -9 - NC
Korak 2: Izmjena adaptera SD kartice
Možete koristiti bilo koji modul SD kartice koji podržava Arduino i esp8266, ali za potrebe ovog projekta koristit ćemo adapter za microSD karticu i izmijenit ćemo ga na takav način da ga možemo koristiti umjesto modula.
Prvo očistite kontakte adaptera SD kartice. Zatim upotrijebite zaglavljene klinove zaglavlja i zalemite pinove izravno na kontakte adaptera. Nakon lemljenja provjerite kontakte između pinova zaglavlja kako biste provjerili ima li kratkog spoja. Uklonite crni separator jedan po jedan kako bi se, kad ga vratimo, ispirao s tiskanom pločom.
Izrežite PCB na takav način da savršeno pristaje uz adapter SD kartice i ima malo više prostora za dodavanje muškog USB priključka.
Isti postupak možete učiniti i sa SD karticom umjesto adapterom, ali prilično je rizično ako je oštetite.
Korak 3: USB veza
Moramo napajati SD karticu. Za to ćemo koristiti sam USB prijemnik. Zato ćemo koristiti muški USB priključak. Obično ima 4 pina, pri čemu se 2 srednja pina koriste za prijenos podataka, a 2 ekstremna pina za napajanje i masu. Budući da nam samo treba napajanje, izrezat ću podatkovne pinove i zadržati samo GND i VCC.
Zatim ste postavili muški USB priključak ispred SD kartice gdje smo ranije napravili malo prostora, a zatim ga lemite na mjesto. Ovo još nije riješilo problem s napajanjem! Budući da SD kartica zahtijeva 3,3 V, ali USB opskrba je standardnih 5 V, ako je samo uključite u napajanje, vjerojatno ćete ispržiti SD karticu (ali adapter za microSD neće oštetiti).
Da bismo to riješili, upotrijebit ćemo 3.3V regulator i spojiti ulaz USB napajanja na 3.3V regulator, tj. Spojiti GND USB -a na pin 1 regulatora i spojiti pin 3 regulatora na +5V regulatora. Na kraju, lemite pin 3 (izlazni pin) i uzemljenje regulatora na SD karticu.
Ovo će postaviti napajanje za SD karticu. Za detaljniju vezu možete provjeriti dijagram kruga.
Korak 4: Spajanje svega s ESP-12E
Sada ćemo za čitanje i pisanje podataka sa SD kartice upotrijebiti WiFi modul Esp12E, iako je sporiji od esp32. Ali doista nije važno koji ćete izabrati, reći ću razlog u posljednjim koracima.
Prvo lemite EN (pin za omogućavanje) na VCC esp12E, to će uključiti IC. Ako ovo nije spojeno na HIGH signal, IC se neće uključiti. Zatim postavite esp12E na stražnju stranu PCB ploče i lemite SPI pinove esp12E u SPI pinove na SD kartici. Za pojedinosti, veza provjerava shemu strujnog kruga.
Korak 5: HTTP VS FTP
Prije programiranja istraživao sam kako funkcioniraju preuzimanja i učitavanja, tada sam naletio na riječ FTP. U osnovi FTP znači protokol prijenosa datoteka, ovaj protokol se koristi za prijenos datoteka između poslužitelja i klijenta i potpuno se razlikuje od običnog HTTP -a gdje klijent i poslužitelj šalju i primaju zahtjeve/odgovore vrlo male veličine.
FTP je brži od HTTP -a u prijenosu datoteka jer je za to posebno napravljen. Dakle, htio sam to implementirati u ovaj projekt. Tamo gdje na esp-12E radi FTP poslužitelj i možemo gurnuti i dohvatiti podatke putem ovog FTP-a na SD karticu.
Korak 6: Pronalaženje FTP knjižnice
Nisam mogao pronaći nijednu FTP biblioteku koja je vrlo aktivno razvijena ili posebno izrađena za esp8266. No, s malo kopanja naišao sam na Davida Paivu koji je prenio Arduino verziju FTP poslužitelja na esp8266, ali sa SPIFFS podrškom, a ne SD karticom.
No, uz malo više napora, pronašao sam nekoga tko je radio na biblioteci Davida Paive kako bi pretvorio SPIFFS na SD karticu. Ali kad sam pokušao ovo koristiti, naišao sam na 2 problema. Prvo, stranica na kojoj sam to otkrio bila je na korejskom, pa sam morao doslovno sjesti i prevesti sve kako bih znao što se događa prije nego što sam s tim mogao učiniti bilo što. Drugi problem je bio, morao sam izmijeniti postojeću biblioteku SD -a kako bi podržao promjene koje je napravio, ali to se činilo vrlo nespretnim.
Dakle, usporedio sam obje ove biblioteke, jednu od Davida Paive, a drugu s korejske web stranice, zatim napravio neke manje izmjene i cijelu stvar napravio u jedan projekt tako da nema potrebe za instaliranjem bilo koje knjižnice bilo koje vrste. Kôd možete provjeriti na mom Github računu.
Korak 7: Programiranje ESP-12E
ESP-12E ne dolazi s ugrađenim programatorom, pa moramo koristiti vanjski programator poput FDTI modula. Tako sam napravio adapter s nekoliko žica i ženskim iglama zaglavlja. S tim možemo privremeno lemiti esp12E i programirati ga pomoću FTDI modula.
Spojite GND [esp12E] na GND, Rx [esp12E] na Tx, Tx [esp12E] na Rx, GPIO15 [esp12E] na GND, GPIO0 [esp12E] na GND, VCC [esp12E] na VCC FDTI modula.
Zatim prenesite kôd s Githuba pomoću Arduino IDE -a.
Nakon što se program učita, možete odspojiti žice koje su spojene na program esp12E.
Korak 8: Završite projekt
Samo umetnite bilo koju microSD karticu (maksimalno 32 GB) u adapter i priključite cijeli uređaj u bilo koji USB kompatibilan uređaj. To bi trebalo pojačati stvar! No, potrebno je uzeti u obzir nekoliko stvari. Provjerite je li izlazna struja USB priključka veća od 1 ampera, samo da biste bili na sigurnijoj strani. Budući da modul Esp12E troši više struje prilikom prijenosa datoteka.
Korak 9: Korištenje uređaja
Čim se uređaj napaja, uređaj stvara pristupnu točku pod nazivom SD čitač. Povežite se s ovom pristupnom točkom pomoću lozinke koja se nalazi na kodu. Zatim, ovisno o tome koji uređaj koristite za povezivanje s 12E, preuzmite odgovarajući softver FTP klijenta ako koristite računalo za preuzimanje WinSCP ili Filzella i ako koristite Android uređaj, preuzmite AndFTP.
Kada instalacija završi, otvorite AndFTP i ispunite vjerodajnice za postavljanje FTP klijenta. U mom slučaju, ostavio sam korisničko ime i lozinku na zadano "esp8266" u kodu. Dakle, upotrijebite to za korisničke podatke, a za host 192.168.12.7. Na kraju, povežite se s FTP poslužiteljem.
Nakon što to učinite, možete preuzeti sve datoteke sa SD kartice, kao i datoteke s telefona na SD karticu.
Video možete vidjeti kako biste saznali kako to funkcionira!
Korak 10: Završne misli
No, prije nego što zaključimo kako je to vrlo zgodan uređaj, napravimo korak unatrag.
Iako radi ono što želim, krajnje je sporo! Za samo 4 datoteke (svaka ~ 100 KB) potrebno je otprilike 30 sekundi, a ako pokušate s većom datotekom poput 10 MB, dovršit će se oko 3-4 minute. Postoje načini da se to optimizira, a sa stranice na koju sam naveo uspio je dobiti otprilike 450 KB brzine čitanja. (S Esp32 i SD_MMC knjižnicom brzina prijenosa može biti oko 1 MB/s)
Razlog zašto sam ovdje zaustavio projekt i nisam ga pokušao optimizirati su dva razloga. Prvi razlog, zaista želim, zajedno s FTP poslužiteljem i dalje bih mogao koristiti USB podatkovnu liniju za prijenos podataka, ali to nije podržano u esp8266 ili esp32. A drugi razlog je taj što nisam mogao dobiti dovoljno brzine za prijenos datoteka putem FTP -a. To su također isti razlozi zašto se nisam potrudio koristiti esp32 umjesto esp12E.
Ali mislim da se neki od ovih problema mogu riješiti ako možemo koristiti ploče esp32 S2 koje podržavaju punu brzinu na USB -u u pokretu. Možda to mogu učiniti za još jedan XD s poukom.
Preporučeni:
Kako koristiti unutarnji čitač memorijskih kartica PS3 kao USB uređaj na računalu: 6 koraka
Kako koristiti unutarnji čitač memorijskih kartica PS3 kao USB uređaj na vašem računalu: Prije svega, ovo je moj prvi Instructable (yippie!), Siguran sam da će biti još mnogo toga. Dakle, imao sam pokvaren PS3 i htio iskoristite neke radne komponente. Prvo što sam učinio je izvući podatkovni list za čip pretvarača na PS3 kartici
Hakirajte čitač USB kartica: 6 koraka
Hakirajte čitač USB kartica: Prije nekoliko dana kod kuće sam pronašao zaboravljenu SD karticu. Bio sam znatiželjan prekinuti što tamo piše. Pretražio sam čitač kartica kako bih provjerio podatke. Jedini dostupan kod kuće bio je jeftini čitač više kartica kupljen na Aliexpressu ili Ebayu
Nintendo kontroler u čitač PC kartica: 4 koraka (sa slikama)
Nintendo kontroler u čitač PC kartica: Stavite čitač kartica u Nintendo kontroler za svoje stolno ili prijenosno računalo. Svako spominjanje ovog projekta mora sadržavati vezu na www.zieak.com uz zasluge za Ryana McFarlanda
Najjeftiniji čitač kartica 6 u 1 ikada: 5 koraka
Najjeftiniji čitač kartica 6 u 1 ikada: Jednostavan način internog čitača kartica ECS 6 u 1 čini ga najjeftinijim vanjskim čitačem kartica koji sam ikada pronašao … Obično ovaj unutarnji čitač kartica radi samo s ECS matičnim pločama, ali hakiranim upravljačkim programima (uključeni kasnije u uputama) neka ja
Pretvorite svoj Arduino u čitač magnetskih kartica!: 9 koraka (sa slikama)
Pretvorite svoj Arduino u čitač magnetskih kartica!: Vjerujem da su svi koristili čitač magnetskih kartica. Mislim, tko ovih dana nosi gotovinu? Ni njima nije teško doći u ruke, a tijekom putovanja u moju omiljenu lokalnu trgovinu elektronike našao sam kantu punu ovih momaka. Pa naravno