Sisukord:

ESP32 koodigeneraator - Wifi, BLE, Bluetooth: 9 sammu
ESP32 koodigeneraator - Wifi, BLE, Bluetooth: 9 sammu

Video: ESP32 koodigeneraator - Wifi, BLE, Bluetooth: 9 sammu

Video: ESP32 koodigeneraator - Wifi, BLE, Bluetooth: 9 sammu
Video: ESP32, более мощная чем любая другая Ардуино 2024, November
Anonim
ESP32 koodigeneraator - Wifi, BLE, Bluetooth
ESP32 koodigeneraator - Wifi, BLE, Bluetooth

Sissejuhatus

ESP32 on odav kahekordse protsessori kiip, mis toetab WiFi, Bluetooth Classic ja BLE (Bluetooth Low Energy). Kuigi kiip on juba mitu aastat väljas olnud, pole Arduino kooditugi veel täielik (seisuga aprill 2018), kuid see juhendatav ja koodigeneraator täidab puuduvad BLE ja analogWrite funktsioonid.

Näpunäide. ESP32 -l pole standardset Arduino analogWrite funktsiooni. Kuid see koodigeneraator genereerib koodi, mis seda teie jaoks simuleerib

Näpunäide. ESP -koodi installimine ei sisalda BLE -tugi. Siin kirjeldatud install sisaldab BLE tuge

See veebileht hõlmab Arduino IDE seadistamist ESP32 programmeerimiseks BLE-, Bluetooth- või WiFi -ühenduste jaoks. PfodDesigner genereerib koodi igale sellisele ühenduse tüübile ja loob ka koodi, et simuleerida puuduvat analogWrite funktsiooni.

ESP32 on odav kahekordse protsessori kiip, mis toetab WiFi, Bluetooth Classic ja BLE (Bluetooth Low Energy). Kuigi kiip on juba mitu aastat väljas olnud, pole Arduino kooditugi veel täielik (2018. aasta aprillis), kuid see õpetus ja koodigeneraator täidab puuduvad BLE ja analogWrite funktsioonid. See veebileht hõlmab Arduino IDE ESP32 programmeerimiseks BLE-, Bluetooth- või WiFi -ühenduste jaoks. PfodDesigner genereerib koodi igale sellisele ühenduse tüübile ja loob ka koodi, et simuleerida puuduvat analogWrite funktsiooni.

Arduino lisandmoodul toetab umbes 31 ESP32 tahvlit. PfodDesigneri kasutamisel peate valima tihvtühendused, mis vastavad teie tahvlil saadaolevatele. Sparkfun ESP32 asja (või Adafruit HUZZAH32 Feather) kasutatakse siin ESP32 näidisplaadina, kuid koodi saate kasutada mis tahes 31 toetatud ESP32 plaadi jaoks.

Tasuta Androidi rakendust pfodDesignerV3 kasutatakse juhtmenüü (WYSIWYG) loomiseks ja seejärel ESP32 koodi loomiseks kas BLE-, WiFi- või Bluetooth -ühenduse jaoks. Pärast ESP32 plaadi programmeerimist saate seejärel kasutada pfodApp Androidi rakendust (tasuline), et ühendada oma ESP32 (BLE või WiFi või Bluetoothi kaudu) ning kuvada oma juhtmenüü ja juhtida oma ESP32. Kui te ei soovi pfodAppi kasutada, saate genereeritud kodeeringut siiski kasutada oma WiFi, BLE (Nordic UART) või Bluetooth -ühenduste aluseks, kuna see pakub voo (printimise/lugemise) liidest igale nendele ühenduse tüüpidele.

Samm: näpunäide. Arduino toe installimine ESP32 -le koos BLE -toega

2018. aasta aprilli seisuga on Arduino ESP32 toe installimine rohkem kaasatud enamiku teiste tahvlite jaoks ja pakutavad kooditeegid pole täielikud. Te ei saa ESP32 toe installimiseks kasutada Arduino juhatuse haldurit. Järgige neid samme Arduino seadistamiseks ESP32 programmeerimiseks. See installib ESP32 ja ka BLE toe.

1 Leidke oma Arduino visandiraamatu asukohakataloogi tee. Avage Arduino IDE ja vaadake jaotist Fail-> Eelistused ning selle ekraani ülaosas näete visandiraamatu asukohta.

