Obsah:
- Krok 1: Tip: Inštalácia podpory Arduino pre ESP32 s podporou BLE
- Krok 2: Inštalácia knižníc PfodParser pre ESP32
- Krok 3: Použitie PfodDesignerV3 pre ESP32
- Krok 4: Generátor kódu ESP32 BLE
- Krok 5: Navrhnutie ponuky - výzva
- Krok 6: Navrhovanie ponuky - ovládanie LED PWM
- Krok 7: Vygenerujte kód ESP32
- Krok 8: Spustenie príkladov
- Krok 9: Zabezpečenie WiFi
Video: Generátor kódu ESP32 - Wifi, BLE, Bluetooth: 9 krokov
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:59
Úvod
ESP32 je nízkonákladový duálny procesor s podporou WiFi, Bluetooth Classic a BLE (Bluetooth Low Energy). Aj keď je čip už niekoľko rokov, podpora kódu pre Arduino stále nie je úplná (k aprílu 2018), ale tento návod a generátor kódu dopĺňa chýbajúce funkcie BLE a analogWrite.
Tip: ESP32 nemá funkciu „štandardného Arduino“analogWrite. Tento generátor kódu však generuje kód, ktorý ho pre vás simuluje
Tip: Inštalácia kódu ESP neobsahuje podporu BLE. Tu popísaná inštalácia obsahuje podporu BLE
Táto webová stránka sa bude zaoberať nastavením IDE Arduino na programovanie ESP32 na pripojenie BLE, Bluetooth alebo WiFi. PfodDesigner generuje kód pre každý z týchto typov pripojení a tiež generuje kód na simuláciu chýbajúcej funkcie analogWrite.
ESP32 je nízkonákladový duálny procesor s podporou WiFi, Bluetooth Classic a BLE (Bluetooth Low Energy). Aj keď je čip už niekoľko rokov, podpora kódu pre Arduino stále nie je úplná (k aprílu 2018), ale tento návod a generátor kódu dopĺňa chýbajúce funkcie BLE a analogWrite. Táto webová stránka sa zameria na nastavenie Arduino IDE na programovanie ESP32 pre pripojenie BLE, Bluetooth alebo WiFi. PfodDesigner generuje kód pre každý z týchto typov pripojení a tiež generuje kód na simuláciu chýbajúcej funkcie analogWrite.
Doplnok Arduino podporuje asi 31 dosiek ESP32. Pri použití programu pfodDesigner budete musieť zvoliť pinové pripojenia, ktoré sa zhodujú s tými, ktoré sú k dispozícii na vašej konkrétnej doske. Ako príklad dosky ESP32 sa tu používa Sparkfun ESP32 Thing (alebo Adafruit HUZZAH32 Feather), ale kód môžete použiť pre ktorúkoľvek z 31 podporovaných dosiek ESP32.
Bezplatná aplikácia pfodDesignerV3 pre Android slúži na vytvorenie ponuky ovládania (WYSIWYG) a následné vygenerovanie kódu pre ESP32, a to buď pre pripojenie BLE, WiFi alebo Bluetooth. Po naprogramovaní dosky ESP32 sa potom môžete pomocou aplikácie pfodApp pre Android (platenej) pripojiť k vášmu systému ESP32 (prostredníctvom BLE alebo WiFi alebo Bluetooth) a zobraziť tak svoju ponuku ovládania a ovládať svoj ESP32. Ak nechcete používať pfodApp, môžete vygenerovaný kódovaný kód použiť ako základ pre svoje vlastné pripojenie WiFi, BLE (Nordic UART) alebo Bluetooth, pretože každému z týchto typov pripojení poskytuje rozhranie Stream (tlač/čítanie)..
Krok 1: Tip: Inštalácia podpory Arduino pre ESP32 s podporou BLE
V apríli 2018 je inštalácia podpory Arduino ESP32 zapojená viac ako pre väčšinu ostatných dosiek a dodané knižnice kódov nie sú úplné. Na inštaláciu podpory ESP32 nemôžete použiť správcu dosky Arduino. Pri nastavovaní Arduina na programovanie ESP32 postupujte podľa týchto krokov. Tým sa nainštaluje ESP32 a tiež podpora BLE.
1 Nájdite cestu k svojmu adresáru umiestnenia skicára Arduino. Otvorte Arduino IDE a nájdite položku Súbor-> Predvoľby a v hornej časti obrazovky sa zobrazí umiestnenie Skicára.
2 Stiahnite si tento súbor ESP32_hardware.zip a rozbaľte ho do umiestnenia Skicár. Vytvorí tam hardvérový podadresár. V nepravdepodobnom prípade, že už máte v priečinku Skicár hardvérový podadresár, zlúčte jeho obsah s týmto.
3 Nainštalujte nástroje Xtensa a ESP32. Poznámka: Spracovanie ~ 0,5 Gig súborov trvá určitý čas, kým sa stiahne a nainštaluje. Prejdite do adresára hardware / espressif / esp32 / tools a potom pre počítače so systémom Windows spustite súbor get.exe. Pre používateľov počítačov Mac a Linux spustite skript get.py python a stiahnite si nástroje. Pomocou terminálu prejdite do priečinka hardware/espressif/esp32/tools. Potom zadajte: python get.pySkript python „get.py“stiahne nástroje Xtensa GNU a súpravu na vývoj softvéru (SDK) ESP32 a rozbalí ich na správne miesto.
Po dokončení by ste v priečinku „nástroje“mali vidieť niekoľko nových priečinkov vrátane „sdk“a „xtensa-esp32-elf“.
Akonáhle je to hotové, zatvorte a znova otvorte svoje Arduino IDE a teraz by ste mali mať k dispozícii dlhý zoznam dosiek ESP32, z ktorých si môžete vybrať v ponuke Nástroje-> Dosky. Vyberte „Vec SparkFun ESP32“(alebo „Perie Adafruit ESP32“)
Potom môžete otvoriť zoznam Príklady súborov a zobraziť množstvo príkladov súborov ESP32
Vyššie uvedeným procesom sa nainštaluje snímka kódu github pre podporu ESP32 a BLE, ktoré boli zlúčené do jedného súboru zip. Túto verziu týchto knižníc generuje kód pfodDesigner a nižšie uvedené príklady. Ak chcete najnovšiu verziu, s možno odlišnou sadou funkcií a chýb, stiahnite si zip najnovšej verzie https://github.com/espressif/arduino-esp32 a rozbaľte ho na hardvér/espressif a premenujte priečinok esp32 a potom si pre podporu BLE stiahnite zip najnovšej verzie https://github.com/espressif/arduino-esp32 a rozbaľte ho do priečinka esp32/libraries a premenujte ho ESP32_BLE_Arduino (v prípade potreby).
Krok 2: Inštalácia knižníc PfodParser pre ESP32
a) Potom si stiahnite knižnicu pfodParser.zip V3.23+, pfodDwgControls.zip a pre ESP32 WiFi súbor pfodESP32BufferedClient.zip, zip súbory do počítača, presuňte ich na pracovnú plochu alebo do iného priečinka, ktorý môžete ľahko nájsť.
b) Potom ich nainštalujte pomocou ponuky Arduino 1.8.2 IDE Skica → Importovať knižnicu → Pridať knižnicu. (Ak vám Arduino nedovolí nainštalovať ho, pretože knižnica už existuje, nájdite a odstráňte staršie priečinky pfodParser, pfodCmdParser alebo pfodCHAP atď. A potom ich importujte.)
c) Zastavte a reštartujte Arduino IDE a v časti Súbor-> Príklady by ste teraz mali vidieť knižnice pfodParser, pfodDwgControls a pfodESP32BufferedClient a množstvo príkladov.
Krok 3: Použitie PfodDesignerV3 pre ESP32
Bezplatná aplikácia pfodDesignerV3 (V3291+) podporuje generovanie kódu pre čip ESP32 na pripojenie cez BLE, WiFi alebo Bluetooth Classic k pfodApp (platené).
Existuje mnoho existujúcich návodov, ako vytvoriť pre svoj mobilný telefón so systémom Android ovládacie prvky na ovládanie širokého spektra dosiek pomocou programu pfodDesignerV3. S pfodDesignerV3 môžete vytvárať ovládacie prvky, ktoré zapínajú/vypínajú výstupy alebo ich pulzujú, ovládajú výstupy prostredníctvom PWM, zobrazujú stav vstupnej alebo analógovej hodnoty, zaznamenávajú a zaznamenávajú údaje a podmenu a mnoho ďalších.
Tip: Podpora ESP32 Arduino obsahuje podporu pre 31 rôznych dosiek ESP32. PfodDesignerV3 vám poskytuje prístup ku všetkým I/O kolíkom ESP32, ale nie všetky dosky spájajú všetky piny ESP32 s kolíkmi. V dokumentácii k svojej doske, pre ktoré sú piny dostupné, si prezrite súbor pins_arduino.h v adresári hardware / espressif / esp32 / variant.
Zoznam pinov pfodDesignerV3 obsahuje komentáre k dostupnosti a kolíkom na špeciálne použitie pre Sparkfun ESP32 Thing and Adafruit HUZZAH32 - ESP32 Feather Boards.
Tieto príklady používajú dosku Sparkfun ESP32 Thing a vytvárajú posuvník na ovládanie jasu integrovanej diódy LED pripojenej k pinu 5 z mobilného telefónu s Androidom. Ak namiesto toho používate dosku Adafruit HUZZAH32 - ESP32 Feather, potom je vstavaná LED dióda pripojená k pinu 13. Podpora ESP32 Arduino, nainštalovaná vyššie, nepodporuje analógový zápis Arduino priamo. Namiesto toho má ESP32 16 kanálov PWM, ktoré môžete ovládať a pripojiť sa k akémukoľvek z výstupov. PfodDesignerV3 generuje všetok potrebný kód na priradenie kanála a pripojenie k vami zvolenému výstupu. Nainštalujte si zadarmo pfodDesignerV3 (V3291+) z Google Play.
Krok 4: Generátor kódu ESP32 BLE
Spustiť novú ponuku
Kliknutím na tlačidlo Cieľ zmeníte cieľové zariadenie.
Prvým príkladom cieľa bude ESP32 BLE, takže kliknite na tlačidlo Bluetooth s nízkou spotrebou energie.
Vyberte ESP32 pripojený cez BLE a potom sa stlačením tlačidla späť na mobile vráťte na hlavnú obrazovku.
Krok 5: Navrhnutie ponuky - výzva
Tento jednoduchý príklad bude mať iba výzvu a jediné ovládanie. Text výzvy nastavíte kliknutím na tlačidlo Upraviť výzvu a potom na tlačidlo Upraviť text výzvy.
Tu je výzva nastavená na „LED ESP32“. Kliknutím na tlačidlo začiarknutia uložíte úpravy a vrátite sa na predchádzajúcu obrazovku. Potom kliknutím na položku Nastaviť farbu pozadia vyberte pre ponuku ovládacích prvkov celú farbu.
Pre každý ovládací prvok môžete vybrať rôzne farby. Pre výzvu sú k dispozícii rôzne ďalšie formáty. Tu je pozadie nastavené na modrú a veľkosť písma je +5 a text je tučný. Ukážka formátovanej výzvy sa zobrazí v spodnej časti obrazovky Výzva na úpravu.
Krok 6: Navrhovanie ponuky - ovládanie LED PWM
Pomocou tlačidla späť na mobile sa vráťte do hlavnej ponuky a potom kliknutím na položku Pridať položku ponuky pridajte ovládaciu alebo zobrazenú položku.
Vyberte položku PWM Output. V hornej časti obrazovky je zobrazený náhľad ovládacieho prvku.
Tip: ESP32 nemá funkciu „štandardného Arduino“analogWrite. Tento generátor kódu však generuje kód, ktorý ho pre vás simuluje
Kliknite na tlačidlo Upraviť úvodný text a zmeňte „Nastavenie PWM“na „Led“. Všimnite si koncový priestor, aby ste oddelili „LED“od indikácie %.
Kliknutím na tlačidlo začiarknutia uložte úpravu a potom posuňte zobrazenie nadol na tlačidlo „Nie je pripojené k pinu I/O“.
Kliknutím na toto tlačidlo zobrazíte zoznam pinov, ktoré je možné použiť ako výstupy.
Toto ukazuje kolíky na špeciálne použitie pre dosky Sparkfun ESP32 Thing a Adafruit HUZZAH32 Feather. Vyberte pin 5, aby posuvný ovládač ovládal jas LED diódy Sparkfun ESP32 Thing. Ak používate perovú dosku Adafruit HUZZAH32, zvoľte namiesto nej kolík 13. Ostatné dosky nájdete v dokumentácii k svojim doskám a v súbore pins_arduino.h v adresári hardware / espressif / esp32 / variant.
Keď potom dokončíte akékoľvek ďalšie nastavenia formátovania pre tento posúvač, pomocou tlačidla späť na mobile sa vráťte do hlavnej ponuky a kliknutím na položku Ponuka ukážky uvidíte, ako bude konečná ponuka vo vašom mobile vyzerať, keď ju zobrazí aplikácia pfodApp. Ovládacie prvky sú zverejnené, takže ich môžete v ukážke presúvať.
Krok 7: Vygenerujte kód ESP32
Vráťte sa do hlavnej ponuky a posuňte sa nadol na tlačidlo Generovať kód.
Na vygenerovanie kódu kliknite na tlačidlo Generovať kód a potom na tlačidlo Zapísať kód do súboru
Ukončite pfodDesignerV3 a preneste kód v súbore /pfodAppRawData/pfodDesignerV3.txt z mobilu do počítača. Spôsoby, ako to urobiť, nájdete na stránke pfodAppForAndroidGettingStarted.pdf. Aplikácia wifi file transfer pro od spoločnosti smarterDroid je jedným zo spôsobov prenosu.
Pomocou tlačidla „Zmeniť cieľ“na obrazovke Generovať kód môžete prepínať medzi ESP32 cez BLE, ESP32 cez Bluetooth a ESP32 cez WiFi
Krok 8: Spustenie príkladov
Pomocou tlačidla „Zmeniť cieľ“na obrazovke Generovať kód môžete prepínať medzi ESP32 cez BLE, ESP32 cez Bluetooth a ESP32 cez WiFi
Takto boli z vyššie uvedeného návrhu generované nasledujúce tri ukážkové skice.
Spustenie príkladu pfodESP32_BLE
Nastavením cieľa na ESP32 prostredníctvom BLE sa vygeneruje kód v pfodESP32_LED_BLE.ino Táto skica je k dispozícii aj v časti Súbor-> Príklady-> pfodParser. Otvorte ten príklad, potom po naprogramovaní veci Sparkfun ESP32 Thing (alebo inej dosky ESP32) by ste k nej potom mali vytvoriť pripojenie na serveri pfodApp (podrobnosti nájdete v časti pfodAppForAndroidGettingStarted.pdf) a pripojiť sa a môcť nastaviť jas doska viedla.
TIP: ESP32 používa rovnakú adresu bluetooth pre BLE aj Bluetooth, takže ak ste predtým nastavili pripojenie Bluetooth ESP32 v programe pfodApp, pred nastavením pripojenia BLE musíte toto pripojenie Bluetooth pfodApp odstrániť, pretože pfodApp filtruje existujúce pripojenia (podľa adresa) zo zoznamu dostupných zariadení. Tiež budete musieť otvoriť nastavenia svojho mobilného telefónu a „zabudnúť“pripojenie Bluetooth ESP32 a potom vypnúť Bluetooth mobilného telefónu a reštartovať telefón, aby sa vymazal zásobník Bluetooth
TIP: Knižnica ESP32_BLE_Arduino od Neila Kolbana nie je kompatibilná s BLEPeriférnou knižnicou od Sandeep Mistry, ktorú používajú niektoré ďalšie ciele BLE generované programom pfodDesigner. Aby ste mohli zostaviť náčrty ESP32 BLE, musíte odstrániť adresár BLEPeripheral (ak existuje) z adresára Arduino/libraries.
Spustenie príkladu pfodESP32_Bluetooth
Nastavením cieľa na ESP32 cez Bluetooth sa vygeneruje kód v pfodESP32_LED_Bluetooth.ino Táto skica je k dispozícii aj v časti Súbor-> Príklady-> pfodParser. Otvorte tento príklad a naprogramujte Sparkfun ESP32 Thing (alebo inú dosku ESP32). ESP32 musíte spárovať s telefónom, číslo PIN nie je potrebné. Potom k nemu vytvorte pripojenie na pfodApp (podrobnosti nájdete v časti pfodAppForAndroidGettingStarted.pdf) a pripojte sa a budete môcť nastaviť jas LED diódy dosky.
Spustenie príkladu pfodESP32_WiFi
Nastavením cieľa na ESP32 prostredníctvom WiFi sa vygeneruje kód v pfodESP32_LED_WiFi.ino Táto skica je k dispozícii aj v časti Súbor-> Príklady-> pfodParser. Otvorte tento príklad, zadajte názov a heslo svojej siete a zvoľte pre toto zariadenie statickú adresu IP. Potom, po naprogramovaní veci Sparkfun ESP32 (alebo inej dosky ESP32), by ste k nej mali vytvoriť pripojenie na serveri pfodApp (podrobnosti nájdete v časti pfodAppForAndroidGettingStarted.pdf) a pripojiť sa a mať možnosť nastaviť jas LED diódy dosky.
Krok 9: Zabezpečenie WiFi
Ak sa pripájate k ESP32 cez internet (cez wifi), potom je bezpečnosť dôležitá. Nechcete, aby vám napríklad garážovú bránu otvoril len tak hocikto. Generátor kódu a knižnica pfodParser podporuje 128 -bitové zabezpečenie. Toto zabezpečenie nešifruje správy, ale namiesto toho do každej správy pridá kryptografický hash na ochranu pred neautorizovaným pripojením a kontrolou. Podrobnosti o implementácii tohto zabezpečenia nájdete v časti SipHash Secure Challenge and Response.
Pridanie 128 -bitového zabezpečenia
Zabezpečenie pred neautorizovaným prístupom používateľov k vášmu zariadeniu cez internet je rovnako jednoduché ako úprava#define pfodSecurityCode "" a pridanie vlastného tajného kódu. (až 32 hexadecimálnych číslic)
Napríklad na nastavenie bezpečnostného kódu 173057F7A706AF9BBE65D51122A14CEE by ste použili#define pfodSecurityCode "173057F7A706AF9BBE65D51122A14CEE" Samozrejme by ste mali použiť svoj tajný kód. Nastavenie vlastného kódu v pripojení pfodApp vám a nikomu ďalšiemu umožní pripojenie.
Na zaistenie bezpečnosti je potrebný dlhý náhodný kód. pfodApp podporuje až 128 bitov ako 32 Hex číslic.
Na vygenerovanie vlastného tajného kódu si môžete stiahnuť náhodný generátor tajných kľúčov odtiaľto. Tajný generátor kľúčov odtiaľto. Tento program okrem generovania náhodných kľúčov zapisuje aj ako QR kódy, takže ich môžete ľahko a presne nastaviť vo svojom pripojení pfodApp.
Môžete si vytlačiť QR kód a pripojiť ho k svojmu zariadeniu pfodDevice. Potom kliknutím na tlačidlo Skenovať QR na obrazovke pripojenia k sieti pfodApp WiFi načítajte heslo.
Podrobný príklad použitia generátora kľúčov a kódu QR nájdete v dokumente Jednoduché WiFi/Arduino pfodDevice ™ so 128 -bitovým zabezpečením.
Záver
Tento tutoriál ukázal, ako nastaviť Arduino IDE na programovanie ESP32. Potom pomocou bezplatnej aplikácie pfodDesigner navrhla ponuku na ovládanie jasu integrovaného LED a generovaného kódu na pripojenie k ESP32 prostredníctvom BLE, Bluetooth alebo WiFi. Ak sa potom pripojíte prostredníctvom aplikácie pfodApp, zobrazí sa ponuka, ktorú ste navrhli, a budete môcť ovládať jas diódy pomocou posúvača. PfodDesigner generuje všetok kód Arduino vrátane simulácie analógového zápisu Arduina. Nevyžadovalo sa žiadne kódovanie Arduino. Aplikácia pfodApp sa stará o všetky stránky systému Android, nie je potrebné žiadne kódovanie systému Android.
Odporúča:
Generátor kódu Escape Room: 4 kroky
Generátor kódov únikovej miestnosti: Predbežný projekt priniesol viac strojového vybavenia v únikovej miestnosti. Tento stroj na výrobu vanových dverí má k dispozícii dve dvere, ktoré vám môžu priniesť skvelé služby, ako napríklad
Mi pásmový detektor používajúci ESP32 BLE: 6 krokov
Mi Band Detector using ESP32 BLE: Hello Maker m ( - -) m Prečítal som si tento článok vo formulári 陳亮 (moononournation github) o tom, ako používať esp32 ble na skenovanie zariadenia, takže som musel vyskúšať tento kód na github Arduino_BLE_Scanner. teraz chcem použiť svoj Mi Band 3 na odomknutie dverí, keď prídem do svojej
ESP32 Bluetooth návod - Ako používať vstavané Bluetooth v ESP32: 5 krokov
ESP32 Bluetooth návod | Ako používať vstavaný Bluetooth v ESP32: Ahoj, pretože doska ESP32 je vybavená WiFi a Bluetooth, ale pre naše väčšinou Projekty zvyčajne používame iba Wifi, nepoužívame Bluetooth. Takže v tomto návode ukážem, aké ľahké je používať Bluetooth ESP32 & Pre vaše základné projekty
Rolovací robot s vecou ESP32 a ovládačom TB6612FNG, ovládaný systémom Android cez BLE: 11 krokov
Rolovací robot s vecou ESP32 a ovládačom TB6612FNG, ovládaný systémom Android cez BLE: Ahoj všetci, toto je môj prvý pokyn. Valiaci sa robot (prezývaný Raidho - z runy, ktorá je spojená s pohybom) založený na veciach ESP32 Thing, TB6612 FNG a BLE. Jedna časť, ktorá sa môže zdať zvláštna, je, že fotografie nepochádzajú z výrobného postupu
Diaľkové ovládanie ESP32 Bluetooth BLE: 8 krokov
ESP32 Bluetooth BLE diaľkové ovládanie: Tento projekt je príkladom toho, ako pripojiť lacný joystick Bluetooth BLE k ESP32. Kód bol napísaný pomocou Arduino IDE Ver 1.8.5 s doplnkom ESP32. Použitý joystick BLE je komerčné zariadenie, ktoré si môžete kúpiť na Inte