Turinys:

„TicTac Super Wifi“analizatorius, ESP-12, ESP8266: 5 žingsniai (su nuotraukomis)
„TicTac Super Wifi“analizatorius, ESP-12, ESP8266: 5 žingsniai (su nuotraukomis)

Video: „TicTac Super Wifi“analizatorius, ESP-12, ESP8266: 5 žingsniai (su nuotraukomis)

Video: „TicTac Super Wifi“analizatorius, ESP-12, ESP8266: 5 žingsniai (su nuotraukomis)
Video: How To Play Super Tic-Tac-Toe 2024, Gruodis
Anonim
„TicTac Super Wifi“analizatorius, ESP-12, ESP8266
„TicTac Super Wifi“analizatorius, ESP-12, ESP8266
„TicTac Super Wifi“analizatorius, ESP-12, ESP8266
„TicTac Super Wifi“analizatorius, ESP-12, ESP8266

Šis projektas grindžiamas originaliu mėnulio degimo kodu ir „TicTac“dėžutės kaip gaubto naudojimo koncepcija.

Tačiau vietoj mygtuko rodmenims pradėti naudojamas jutiklinis skydelis su TFT SPI ekranu. Kodas buvo pakeistas, kad būtų galima geriau valdyti šviesos diodų apšvietimą ir perjungti ekraną į miego režimą (nes jutiklinis lustas turi palaikyti maitinimo ekraną). Įrenginio srovė miego metu yra pakankamai maža, kad 1000 mAh lipo tarnautų keletą metų. Taip pat yra akumuliatoriaus įkrovimas ir apsauga nuo žemos įtampos.

Žiūrėkite paskutinį veiksmo vaizdo įrašą apie jo veikimą.

Dalys:

  • 48 g „TicTac“dėžutė
  • ESP12 (pageidautina ESP-12F)
  • 2,4 colio SPI TFT ekranas
  • Lipo įkrovimo modulis
  • PNP tranzistorius
  • 3.3v silpna ramybės srovė, įtampos reguliatorius
  • Susiję rezistoriai ir kondensatoriai (išsamiau vėliau)

1 žingsnis: plėtra

Vystymasis
Vystymasis

Maniau, kad aprašysiu šio projekto plėtros kelią. Galite praleisti šį skyrių, jei norite tai padaryti tiesiai.

Tai vienas iš mano pirmųjų ESP8266 projektų. Mane užvaldė tvarkinga „TicTac“dėžutės kaip „Wifi“analizatoriaus korpuso naudojimo koncepcija ir nusprendžiau ją sukurti. Ačiū: nešiojamasis „WiFi“analizatorius. Aš nusprendžiau naudoti didesnį 2,4 colio ekraną, kuris buvo su jutikliniu skydeliu ir ant PCB su kaiščiais, prie kurių būtų lengviau prisijungti.

Kai pradėjau statyti, ištyriau priemones, kurios leistų ESP12 anteną išvalyti nuo elektronikos. Vienintelė galimybė buvo, kad jis būtų dangtelio viduje. Aš taip pat norėjau įkroviklio modulio po dozatoriumi. Tada kilo klausimas, kur rasti mygtuką „įjungti“? Nenorėjau padaryti skylės korpuso gale. Geriausias būtų viršutinis dangtelis, bet nėra vietos, jei turiu du modulius.

Taip kilo mintis naudoti jutiklinį skydelį kaip įjungimo mygtuką. Pastebėjau, kad viena iš ekrano jungčių buvo paženklinta „T_IRQ“- tai atrodė padrąsinanti. Jutiklinis lustas yra XPT2046. Taip, mano džiaugsmui, yra automatinio miego režimas ir jis paliečia skydelį, kai T_IRQ sumažėja. Tai idealiai tinka stumiamam jungikliui pakeisti ir gali būti tiesiog prijungtas prie ESP12 atstatymo.

Turėjau paminėti, kad kodas keletą kartų nuskaito „Wi -Fi“tinklus, tada pašalina maitinimą iš ekrano ir įjungia ESP12 į gilų miegą - tai pažadina iš naujo įvesties įvestis.

Taigi, kai ši sąvoka buvo aiški, aš ją prijungiau, naudodamas „NodeMcu“- ir tai neveikė! Taigi buvo šiek tiek daugiau darbo. Aš taip pat žinojau, kad negalėjau patikrinti miego srovės su „NodeMcu“dėl įmontuoto USB lusto ir didelės ramybės srovės įtampos reguliatoriaus. Aš taip pat norėjau sistemos, skirtos lengvai programuoti ESP12. Dėl to aš sukūriau ESP12 pertraukos plokštę/kūrimo sistemą, kurią būtų galima užprogramuoti taip pat lengvai, kaip ir „NodeMCU“, tačiau naudojant FTDI programuotoją. Tokiu būdu reguliatorius ir USB lustas yra atskirti. Žr.: ESP-12E ir ESP-12F programavimo ir atskyrimo lenta

