![Безжичен четец на SD карти [ESP8266]: 10 стъпки (със снимки) Безжичен четец на SD карти [ESP8266]: 10 стъпки (със снимки)](https://i.howwhatproduce.com/images/001/image-2708-11-j.webp)
Съдържание:
- Консумативи
- Стъпка 1: SD (Secure Digital) карта
- Стъпка 2: Промяна на адаптера за SD карта
- Стъпка 3: USB връзка
- Стъпка 4: Сглобяване на всичко заедно с ESP-12E
- Стъпка 5: HTTP VS FTP
- Стъпка 6: Откриване на FTP библиотеката
- Стъпка 7: Програмиране на ESP-12E
- Стъпка 8: Завършване на проекта
- Стъпка 9: Използване на устройството
- Стъпка 10: Заключителни мисли
2025 Автор: John Day | [email protected]. Последно модифициран: 2025-01-23 12:57


USB трябваше да бъде универсален и основната цел беше да се направи гореща смяна, супер лесна за взаимодействие с други устройства, но с годините идеята се обърка. Има толкова много различни варианти на тези USB портове, които понякога са толкова разочароващи и начинът, по който те работят, напълно противоречи на името им [USB - Универсална серийна шина], защото Всеки USB приемник трябва да е съвместим с всяко USB устройство! Не можете да включите USB устройството или клавиатурата в зарядното устройство и да очаквате да работи.
Но концепцията звучи твърде добре! Ето защо, за да инициирам тази концепция "Universal-Port", започнах с прост проект "Безжичен четец на карти"
Това изпълни всичките ми желания, всичко, което трябва да направя, е просто да го включа във всеки USB приемник, няма значение кой!
Веднага щом го включите, той създава точка за достъп, където можем да се свържем и след това да се свържем с точката за достъп и просто да отворим всяко FTP клиентско приложение във всяко съвместимо устройство. С тази настройка можем да копираме, както и да записваме файлове на SD картата безжично!
Консумативи
Това е списъкът с продукти, които могат да ви помогнат да направите този проект с лекота
(Партньорска връзка)
- Esp12E:
- SD карта:
- Micro SD адаптер:
- HeaderPins:
- Ъглови заглавни щифтове:
- Проводници:
- FTDI:
- Arduino nano + програмиращ проводник:
- Мъжки USB:
- ПХБ:
- Запояващ пистолет:
- Поялник за запояване:
Стъпка 1: SD (Secure Digital) карта

SD означава Secure Digital, той е подобен на вашия Pendrive, но с по -малък отпечатък и много по -ниска цена.
Когато трябва да използваме това с някой от микроконтролерите, има 2 опции, едната е SDIO и SPI. Почти всички SD карти споделят много стандартни функции и имат същите физически и електрически спецификации. Действителните разлики между SPI и SDIO са предимно на ниво софтуер. Можете да прочетете повече за това в тази връзка.
Засега да кажем, че SDIO е по -бърз, но по -труден за изпълнение, а SPI е по -бавен, но по -лесен за изпълнение. Тъй като повечето от микроконтролерите поддържат SPI по подразбиране, ние просто ще се придържаме към него.
Извличане на SD карта за SPI
Pin -1 - CS (избор на чип) Pin -2 - DI (MOSI) Pin -3 - GNDPin -4 - VCCPin -5 - SCLKPin -6 - GNDPin -7 - DO (MISO) Pin -8 - NCPin -9 - NC
Стъпка 2: Промяна на адаптера за SD карта




Можете да използвате всички модули на SD карта, които поддържат Arduino и esp8266, но за целите на този проект ще използваме адаптера за microSD карта и ще променим по такъв начин, че да можем да го използваме вместо модула.
Първо почистете контактите на адаптера за SD карта. След това използвайте ъглови щифтове и запоявайте щифтовете директно към контактите на адаптера. След като запояването приключи, проверете контактите между щифтовете на заглавката, за да проверите за късо съединение. Премахнете черния разделител един по един, така че когато го поставим обратно, той ще се изравнява с печатната платка.
Изрежете печатната платка по такъв начин, че да пасва идеално на адаптера за SD карта и да има допълнително място, за да добавите мъжки USB порт.
Можете също да направите същия процес със SD картата вместо с адаптера, но е доста рисковано, ако я повредите.
Стъпка 3: USB връзка



Трябва да захранваме SD картата, за това ще използваме самия USB приемащ порт. Така че ще използваме мъжки USB порт. Това обикновено има 4 пина, където 2 средни щифта се използват за пренос на данни и 2 крайни щифта се използват за захранване и заземяване. Тъй като просто се нуждаем от захранване, ще отрежа пиновете за данни и просто ще запазя GND и VCC.
След това поставете мъжкия USB порт пред SD картата, където направихме малко място по -рано, след което го запоявайте на място. Това все още не реши проблем с захранването! Тъй като SD картата изисква 3.3V, но USB захранването е стандартно 5V, ако просто включите това в захранването, вероятно ще изпържите SD картата (но няма да бъдат повредини от microSD адаптера).
За да разрешим това, ще използваме 3.3V регулатор и ще свържем входа на USB захранването към 3.3V регулатор, т.е. свържете GND на USB към пин 1 на регулатора и свържете щифт 3 на регулатора към +5V на регулатора. Накрая запоявайте щифта 3 (изходен щифт) и земята на регулатора към SD картата.
Това ще настрои захранването на SD картата. Можете да проверите електрическата схема за по -подробна връзка.
Стъпка 4: Сглобяване на всичко заедно с ESP-12E




Сега за четене и записване на данните от SD картата ще използваме wifi модула Esp12E, въпреки че е по -бавен от esp32. Но наистина няма значение кой ще изберете, ще кажа причината в последните стъпки.
Първо запоявайте EN (активиращ щифт) към VCC на esp12E, това ще включи IC. Ако това не е свързано към HIGH сигнала, IC няма да се включи. След това поставете esp12E на гърба на печатната платка и запоявайте SPI щифтовете на esp12E към SPI щифтовете на SD картата. За подробности връзката проверява електрическата схема.
Стъпка 5: HTTP VS FTP
Преди програмирането проучих как работят изтеглянията и качванията, тогава попаднах на думата FTP. По принцип FTP означава протокол за прехвърляне на файлове, този протокол се използва за прехвърляне на файлове между сървъри и клиент и е напълно различен от обикновения HTTP, където клиентът и сървърът изпращат и получават заявки/отговор, които са много малки по размер.
FTP е по -бърз от HTTP при прехвърляне на файлове, защото е създаден специално за него. Исках да приложа това в този проект. Когато FTP сървър работи на esp-12E и ние можем да избутваме и извличаме данни през този FTP към SD картата.
Стъпка 6: Откриване на FTP библиотеката


Не можах да намеря FTP библиотека, която да е много активно разработена или специално създадена за esp8266. Но с малко копаене попаднах на Дейвид Пайва, който пренесе версия на Arduino на FTP сървъра към esp8266, но с поддръжката на SPIFFS, а не на SD картата.
Но с малко повече усилия намерих някой, който свърши известна работа по библиотеката на Дейвид Пайва, за да преобразува SPIFFS в SD картата. Но когато се опитах да използвам това, се сблъсках с 2 проблема. Първо, страницата, на която открих това, беше на корейски, така че трябваше буквално да седна и да преведа всичко, за да знам какво се случва, преди да успея да направя нещо с него. Тогава вторият проблем беше, че трябваше да променя съществуващата SD библиотека, за да подкрепя направените от него промени, но това се почувства много тромаво.
И така, сравних и тази библиотека, едната от Дейвид Пайва и другата от корейския уебсайт, След това направих някои малки промени и направих всичко в един проект, така че няма нужда да инсталирате никаква библиотека от всякакъв вид. Можете да проверите кода от моя акаунт в Github.
Стъпка 7: Програмиране на ESP-12E



ESP-12E не идва с вграден програмист, така че трябва да използваме външен програмист като модула FDTI. Така че направих адаптер с няколко жици и женски щифтове на заглавието, С това можем временно да запояваме esp12E и да го програмираме с помощта на модула FTDI.
Свържете GND [esp12E] към GND, Rx [esp12E] към Tx, Tx [esp12E] към Rx, GPIO15 [esp12E] към GND, GPIO0 [esp12E] към GND, VCC [esp12E] към VCC на модула FDTI.
След това качете кода от Github с помощта на Arduino IDE.
След като програмата бъде качена, можете да разфасовате проводниците, които са свързани към програмата на esp12E.
Стъпка 8: Завършване на проекта



Просто поставете всяка microSD карта [максимум 32 GB] вътре в адаптера и включете цялото устройство във всяко USB съвместимо устройство. Това би трябвало да засили нещата! Но има няколко неща, които трябва да имате предвид, уверете се, че изходният ток на USB порта е по -голям от 1 ампер, само за да бъдете от по -безопасна страна. Тъй като модулът Esp12E консумира повече ток, когато прехвърля файлове.
Стъпка 9: Използване на устройството



Веднага след като устройството се захранва, устройството създава точка за достъп, наречена SD Reader. Свържете се с тази точка за достъп, като използвате паролата, която е в кода. След това, в зависимост от това кое устройство използвате, за да се свържете с 12E, изтеглете съответния софтуер за FTP клиент, ако използвате компютър за изтегляне WinSCP или Filzella и ако използвате устройство с Android изтеглете AndFTP.
След като инсталацията приключи, отворете AndFTP и попълнете идентификационните данни, за да настроите FTP клиента. В моя случай оставих потребителското име и паролата по подразбиране „esp8266“в кода. Така че, използвайте това за потребителска информация и за хоста използвайте 192.168.12.7. Накрая се свържете към FTP сървъра.
След като това стане, можете да изтеглите всички файлове от SD картата, както и да качвате файлове от телефона си на SD картата.
Можете да видите видеото, за да разберете как работи!
Стъпка 10: Заключителни мисли


Но преди да стигнем до заключението, че това е много удобно устройство, нека да направим крачка назад.
Въпреки че прави това, което искам, това е изключително бавно! Само за 4 файла (всеки ~ 100Kb) са необходими около 30 секунди, а ако опитате с по-голям файл като 10MB, ще отнеме около 3-4 минути за завършване. Има начини да се оптимизира това и от страницата, където споменах, той успя да получи приблизително 450kbs скорост на четене. (С Esp32 и SD_MMC скоростта на предаване на библиотеката може да бъде около 1 MB/s)
Причината, поради която спрях проекта тук и не се опитах да го оптимизирам, беше поради 2 причини. Първата причина, наистина искам, заедно с FTP сървъра, все още да мога да използвам USB линията за данни за прехвърляне на данни, но тя не се поддържа в esp8266 или esp32. И втората причина е, че не можах да получа достатъчно скорост за прехвърляне на файловете по FTP. Това са същите причини, поради които не се притесних да използвам esp32 вместо esp12E.
Но мисля, че някои от тези проблеми могат да бъдат решени, ако можем да използваме платките esp32 S2, които поддържат пълна скорост на USB в движение. Може би мога да направя това за друг XD с инструкции.
Препоръчано:
Скенер за карти за машина за търговия с карти: 13 стъпки (със снимки)

Скенер за карти за машина за търговия с карти: Скенер за карти за машина за търговия с карти Протоколът за промените може да бъде намерен в последната стъпка. Предистория Обясних основната мотивация на моя проект във Въведението за подаване на карти. Но накратко, моите деца и аз натрупахме голямо количество търговски карти b
Сортировчик на карти за машина за търговски карти (актуализация 2019-01-10): 12 стъпки (със снимки)

Сортировчик на карти за машина за търговия с карти (Актуализация 2019-01-10): Сортировчик на карти за машина за търговия с карти Протоколът за промени може да бъде намерен в последната стъпка. Предистория Вече обясних мотивацията на моя проект в статията за подаване на карти. Но накратко, моите деца и аз натрупахме голямо количество карта за търговия
Nintendo контролер в четец на PC карти: 4 стъпки (със снимки)

Nintendo Controller в PC четец на карти: Поставете четец на карти в Nintendo Controller за вашия настолен или преносим компютър. Всяко споменаване на този проект трябва да предоставя връзка към www.zieak.com с кредит към Райън Макфарланд
Четец на RSS четец на Chumby: 6 стъпки

Chumby RSS Reader: Chumbies са страхотни. RSS емисиите са страхотни. Защо не комбинирате двете? Не, двойната страхотност няма да навреди на никого, наистина. Причината е, че светкавицата е трудна за неопитни. Ето един прост начин да го направите с вече написана програма
Превърнете вашия Arduino в четец на магнитни карти!: 9 стъпки (със снимки)

Превърнете вашия Arduino в четец на магнитни карти!: Вярвам, че всеки е използвал четец на магнитни карти. Искам да кажа, кой носи пари в наши дни? Те също не са трудни за хващане и по време на пътуване до любимия ми местен магазин за електроника открих кошче, пълно с тези момчета. Така че … разбира се