Gamit ang ESP32 Bluetooth Classic na may Arduino IDE

Gamit Ang Esp32 Bluetooth Classic Na May Arduino Ide



Ang ESP32 ay isang microcontroller-based board na may suporta sa Wi-Fi at Bluetooth. Ito ay isang IoT based board na maaaring isama sa maraming sensor para magsagawa ng mga tagubilin. Ang ESP32 board ay may malawak na aplikasyon kung saan kinakailangan ang wireless na komunikasyon. Talakayin natin kung paano natin mako-configure ang ESP32 Bluetooth at magpapadala ng impormasyon gamit ito.

ESP32 Bluetooth Classic na may Arduino IDE

Ang ESP32 board ay may dalawahang suporta sa Bluetooth, isa ang Bluetooth Classic at ang pangalawa ay BLE (Bluetooth Low Energy). Ngayon ay tatalakayin lang natin ang Bluetooth Classic. Ang pagkakaiba lang na umiiral sa pagitan ng dalawa ay ang Bluetooth Classic ay kayang humawak ng maraming paglilipat ng data ngunit kumokonsumo ng baterya sa mas mataas na rate, gayunpaman ang Bluetooth Low Energy ay power conserving variant na ginagamit para sa short distance na komunikasyon. Nananatili ang BLE sa sleep mode hanggang sa masimulan ito para sa paglilipat ng data.







ESP32 Classic na Bluetooth na Serial na Komunikasyon

Ang pagtatrabaho ng ESP32 Bluetooth ay kahit papaano ay katulad ng Arduino, tulad ng ginawa namin sa Arduino bilang isang panlabas na Bluetooth sensor ay ginagamit tulad ng HC-05. Parehong Arduino at HC-05 sensor ang nakikipag-usap sa serial communication. Pareho ang kaso dito sa ESP32 ngunit ang pagkakaiba ay ang ESP32 ay may kasamang built-in na Bluetooth modules na unang tumatanggap ng data at pagkatapos ay ipasa ito sa Xtensa processor.



Kaya, upang maitatag ang komunikasyong ito ' BluetoothSerial 'Ang library ay ginagamit na katulad ng Arduino serial library, ngunit ito ay nasa loob lamang ng ESP32. Ang sumusunod ay ilang function na inaalok ng Bluetooth serial library:



  • simulan()
  • magagamit()
  • sumulat()
  • basahin()

Bluetooth Controlled LED gamit ang ESP32

Sumulat tayo ng isang simpleng code na makokontrol ang isang LED gamit ang mobile Bluetooth sa pamamagitan ng Bluetooth wireless na komunikasyon. Ang sumusunod ay ang hardware na kinakailangan upang makontrol ang LED gamit ang Bluetooth serial communication:





  • ESP32
  • LED
  • Breadboard
  • Android device
  • Serial Bluetooth Terminal Application

Circuit

Ikonekta ang LED sa digital pin 15 ng ESP32 na may negatibong terminal na konektado sa GND ng ESP32 board. Para sa isang ligtas na kasalukuyang limitasyon, maaari din naming ikonekta ang risistor (220 ohms) sa pagitan ng mga ito:

Code

Buksan ang Arduino IDE at piliin ang ESP32 board sa Board Manager para makita kung paano i-install ang ESP32 board sa Arduino IDE click dito . Pagkatapos piliin ang board isulat ang code sa ibaba sa window ng editor:



#include   /*Bluetooth serial communication library*/

#define LED_PIN 15  /*led pin initialized*/

BluetoothSerial SerialBT;

byte BT_INP;

#if !defined(CONFIG_BT_ENABLED) || !defined(CONFIG_BLUEDROID_ENABLED)/*Tingnan kung may bluetooth sa SDK*/

#error Bluetooth off--Patakbuhin ang `make menuconfig` para paganahin ito

#tapusin kung

walang bisang setup ( )

{

 pinMode ( LED_PIN, OUTPUT ) ; /* humantong pin itakda bilang output */
Serial.magsimula ( 115200 ) ; /* baud rate para sa serial na komunikasyon */
SerialBT.magsimula ( ) ; /* Nagsisimula ang komunikasyon sa Bluetooth */
Serial.println ( 'Handa nang Ipares ang Bluetooth...' ) ; /* kapag naka-on ang Bluetooth */
}
walang laman na loop ( )
{
kung ( SerialBT.available ( ) ) /* suriin para sa availability ng data ng Bluetooth */
{
BT_INP = SerialBT.read ( ) ; /* basahin Bluetooth data mula sa device */
Serial.sumulat ( BT_INP ) ; /* i-print ang basahin datos */
}
kung ( BT_INP == '1' ) /* kung kundisyon para sa humantong estado */
{
digitalWrite ( LED_PIN, HIGH ) ; /* i-on ang led kung 1 natanggap ang input */
}
kung ( BT_INP == '0' )
{
digitalWrite ( LED_PIN, LOW ) ; /* patayin ang led kung 0 natanggap ang input */
}

}

Dito sa code sa itaas, nagsimula kami sa pamamagitan ng pagsasama ng Bluetooth serial library para sa ESP32. Susunod na isinama namin ang Bluetooth serial library function na magpapagana sa ESP32 Bluetooth.

Ang susunod na LED pin 15 ay sinisimulan at ginagamit ang pinMode() Ang function na LED pin ay nakatakda bilang output.

Sa loop na bahagi ng code ay titingnan ng program ang pagkakaroon ng serial Bluetooth data. Kung ang input data ay 1 LED ay i-ON at kung ang natanggap na data ay 0 LED ay i-off.

Kapag na-upload na ang code. Ang Bluetooth ng ESP32 board ay bubuksan at ang sumusunod na mensahe ay lalabas sa serial monitor.

Pag-install ng Serial Bluetooth Terminal

Kailangan namin ng Bluetooth device na maaaring magpadala ng mga tagubilin sa ESP32 kaya gagamit kami ng Android smartphone para i-interface ito sa ESP32 Bluetooth. Una, kailangan naming mag-install ng serial terminal sa isang Android phone. Sundin ang mga hakbang na ibinigay sa ibaba upang i-interface ang Android phone sa ESP32:

Hakbang 1 : Buksan ang Google Play Store sa iyong smartphone at maghanap Serial Bluetooth Terminal . I-install ang ipinapakitang application sa ibaba:

Hakbang 2 : Pagkatapos i-install ang bukas na mga setting ng Bluetooth ng mobile phone. Maghanap para sa ESP32 Bluetooth at i-click upang simulan ang pagpapares nito sa iyong smartphone sa pamamagitan ng pag-click sa Magpares :

Hakbang 3 : Pagkatapos mag-tap sa a Magpares , magsisimulang ipares ang mobile phone sa ESP32 Bluetooth:

Hakbang 4 : Ngayon buksan ang Serial Bluetooth Terminal Application at pumunta sa Mga Device mula sa side menu:

Hakbang 5 : Sa sandaling mabuksan ang opsyon ng device hihiling ito ng ilang pahintulot o pindutin ang REFRESH button sa kanang sulok sa itaas:

Hakbang 6 : Ang kasunod na popup ay mag-click sa Mga setting at payagan ang pahintulot na hinihingi nito:

Hakbang 7 : Ngayon, handa na ang ESP32 board na kumuha ng mga tagubilin sa Bluetooth. Sa ilalim ng Bluetooth Classic na opsyon piliin ang ESP32 board:

Hakbang 8 : Kapag napili ang ESP32, magsisimula itong kumonekta at kung matagumpay, a Nakakonekta lalabas ang mensahe.

Hakbang 9 : Ngayon ay maaari na kaming magpadala ng anumang pagtuturo sa pamamagitan ng pag-type dito. I-type ang 1 at i-click ang send button, LED sa ESP32 i-On ang board. Katulad nito, sa pamamagitan ng pag-type ng 0 LED ay OFF.

Katulad nito, makikita natin ang output sa serial monitor ng Arduino IDE kung ano ang natatanggap nito:

Output:

Naka-ON ang LED pagkatapos ipadala ang 1:

Ang LED ay naka-OFF pagkatapos magpadala ng 0:

Tandaan : Maaari rin naming i-configure ang mga button para sa mga partikular na tagubilin tulad ng ipinapakita sa larawan sa ibaba. Upang gawin ito, i-click ang mga pindutan at itakda ang halaga na gusto mo. Dito nagtakda kami ng dalawang mga pindutan isa para sa HIGH at isa pa para sa LOW na estado. Maaari mo ring i-configure ang mga shortcut na ito sa mga halaga ng Hexadecimal.

Konklusyon

Ang mga ESP32 board ay may naka-board na WiFi at dual Bluetooth na suporta na may Classic Bluetooth at Low Energy Bluetooth. Ginagamit ang classic para sa mataas na paglipat ng data habang ang BLE (Bluetooth Low Energy) ay ginagamit para sa mga maiikling distansya na may mas kaunting power na kinakailangan. Sinasaklaw ng artikulong ito ang paglilipat ng data ng Classic na Bluetooth at nagbibigay ng ideya kung paano ginagawa ang komunikasyon sa Bluetooth gamit ang ESP32 board.