2 Laadige see ESP32_hardware.zip fail alla ja pakkige see Sketchbooki asukohta lahti. See loob sinna riistvara alamkataloogi. Ebatõenäolisel juhul, kui teil on visandiraamatu asukohas juba riistvara alamkataloog, ühendage selle sisu selle kataloogiga.

3 Installige Xtensa ja ESP32 tööriistad. Märkus. See allalaadimine ja installimine võtab aega ~ 0.5Gig failide töötlemiseks. Minge riistvara / espressif / esp32 / tools kataloogi, seejärel käivitage Windowsi masinate jaoks fail get.exe. Maci ja Linuxi kasutajate jaoks käivitage tööriistade allalaadimiseks skript get.py. Liikuge terminali kasutades riistvara/espressif/esp32/tools kausta. Seejärel tippige: python get.pyPythoni skript „get.py” laadib alla Xtensa GNU tööriistad ja tarkvaraarenduskomplekti ESP32 (SDK) ning pakib need õigesse kohta lahti.

Kui see on tehtud, peaksite kataloogis "tööriistad" nägema mõnda uut kausta, sealhulgas "sdk" ja "xtensa-esp32-elf".

Kui see on lõpule jõudnud, sulgege ja avage uuesti Arduino IDE ning teil peaks nüüd olema tööriistade-> tahvlite menüüst pikk ESP32-plaatide loend. Valige „SparkFun ESP32 Thing” (või „Adafruit ESP32 Feather”)

Seejärel saate avada loendi Failinäited, et näha mitmeid ESP32 näidisfaile

Ülaltoodud protsess installib ESP32 ja BLE toe github -koodi hetktõmmise, mis on ühendatud üheks ZIP -failiks. PfodDesigneri loodud kood ja alltoodud näited kasutavad nende teekide seda versiooni. Kui soovite uusimat versiooni koos võimalike erinevate funktsioonide ja vigadega, laadige alla https://github.com/espressif/arduino-esp32 uusima versiooni zip ja pakkige see riistvara/espressif alla ning nimetage see kausta esp32 ja seejärel BLE toe jaoks laadige alla https://github.com/espressif/arduino-esp32 uusima versiooni zip ja pakkige see esp32/libraries kausta lahti ning nimetage ümber vajadusel ESP32_BLE_Arduino (vajadusel).

Samm: PfodParseri teekide installimine ESP32 jaoks

a) Seejärel laadige oma arvutisse alla pfodParser.zip raamatukogu V3.23+, pfodDwgControls.zip ja ESP32 WiFi puhul pfodESP32BufferedClient.zip, teisaldage need oma töölauale või mõnda teise hõlpsasti leitavasse kausta.

b) Seejärel kasutage nende installimiseks Arduino 1.8.2 IDE menüüvalikut Sketch → Import Library → Add Library. (Kui Arduino ei luba teil seda installida, kuna teek on juba olemas, leidke ja kustutage vanemad kaustad pfodParser, pfodCmdParser või pfodCHAP jne ning seejärel importige need)

c) Peatage ja taaskäivitage Arduino IDE ning menüüs Fail-> Näited peaksite nüüd nägema teeke pfodParser, pfodDwgControls ja pfodESP32BufferedClient ning mitmeid näiteid.

Samm: PfodDesignerV3 kasutamine ESP32 jaoks

Tasuta rakendus pfodDesignerV3 (V3291+) toetab koodi genereerimist ESP32 kiibile, et ühendada BLE, WiFi või Bluetooth Classic kaudu pfodAppiga (tasuline).

Olemas on palju õpetusi selle kohta, kuidas luua oma Android -mobiilile juhtelemente, et juhtida pfodDesignerV3 abil laia valikut tahvleid. PfodDesignerV3 abil saate luua juhtelemente, mis lülitavad väljundid sisse/välja või impulsivad neid, juhtida väljundeid PWM kaudu, kuvada sisendi või analoogväärtuse olekut, logida ja joonistada andmeid ning alammenüüsid ja palju muud.

Näpunäide: ESP32 Arduino tugi sisaldab tuge umbes 31 erinevale ESP32 plaadile. PfodDesignerV3 annab teile juurdepääsu kõikidele ESP32 I/O kontaktidele, kuid mitte kõik tahvlid ei ühenda kõiki ESP32 kontakte tahvlitega. Kontrollige oma tahvli dokumentatsiooni, mille jaoks tihvtid on kättesaadavad, ja vaadake faili pins_arduino.h oma plaadi riistvara / espressif / esp32 / variant kataloogi alt.

pfodDesignerV3 nööpnõelte loend sisaldab kommentaare Sparkfun ESP32 Thing ja Adafruit HUZZAH32 - ESP32 sulgede tahvlite saadavuse ja erikasutusnõelte kohta.

Need näited kasutavad Sparkfun ESP32 Thing plaati ja loovad liuguri, et juhtida teie Android -mobiiltelefoni 5. tihvtiga ühendatud LED -valgustugevuse heledust. Kui kasutate selle asemel Adafruit HUZZAH32 - ESP32 sulgede tahvlit, siis on pardal olev LED ühendatud tihvtiga 13. Eespool paigaldatud ESP32 Arduino tugi ei toeta otse Arduino analogWrite'i. Selle asemel on ESP32 -l 16 PWM -kanalit, mida saate juhtida ja ühendada mis tahes väljundiga. PfodDesignerV3 genereerib kogu vajaliku koodi, et eraldada kanal ja ühendada see teie valitud väljundiga. Installige Google Playst tasuta pfodDesignerV3 (V3291+).

Samm: ESP32 BLE koodigeneraator

ESP32 BLE koodigeneraator
ESP32 BLE koodigeneraator
ESP32 BLE koodigeneraator
ESP32 BLE koodigeneraator
ESP32 BLE koodigeneraator
ESP32 BLE koodigeneraator
ESP32 BLE koodigeneraator
ESP32 BLE koodigeneraator

Alustage uut menüüd

Sihtseadme muutmiseks klõpsake nuppu Siht.

Esimene sihtmärgi näide on ESP32 BLE, nii et klõpsake Bluetooth Low Energy nuppu.

Valige BLE kaudu ühendatud ESP32 ja seejärel vajutage põhiekraanile naasmiseks mobiiltelefoni tagasinuppu.

Samm: menüü kujundamine - viip

Menüü kujundamine - viip
Menüü kujundamine - viip
Menüü kujundamine - viip
Menüü kujundamine - viip
Menüü kujundamine - viip
Menüü kujundamine - viip

Sellel lihtsal näitel on ainult viip ja üks juhtelement. Viipeteksti määramiseks klõpsake nuppu Redigeeri viip ja seejärel nuppu Redigeeri viipateksti.

Siin on viip seatud olekule „ESP32 Led”. Muudatuste salvestamiseks ja eelmisele ekraanile naasmiseks klõpsake linnukese nuppu. Seejärel klõpsake suvandite menüü kõigi värvide valimiseks käsku Määra taustavärv.

Iga juhtelemendi jaoks saate valida erinevad värvid. Viipamiseks on saadaval ka mitmeid muid vorminguid. Siin on taust seatud sinisele ja fondi suurus on +5 ning tekst on paks. Vormindatud viiba eelvaade kuvatakse redigeerimisviiba ekraani allosas.

6. samm: menüü kujundamine - PWM LED -juhtimine

Menüü kujundamine - PWM Led Control
Menüü kujundamine - PWM Led Control
Menüü kujundamine - PWM Led Control
Menüü kujundamine - PWM Led Control
Menüü kujundamine - PWM Led Control
Menüü kujundamine - PWM Led Control
Menüü kujundamine - PWM Led Control
Menüü kujundamine - PWM Led Control

Kasutage peamenüüsse naasmiseks mobiili tagasinuppu ja seejärel klõpsake juhtelemendi või kuvatava üksuse lisamiseks nuppu Lisa menüüelement.

Valige üksus PWM Output. Ekraani ülaosas kuvatakse juhtelemendi eelvaade.

Näpunäide. ESP32 -l pole standardset Arduino analogWrite funktsiooni. Kuid see koodigeneraator genereerib koodi, mis seda teie jaoks simuleerib

Klõpsake nuppu Redigeeri juhtteksti ja muutke „PWM Setting“väärtuseks „Led“. Märkige lõppruum, et eraldada „Led“% näidust.