Tada aš jį prijungiau naudodamas savo naują plokštę, kurioje buvo ESP-12F-ir ji veikė. Vienintelis pakeitimas, kurį padariau, buvo sutrumpinti ekrano modulio įtampos reguliatorių, todėl viskas buvo varoma 3,3 V. Pradėjau daryti savo kodo modifikacijas, ypač kodą, kad ekrano lustas (ILI9341) būtų įjungtas į miego režimą, nes šis ir jutiklinio skydelio lustas turėtų būti įjungtas (miego režimu), kai ESP modulis taip pat miega. Tada patikrinau miego srovę. Tai buvo 90uA. Taigi 1000 mAh baterija tarnaus metus. Gera pradžia.

Tada pašalinau ekrano modulio įtampos reguliatorių. Užtektų tik pakelti įžeminimo kaištį. Dabar sistemos miego srovė buvo 32uA. Aš vis dar turėjau pridėti 3,3 V reguliatorių, bet žinojau, kad tik 2uA ramybės srovė. Taigi dabar mes žiūrime į 3 metų baterijos veikimo laiką!

Aš taip pat norėjau kiek įmanoma sumontuoti komponentus ant PCB, kad laidai būtų tvarkingesni. Taigi šiuo metu aš pradėjau kurti įrenginio PCB dizainą. Aš norėčiau būti tiesiogiai prijungtas prie ekrano modulio kaiščių. Tai buvo gana sunku, todėl aš pasirinkau kietą laidą iš PCB į ekrano modulį.

Aš šiek tiek labiau susitvarkiau su kodu. Pridėjau miego pranešimą - užpildyti ekraną juodai ir atspausdinti ZZZ prieš miegą. Taip pat atidėliojau LED foninio apšvietimo įjungimą, kol ekranas buvo užpildytas. Taip išvengiama baltos blykstės pradinio kodo pradžioje. Pabaigoje padariau panašius modifikacijas, prieš išjungdamas ekraną, išjungdamas šviesos diodus.

Jums gali kilti klausimas, kaip išmatuoti uA. Mirti lengvai! Įdėkite 1k rezistorių į seriją su teigiamos galios laidu. Sutrumpinkite tai su trumpikliu, kad sistema galėtų veikti. Tada, kai jis veikia miego režimu, nuimkite trumpiklį ir išmatuokite įtampos kritimą rezistoriuje. Su 1k rezistoriumi 100mv reiškia 100uA. Jei įtampos kritimas yra per didelis, naudoju mažesnės vertės varžą. Aš naudoju šį metodą vieno skaičiaus nA matavimui, naudojant 1 m rezistorių kitose sistemose, kuriose yra tikrai maža miego srovė.

2 žingsnis: Statyba

Vaizdas
Vaizdas
Vaizdas
Vaizdas

PCB ar kieta viela?

Čia pastatytame įrenginyje naudojama PCB, skirta laikyti ESP12F ir įkroviklio modulius, įtampos reguliatorių ir PNP tranzistorių bei susijusius kondensatorius ir traukiamus rezistorius. Tai pats tvarkingiausias maršrutas, tačiau tam reikia PCB ėsdinimo ir SMD litavimo įrangos. Tačiau sistemą galima sukurti tiesiogiai prijungus modulius ir įtvirtinant įtampos reguliatorių bei PNP tranzistorių ant juostos plokštės, kaip tai buvo ankstesniame „TicTac“projekte (susietas anksčiau).

Jei nuspręsite pasirinkti PCB parinktį, galbūt norėsite sukurti ir mano ESP12 programavimo plokštę, ypač jei planuojate atlikti daugiau projektų su ESP12 plokštėmis.

Dalių sąrašas:

  • 49 g „TicTac“dėžutė
  • ESP-12F (arba ESP-12E) Atkreipkite dėmesį, kad ESP-12F diapazonas yra geresnis, kitaip tas pats kaip ESP-12E
  • 2,4 colio SPI TFT ekranas su ILI9341 tvarkykle ir palieskite pvz. TJCTW24024-SPI
  • Įkroviklio modulis - žr
  • 2 mm kaiščio juostelė (neprivaloma, bet verta naudoti)
  • PNP tranzistorius SOT23 formatu. Aš naudojau BCW30, bet bet kuris kitas, turintis daugiau nei 100 mA galimybes ir nuolatinės srovės stiprumą> 200, turėtų būti gerai.
  • 3v3 250ma (min) reguliatorius SOT23 formatu. Aš naudoju „Microchip MCP1703T-33002E/CB“. Kiti dirbs, bet patikrins jų ramybės srovę. (pasiūlyti mažiau nei 30uA).
  • Rezistoriai (visi 0805 dydžio)
  • 10 tūkst
  • 3k3 1 nuolaida
  • Kondensatoriai (visi 0805 dydžio)
  • 2n2 2 nuolaida
  • 0,1u 1 nuolaida
  • Pridėtas PCB kaip „WiFiAnalyserArtwork.docx“failas.
  • Vieno elemento LiPo baterija. Talpa 400-1000 mAh - tai tiks dėžutėje. 400 mAh yra pakankamai didelis.

