Použití ESP32 Bluetooth Classic s Arduino IDE

Pouziti Esp32 Bluetooth Classic S Arduino Ide



ESP32 je deska založená na mikrokontroléru, která přichází s podporou Wi-Fi a Bluetooth. Je to deska založená na IoT, kterou lze integrovat s více senzory pro provádění instrukcí. Deska ESP32 má široké uplatnění tam, kde je vyžadována bezdrátová komunikace. Pojďme diskutovat o tom, jak můžeme nakonfigurovat ESP32 Bluetooth a přenášet informace pomocí něj.

ESP32 Bluetooth Classic s Arduino IDE

Deska ESP32 přichází s duální podporou Bluetooth, jedna je Bluetooth Classic a druhá je BLE (Bluetooth Low Energy). Dnes budeme diskutovat pouze o Bluetooth Classic. Jediný rozdíl, který mezi oběma existuje, je ten, že Bluetooth Classic zvládne spoustu datových přenosů, ale spotřebovává baterii vyšší rychlostí, nicméně Bluetooth Low Energy je varianta šetřící energii, která se používá pro komunikaci na krátké vzdálenosti. BLE zůstane v režimu spánku, dokud není inicializován pro přenos dat.







ESP32 Classic Bluetooth Serial Communication

Funkce ESP32 Bluetooth je nějak podobná Arduinu, jako jsme to udělali v Arduinu, protože se používá externí Bluetooth senzor jako HC-05. Senzory Arduino i HC-05 komunikují prostřednictvím sériové komunikace. Totéž platí pro ESP32, ale rozdíl je v tom, že ESP32 přichází s vestavěnými moduly Bluetooth, které nejprve přijímají data a poté je předávají procesoru Xtensa.



Takže k navázání této komunikace“ Bluetooth Serial ” je použita knihovna, která je podobná sériové knihovně Arduino, ale je pouze v rámci ESP32. Níže jsou uvedeny některé funkce nabízené sériovou knihovnou Bluetooth:



  • začít()
  • dostupný()
  • napsat()
  • číst()

Bluetooth řízená LED pomocí ESP32

Pojďme napsat jednoduchý kód, který dokáže ovládat LED pomocí mobilního Bluetooth přes bezdrátovou komunikaci Bluetooth. Níže je uveden hardware potřebný k ovládání LED pomocí sériové komunikace Bluetooth:





  • ESP32
  • VEDENÝ
  • Breadboard
  • zařízení Android
  • Sériová aplikace Bluetooth terminálu

Obvod

Připojte LED na digitální pin 15 ESP32 se záporným pólem připojeným na GND desky ESP32. Pro bezpečný proudový limit mezi ně můžeme také připojit odpor (220 ohmů):

Kód

Otevřete Arduino IDE a vyberte desku ESP32 ve Správci desek, abyste viděli, jak nainstalovat desku ESP32 do Arduino IDE klikněte tady . Po výběru desky napište kód níže do okna editoru:



#include   /*Bluetooth sériová komunikační knihovna*/

#define LED_PIN 15  /*vývod LED inicializován*/

Bluetooth Serial SerialBT;

byte BT_INP;

#if !defined(CONFIG_BT_ENABLED) || !defined(CONFIG_BLUEDROID_ENABLED)/*Zkontrolovat bluetooth v SDK*/

#error Bluetooth off--Spusťte `make menuconfig` pro jeho aktivaci

#endif

neplatné nastavení ( )

{

 pinMode ( LED_PIN, VÝSTUP ) ; /* led pin soubor tak jako výstup */
Serial.begin ( 115200 ) ; /* přenosová rychlost pro sériová komunikace */
SerialBT.begin ( ) ; /* Spustí se komunikace Bluetooth */
Serial.println ( 'Bluetooth je připraven ke spárování...' ) ; /* při zapnutí Bluetooth */
}
prázdná smyčka ( )
{
-li ( SerialBT.k dispozici ( ) ) /* šek pro Dostupnost dat Bluetooth */
{
BT_INP = SerialBT.read ( ) ; /* číst Data Bluetooth ze zařízení */
Serial.write ( BT_INP ) ; /* vytisknout číst data */
}
-li ( BT_INP == '1' ) /* -li stav pro vedl stát */
{
digitalWrite ( LED_PIN, VYSOKÝ ) ; /* zapnout led -li 1 je přijat vstup */
}
-li ( BT_INP == '0' )
{
digitalWrite ( LED_PIN, NÍZKÁ ) ; /* vypnout led -li 0 je přijat vstup */
}

}

Zde ve výše uvedeném kódu jsme začali zahrnutím sériové knihovny Bluetooth pro ESP32. Dále jsme zahrnuli funkce sériové knihovny Bluetooth, které umožní ESP32 Bluetooth.

Další LED pin 15 je inicializován a pomocí pinMode() funkce LED pin je nastaven jako výstupní.

Ve smyčkové části kódu program zkontroluje dostupnost sériových dat Bluetooth. Pokud jsou vstupní data 1, LED se rozsvítí a pokud jsou přijatá data 0, LED zhasne.

Jakmile je kód nahrán. Bluetooth desky ESP32 se zapne a na sériovém monitoru se objeví následující zpráva.

Instalace sériového Bluetooth terminálu

Potřebujeme zařízení Bluetooth, které může posílat pokyny do ESP32, takže k jeho propojení s ESP32 Bluetooth budeme používat smartphone se systémem Android. Nejprve musíme nainstalovat sériový terminál do telefonu Android. Chcete-li propojit telefon Android s ESP32, postupujte podle následujících kroků:

Krok 1 : Otevřete na svém smartphonu Obchod Google Play a vyhledejte Sériový Bluetooth terminál . Nainstalujte níže zobrazenou aplikaci:

Krok 2 : Po instalaci otevřete nastavení Bluetooth mobilního telefonu. Vyhledejte ESP32 Bluetooth a kliknutím jej začněte spárovat se svým smartphonem kliknutím na Pár :

Krok 3 : Po klepnutí na a Pár , mobilní telefon se začne spárovat s ESP32 Bluetooth:

Krok 4 : Nyní otevřete aplikaci Serial Bluetooth Terminal a v postranní nabídce přejděte na Zařízení:

Krok 5 : Jakmile se otevře možnost zařízení, požádá o některá oprávnění nebo stiskne OBNOVIT tlačítko v pravém horním rohu:

Krok 6 : Zobrazí se následující vyskakovací okno Nastavení a povolte oprávnění, o které žádá:

Krok 7 : Nyní je deska ESP32 připravena přijímat pokyny přes Bluetooth. V možnosti Bluetooth Classic vyberte desku ESP32:

Krok 8 : Jakmile je vybráno ESP32, začne se připojovat a pokud bude úspěšné, a Připojeno objeví se zpráva.

Krok 9 : Nyní můžeme poslat jakoukoli instrukci tak, že ji napíšeme sem. Zadejte 1 a klikněte na tlačítko Odeslat, LED na ESP32 deska se zapne. Podobně, zadáním 0 LED zhasne.

Podobně můžeme vidět výstup na sériovém monitoru Arduino IDE, co přijímá:

Výstup:

LED se rozsvítí po odeslání 1:

LED zhasne po odeslání 0:

Poznámka : Můžeme také nakonfigurovat tlačítka pro konkrétní pokyny, jak je znázorněno na obrázku níže. Chcete-li to provést, klepněte na tlačítka a nastavte požadovanou hodnotu. Zde jsme nastavili dvě tlačítka jedno pro HIGH a druhé pro LOW stav. Tyto zkratky můžete také nakonfigurovat v hexadecimálních hodnotách.

Závěr

Desky ESP32 mají na desce WiFi a duální podporu Bluetooth s klasickým Bluetooth a Low Energy Bluetooth. Classic se používá pro vysoký přenos dat, zatímco BLE (Bluetooth Low Energy) se používá na krátké vzdálenosti s menšími nároky na energii. Tento článek se zabývá klasickým přenosem dat Bluetooth a poskytuje představu o tom, jak probíhá komunikace Bluetooth pomocí desky ESP32.