Muudatuse salvestamiseks klõpsake linnukese nuppu ja kerige seejärel alla nupule „Ei ole ühendatud I/O -pistikuga”.

Väljundina kasutatavate tihvtide loendi kuvamiseks klõpsake seda nuppu.

See näitab Sparkfun ESP32 Thing ja Adafruit HUZZAH32 Feather plaatide erikasutusnõelu. Valige tihvt 5, nii et liugur juhib Sparkfun ESP32 Thingi pardal asuva LED-heledust. Kui kasutate Adafruit HUZZAH32 sulgede tahvlit, valige selle asemel tihvt 13. Teiste tahvlite puhul kontrollige oma tahvlite dokumentatsiooni ja faili pins_arduino.h oma riistvara / espressif / esp32 / variants kataloogi alt

Seejärel, kui olete selle liuguri jaoks muud vormindusseaded teinud, kasutage mobiiltelefoni tagasinuppu, et naasta peamenüüsse, ja klõpsake eelvaate menüüd, et näha, milline näeb välja lõppmenüü teie mobiiltelefonil, kui seda kuvab pfodApp. Juhtelemendid on reaalajas, nii et saate neid eelvaates liigutada.

Samm: looge ESP32 kood

Looge ESP32 kood
Looge ESP32 kood
Looge ESP32 kood
Looge ESP32 kood

Minge tagasi peamenüüsse ja kerige alla nupule Loo kood.

Koodi genereerimiseks klõpsake nuppu Loo kood ja seejärel nuppu Kirjutage fail faili

Väljuge pfodDesignerV3 -st ja kandke kood /pfodAppRawData/pfodDesignerV3.txt oma mobiiltelefonist arvutisse. Selle tegemiseks vaadake pfodAppForAndroidGettingStarted.pdf. SmarterDroidi WiFi -failiedastusprofiili rakendus on üks viis edastamiseks.

Kasutades koodi loomise ekraanil nuppu „Muuda sihtmärki”, saate lülituda ESP32 kaudu BLE, ESP32 Bluetoothi ja ESP32 vahel WiFi kaudu

8. samm: näidete käitamine

Näidete käitamine
Näidete käitamine

Kasutades koodi loomise ekraanil olevat nuppu „Muuda sihtmärki”, saate vahetada ESP32 vahel BLE, ESP32 Bluetoothi ja ESP32 vahel WiFi kaudu

Nii loodi ülaltoodud kujundusest järgmised kolm näidisvisandit.

Näite pfodESP32_BLE käitamine

Sihtmärgi seadmine BLE kaudu ESP32-ks genereerib koodi pfodESP32_LED_BLE.ino. See visand on saadaval ka jaotises Fail-> Näited-> pfodParser. Avage see näide, seejärel peaksite pärast Sparkfun ESP32 Thingi (või muu ESP32 tahvli) programmeerimist seadistama sellega ühenduse pfodAppis (üksikasju vt pfodAppForAndroidGettingStarted.pdf) ning ühendama ja suutma reguleerida juhatus juhatas.

NÕUANNE: ESP32 kasutab nii BLE kui ka Bluetoothi jaoks sama bluetooth -aadressi, nii et kui olete varem seadistanud ESP32 Bluetooth -ühenduse rakenduses pfodApp, peate selle pfodApp Bluetooth -ühenduse enne BLE -ühenduse seadistamist kustutama, kuna pfodApp filtreerib olemasolevad ühendused (aadress) saadaolevate seadmete kuvamisloendist. Võimalik, et peate ka oma mobiilseadme avama ja ESP32 Bluetooth -ühenduse „unustama” ning seejärel Bluetoothi virna tühjendamiseks mobiiltelefoni Bluetooth välja lülitama ja telefoni taaskäivitama

NÕUANNE: Neil Kolbani ESP32_BLE_Arduino raamatukogu ei ühildu Sandeep Mistry BLEPeripheral raamatukoguga, mida kasutavad mõned teised pfodDesigneri loodud BLE sihtmärgid. Nii et ESP32 BLE visandite koostamiseks peate oma Arduino/teekide kataloogist eemaldama kataloogi BLEPeripheral (kui see on olemas).

Näide pfodESP32_Bluetooth