Ne PCB parinkčiai naudokite lygiaverčius švinu, tinkami rezistoriai ¼W ir didesni, o kondensatoriai, kurių darbinė įtampa yra 5v ar didesnė.

Gamindami PCB - gręžkite 0,8 mm skyles. Jei turite įdomią akį - ESP12 2 mm kaiščio juostelės gali būti 0,7 mm, kad būtų geriau palaikoma.

Komponentų išdėstymas:

Vaizdas
Vaizdas

Surinkdami PCB, pirmiausia atlikite rezistorius ir kondensatorius, tada reguliatorių ir PNP tranzistorių, po to įkrovimo modulį ir ESP12 kaiščio juostelę. Lituoti ESP12 ne vietoje, nes jis yra pakankamai tvirtas, prispaustas prie kaiščio juostelės, ir jį lengviau perprogramuoti. Pastebėsite, kad PCB turi jungtis TX, RX, GPIO 0, Reset ir įžeminti, jei kada nors norite perprogramuoti vietoje. Atminkite, kad norint sumažinti GPIO lygį, reikės mygtuko. Paliesdami ekraną, atstatymas gali būti žemas. Mygtuką galima naudoti, bet tik tuo atveju, jei laidas prie ekrano T_IRQ yra atjungtas.

3 žingsnis: laidų prijungimas

Prieš prijungdami ekraną prie plokštės, nuimkite reguliatorių i1 ir ant J1 uždėkite litavimo lizdą, kuris vėliau jį pakeičia. Vėliau tai turėtų atrodyti taip:

Vaizdas
Vaizdas

Tada nuimkite kaiščio juostelę arba trumpai nupjaukite kaiščius. Geriausias būdas pašalinti kaiščio juostelę yra vienas kaištis vienu metu. Vienoje pusėje uždėkite lituoklį, o iš kitos traukdami kaištį replėmis.

Dabar galima pradėti prijungti laidus, pradedant nuo juostos kabelio prijungimo prie ekrano. Nupjaukite maždaug 7–8 cm ilgio PC juostinį kabelį ir pasirinkite 10 būdų. Apkirpkite 9 kelius atgal 10 mm, palikdami vieną ilgesnį viename T-IRQ kaiščio krašte. Tada likusi dalis gali būti išskleista ten, kur jie bus lituojami ir prireikus šiek tiek apipjaustyti.

Įdėjau ir litavau po vieną laidą, pradedant VCC.

Vaizdas
Vaizdas

Padėkite plokštę ten, kur ji turi būti ekrano atžvilgiu. Tada vieną po kito nukirpkite laidus iki 5 mm arba ilgiau, nei reikalaujama, ir nuimkite 2 mm izoliaciją, padėkite galą ir lituokite. Laidų nukreipimas vyksta taip (skaičiuojant kaiščių numerius iš VCC):

Ekranas PCB Komentuoti
1 1 VCC
2 8 GND
3 9 CS
4 5 IŠ naujo nustatyti
5 7 D/C
6 2 SDI (MOSI)
7 4 SCK
8 10 LED
9 3 SDO (MISO)
10 6 T_IRQ
Vaizdas
Vaizdas

Dabar belieka prijungti akumuliatorių ir užprogramuoti ESP12. Jei programuojate vietoje, prijunkite akumuliatorių dabar. Jei programuojate plokštę, po to prijunkite akumuliatorių.

4 žingsnis: programavimas

Atsisiųskite pridėtą failą ESP8266WiFiAnalMod.ino, savo „Arduino“eskizų aplanke sukurkite aplanką pavadinimu „ESP8266WiFiAnalMod“ir perkelkite failą į jį.

Paleiskite „Arduino IDE“(jei reikia, atsisiųskite ir įdiekite iš „Arduino.cc“) ir pridėkite ESP plokštės informaciją, jei jos neturite (žr. „Sparkfun“).

Įkelkite kodą (Failas> Sketchbook>… ESP8266WiFiAnalMod).

Tada nustatykite išsamią programavimo informaciją (Įrankiai):

Pasirinkite plokštę: bendras ESP8266 modulis

Žemiau rasite likusius nustatymus. Pasirinkite „Reset method“: „nodemcu“, jei naudojate programuotoją su automatiniu atstatymo įrenginiu ir GPIO0. Priešingu atveju nustatykite „ck“, jei programuojate vietoje arba tiesiogiai prijungdami prie USB prie nuoseklaus keitiklio.

Tikėtina, kad uosto numeris bus kitoks.

Vaizdas
Vaizdas

Jei norite programuoti vietoje, turėsite lituoti laidus prie jungiklio, kad sumažintumėte GPIO 0 ir prijungtumėte prie Tx ir Rx-žr.

Lengvesnis pasirinkimas yra naudoti programavimo plokštę: ESP-12E ir ESP-12F programavimo ir atskyrimo plokštę

Jei programuojate vietoje, prijunkite taip, kaip nurodyta toliau. Pastaba, jei ekranas prijungtas, Reset gali būti įjungtas jutikliniu ekranu, kitaip reikia perjungti iš Reset į GND. Maitinimas reikalingas plokštei, geriausia, kai OUT+ ir OUT- kaiščiams taikomas 3,7v. Jei naudojate akumuliatorių, įkroviklį reikia iš naujo nustatyti, trumpai prijungus USB laidą.

Vaizdas
Vaizdas

Jei rankiniu būdu nustatote programavimo režimą, nuspauskite žemą atstatymo režimą (jutiklinis ekranas), nuspauskite žemą GPIO 0, o žemai atleiskite atstatymą. Dabar spustelėkite atsisiuntimo mygtuką. Programavimas turėtų būti tęsiamas.

Jei naudojate programavimo ir pertraukimo plokštę, tiesiog prijunkite FTDI USB nuoseklųjį keitiklį, įjunkite 3,3 V maitinimą į programavimo plokštę ir spustelėkite atsisiųsti.

5 žingsnis: galutinis surinkimas ir bandymas

Dabar tinkamas laikas preliminariam bandymui. Jei ESP12 buvo užprogramuotas vietoje, jis turėtų veikti - tiesiog lengvai palieskite ekraną ir jis turėtų prasidėti. Jei užprogramuotas įrenginys - įdėkite ESP12 ir prijunkite akumuliatorių ir jis turėtų veikti.

Aš atjungiau akumuliatorių, eidamas per galutinį surinkimą, iš dalies dėl patogumo ir iš dalies, kad išvengčiau nenumatyto trumpojo jungimo.

Ekranas gražiai sumušamas tarp dangtelio ir dėklo apačios. Pakelta bazės dalis gražiai prilaiko ekraną prie dėžutės pusės.

Grandinės plokštė turi būti pritvirtinta prie ekrano plokštės, kad ji tilptų dangtelio viduje ir būtų USB įkrovimo lizdas. Kai matomas reikiamas ryšys tarp lentos padėčių, prie abiejų plokščių uždėkite dvipusę juostą (1 mm storio). Tai suteiks 2 mm tarpą, kuris turėtų vengti bet kokio elektros kontakto. Atsargumo dėlei uždėjau izoliacinę juostą, uždengiančią ekrano elektroniką:

Vaizdas
Vaizdas

Toliau nuo viršutinio dangtelio reikia nuimti maždaug 2 mm. Aš tai priglundau prie ekrano, papildomai iškirpdamas jutiklinio ekrano juostelės kabelį ir plastikinį ekrano laikiklį. Žiūrėkite žemiau:

Vaizdas
Vaizdas
Vaizdas
Vaizdas

Galiausiai turime įdėti akumuliatorių ir juo laikyti ekraną prie dėžutės pusės. Aš naudojau seną putų polistirolo gabalėlį ir supjaustiau ir šlifavau iki reikiamo storio. Aš priklijavau jį prie ekrano PCB, naudodamas ploną dvipusę juostą, ir naudoju keletą mažesnių juostos gabalų, kad akumuliatorius neslystų.

Vaizdas
Vaizdas

Kai viską sujungsite ir pamatysite, kad nieko neįvyksta, nesijaudinkite (dar). Įkroviklio modulio akumuliatoriaus apsaugos grandinę reikia iš naujo nustatyti. Tai daroma prijungus jį per „micro USB“laidą prie 5 V maitinimo šaltinio. Pakanka kelių sekundžių.

Ir dabar jūs turite naudingą įrenginį, kuris parodo ESP8266 sistemų galią, o mano atveju privertė mane pakeisti savo „WiFi“kanalą, nes aptiko 5 kitus tame pačiame kanale!

Tikiuosi, kad jums patiko šis puikus projektas.

Maikas

Rekomenduojamas: