ESP32 Bluetooth Classic naudojimas su Arduino IDE

Esp32 Bluetooth Classic Naudojimas Su Arduino Ide



ESP32 yra mikrovaldiklio plokštė, kuri palaikoma Wi-Fi ir Bluetooth. Tai IoT pagrįsta plokštė, kurią galima integruoti su keliais jutikliais, kad būtų vykdomos instrukcijos. ESP32 plokštė turi platų pritaikymą ten, kur reikalingas belaidis ryšys. Aptarkime, kaip galime sukonfigūruoti ESP32 Bluetooth ir perduoti informaciją naudodami jį.

ESP32 Bluetooth Classic su Arduino IDE

ESP32 plokštė turi dvigubą „Bluetooth“ palaikymą, vienas yra „Bluetooth Classic“, o antrasis yra BLE („Bluetooth Low Energy“). Šiandien aptarsime tik „Bluetooth Classic“. Vienintelis skirtumas, kuris egzistuoja tarp abiejų, yra tas, kad „Bluetooth Classic“ gali apdoroti daug duomenų, tačiau sunaudoja akumuliatorių greičiau, tačiau „Bluetooth Low Energy“ yra energiją taupantis variantas, naudojamas trumpo nuotolio ryšiui. BLE lieka miego režimu, kol jis inicijuojamas duomenų perdavimui.







ESP32 klasikinis Bluetooth nuoseklusis ryšys

ESP32 Bluetooth veikimas kažkaip panašus į Arduino, kaip ir Arduino, nes naudojamas išorinis Bluetooth jutiklis kaip HC-05. Tiek Arduino, tiek HC-05 jutikliai palaiko ryšį per nuoseklųjį ryšį. Tas pats pasakytina ir apie ESP32, tačiau skirtumas yra tas, kad ESP32 yra su integruotais „Bluetooth“ moduliais, kurie pirmiausia priima duomenis, o tada persiunčia juos į Xtensa procesorių.



Taigi, norint užmegzti šį ryšį „Bluetooth“ serija Naudojama biblioteka, panaši į Arduino serijinę biblioteką, tačiau ji yra tik ESP32. Toliau pateikiamos kai kurios „Bluetooth“ serijinės bibliotekos siūlomos funkcijos:



  • pradėti ()
  • prieinama ()
  • rašyti ()
  • skaityti ()

„Bluetooth“ valdomas LED, naudojant ESP32

Parašykime paprastą kodą, kuris gali valdyti LED naudojant mobilųjį „Bluetooth“ per „Bluetooth“ belaidį ryšį. Toliau pateikiama aparatinė įranga, reikalinga norint valdyti LED naudojant „Bluetooth“ nuoseklųjį ryšį:





  • ESP32
  • LED
  • Bandomoji Lenta
  • Android įrenginys
  • Serijinio Bluetooth terminalo programa

Grandinė

Prijunkite LED prie skaitmeninio ESP32 kaiščio 15 su neigiamu gnybtu, prijungtu prie ESP32 plokštės GND. Kad srovė būtų saugi, tarp jų taip pat galime prijungti rezistorių (220 omų):

Kodas

Atidarykite „Arduino IDE“ ir „Board Manager“ pasirinkite ESP32 plokštę, kad pamatytumėte, kaip įdiegti ESP32 plokštę „Arduino IDE“, spustelėkite čia . Pasirinkę lentą, redaktoriaus lange parašykite žemiau esantį kodą:



#include   /*Bluetooth serijinio ryšio biblioteka*/

#define LED_PIN 15  /*LED kontaktas inicijuotas*/

BluetoothSerial SerialBT;

baitas BT_INP;

#if !defined(CONFIG_BT_ENABLED) || !defined(CONFIG_BLUEDROID_ENABLED)/*Patikrinti, ar SDK yra „Bluetooth“*/

#error „Bluetooth“ išjungtas – paleiskite „make menuconfig“, kad jį įjungtumėte

#endif

tuščias nustatymas ( )

{

 pinMode ( LED_PIN, IŠVESTIS ) ; /* led kaištis rinkinys kaip išvestis */
Serialas.begin ( 115 200 ) ; /* sparta dėl serijinis ryšys */
SerialBT.begin ( ) ; /* Prasideda Bluetooth ryšys */
Serial.println ( „Bluetooth yra pasirengęs susieti...“ ) ; /* kai įjungiamas „Bluetooth“. */
}
tuščia kilpa ( )
{
jeigu ( SerialBT.prieinamas ( ) ) /* patikrinti dėl „Bluetooth“ duomenų prieinamumas */
{
BT_INP = SerialBT.read ( ) ; /* skaityti Bluetooth duomenys iš įrenginio */
Serialas.rašyti ( BT_INP ) ; /* atsispausdinti skaityti duomenis */
}
jeigu ( BT_INP == '1' ) /* jeigu sąlyga dėl vadovaujama valstybė */
{
skaitmeninis rašymas ( LED_PIN, AUKŠTAS ) ; /* įjungti LED jeigu 1 įvestis gaunama */
}
jeigu ( BT_INP == '0' )
{
skaitmeninis rašymas ( LED_PIN, LOW ) ; /* išjungti LED jeigu 0 įvestis gaunama */
}

}

Aukščiau pateiktame kode mes pradėjome įtraukdami ESP32 „Bluetooth“ serijos biblioteką. Toliau įtraukėme „Bluetooth“ serijinės bibliotekos funkcijas, kurios įgalins ESP32 „Bluetooth“.

Kitas LED kaištis 15 inicijuojamas ir naudojamas pinMode () funkcija LED kaištis nustatytas kaip išėjimas.

Kodo ciklo dalyje programa patikrins, ar nėra nuoseklaus „Bluetooth“ duomenų. Jei įvesties duomenys yra 1, šviesos diodas įsijungs, o jei gauti duomenys yra 0, šviesos diodas išsijungs.

Kai kodas bus įkeltas. Įsijungs ESP32 plokštės „Bluetooth“ ir serijiniame monitoriuje pasirodys šis pranešimas.

Serijinio Bluetooth terminalo įdiegimas

Mums reikia „Bluetooth“ įrenginio, kuris galėtų siųsti instrukcijas į ESP32, todėl naudosime „Android“ išmanųjį telefoną, kad susietume jį su ESP32 „Bluetooth“. Pirmiausia „Android“ telefone turime įdiegti nuoseklųjį terminalą. Norėdami susieti Android telefoną su ESP32, atlikite toliau nurodytus veiksmus.

1 žingsnis : Išmaniajame telefone atidarykite „Google Play“ parduotuvę ir ieškokite Serijinis Bluetooth terminalas . Įdiekite toliau pateiktą programą:

2 žingsnis : Įdiegę atidarykite mobiliojo telefono Bluetooth nustatymus. Ieškokite ESP32 Bluetooth ir spustelėkite, kad pradėtumėte susieti jį su savo išmaniuoju telefonu, spustelėdami Pora :

3 veiksmas : palietę a Pora , mobilusis telefonas pradės susieti su ESP32 Bluetooth:

4 veiksmas : Dabar atidarykite „Serial Bluetooth“ terminalo programą ir šoniniame meniu eikite į Įrenginiai:

5 veiksmas : kai bus atidaryta įrenginio parinktis, ji paprašys tam tikrų leidimų arba paspauskite ATNAUJINTI mygtukas viršutiniame dešiniajame kampe:

6 veiksmas : Spustelėkite šį iššokantįjį langą Nustatymai ir duoti prašomą leidimą:

7 veiksmas : Dabar ESP32 plokštė yra paruošta priimti instrukcijas per „Bluetooth“. Dalyje „Bluetooth Classic“ pasirinkite ESP32 plokštę:

8 veiksmas : Pasirinkus ESP32, jis pradės prisijungti ir, jei pavyks, a Prisijungta pasirodys pranešimas.

9 veiksmas : Dabar galime išsiųsti bet kokią instrukciją, įvesdami ją čia. Įveskite 1 ir spustelėkite siuntimo mygtuką, LED ant ESP32 plokštė įsijungs. Panašiai, įvedus 0 LED išsijungs.

Panašiai matome Arduino IDE serijinio monitoriaus išvestį, kurią jis gauna:

Išvestis:

Šviesos diodas įsižiebia išsiuntus 1:

Šviesos diodas išsijungia po 0 siuntimo:

Pastaba : Taip pat galime konfigūruoti mygtukus konkrečioms instrukcijoms, kaip parodyta paveikslėlyje žemiau. Norėdami tai padaryti, spustelėkite mygtukus ir nustatykite norimą reikšmę. Čia mes nustatėme du mygtukus, skirtus HIGH, o kitą - LOW. Šiuos sparčiuosius klavišus taip pat galite konfigūruoti šešioliktainėmis reikšmėmis.

Išvada

ESP32 plokštės turi „WiFi“ ir dvigubą „Bluetooth“ palaikymą su „Classic Bluetooth“ ir „Low Energy Bluetooth“. „Classic“ naudojama dideliam duomenų perdavimui, o BLE („Bluetooth Low Energy“) – trumpiems atstumams, kai reikia mažiau energijos. Šiame straipsnyje aptariamas klasikinis „Bluetooth“ duomenų perdavimas ir pateikiama idėja, kaip „Bluetooth“ ryšys vyksta naudojant ESP32 plokštę.