Seadistades Bluetoothi kaudu sihtmärgiks ESP32, luuakse kood pfodESP32_LED_Bluetooth.ino. See visand on saadaval ka jaotises Fail-> Näited-> pfodParser. Avage see näide ja seejärel programmeerige Sparkfun ESP32 Thing (või muu ESP32 plaat). Peate ESP32 oma telefoniga siduma, PIN -koodi pole vaja. Seejärel seadistage sellega ühendus pfodAppis (vt üksikasju pfodAppForAndroidGettingStarted.pdf) ning ühendage ja saate reguleerida tahvli LED -i heledust.

Näite pfodESP32_WiFi käitamine

Kui määrate WiFi kaudu sihtmärgiks ESP32, luuakse kood pfodESP32_LED_WiFi.ino. See visand on saadaval ka jaotises Fail-> Näited-> pfodParser. Avage see näide ja sisestage oma võrgu nimi ja parool ning valige selle seadme jaoks staatiline IP. Seejärel peaksite pärast Sparkfun ESP32 Thingi (või muu ESP32 tahvli) programmeerimist seadistama sellega ühenduse pfodAppis (vt üksikasju pfodAppForAndroidGettingStarted.pdf) ning ühendama ja saama reguleerida tahvli LED -i heledust.

Samm: WiFi turvalisus

Kui ühendate ESP32 -ga Interneti kaudu (wifi kaudu), on turvalisus oluline. Te ei soovi, et näiteks keegi saaks teie garaažiukse avada. Koodigeneraator ja teek pfodParser toetab 128 -bitist turvalisust. See turvalisus ei krüpteeri sõnumeid, vaid lisab igale sõnumile krüptograafilise räsi, mis kaitseb volitamata ühenduse ja kontrolli eest. Vaadake SipHashi turvalist väljakutset ja vastust selle turvalisuse rakendamise üksikasjade kohta.

128 -bitise turvalisuse lisamine

Kaitsmine volitamata kasutajate eest, kes pääsevad teie seadmele Interneti kaudu juurde, on sama lihtne kui muuta#define pfodSecurityCode "" oma salakoodi lisamiseks. (kuni 32 kuuekohalist numbrit)

Näiteks turvakoodi 173057F7A706AF9BBE65D51122A14CEE määramiseks kasutaksite#define pfodSecurityCode "173057F7A706AF9BBE65D51122A14CEE" Muidugi peaksite kasutama oma salakoodi. Oma koodi seadistamine pfodApp-ühenduses võimaldab teil ja mitte kellelgi teisel ühendust luua.

Hea turvalisuse tagamiseks on vaja pikka juhuslikku koodi. pfodApp toetab kuni 128 bitti 32Hex -numbrina.

Oma salakoodi loomiseks saate siit alla laadida juhusliku salajase võtme generaatori. Lisaks juhuslike võtmete genereerimisele kirjutab see programm need välja ka QR -koodidena, et saaksite need hõlpsalt ja täpselt oma pfodApp -ühenduse seadistada.

Saate QR -koodi välja printida ja selle oma pfodDevice seadmele kinnitada. Seejärel klõpsake parooli lugemiseks pfodApp WiFi -ühenduse ekraanil skannimise QR -nuppu.

Üksikasjalikku näidet võtmegeneraatori ja QR -koodi kasutamise kohta leiate jaotisest Lihtne WiFi/Arduino pfodDevice ™ koos 128 -bitise turvalisusega.

Järeldus

See õpetus on näidanud, kuidas seadistada Arduino IDE ESP32 programmeerimiseks. Seejärel kasutas ta tasuta pfodDesigneri rakendust, et kujundada menüü, mis reguleerib rongisisese LED -i ja genereeritud koodi heledust, et luua ühendus ESP32 -ga BLE, Bluetoothi või WiFi kaudu. Kui loote ühenduse pfodApp apppfodApp rakenduse kaudu, näete oma kavandatud menüüd ja saate juhtida LED -i heledust liuguri abil. PfodDesigner genereerib kogu Arduino koodi, sealhulgas simuleerib Arduino analogWrite'i. Arduino kodeerimist polnud vaja. PfodApp hoolitseb kogu Androidi poole eest, Androidi kodeerimist pole vaja.

Soovitan: