ESP32 అనేది మైక్రోకంట్రోలర్-ఆధారిత బోర్డ్, ఇది Wi-Fi మరియు బ్లూటూత్ మద్దతుతో వస్తుంది. ఇది IoT ఆధారిత బోర్డు, ఇది సూచనలను అమలు చేయడానికి బహుళ సెన్సార్లతో అనుసంధానించబడుతుంది. ESP32 బోర్డు వైర్లెస్ కమ్యూనికేషన్ అవసరమయ్యే విస్తృత అప్లికేషన్ను కలిగి ఉంది. మేము ESP32 బ్లూటూత్ను ఎలా కాన్ఫిగర్ చేయాలో మరియు దానిని ఉపయోగించి సమాచారాన్ని ఎలా ప్రసారం చేయాలో చర్చిద్దాం.
Arduino IDEతో ESP32 బ్లూటూత్ క్లాసిక్
ESP32 బోర్డ్ డ్యూయల్ బ్లూటూత్ సపోర్ట్తో వస్తుంది ఒకటి బ్లూటూత్ క్లాసిక్ మరియు రెండవది BLE (బ్లూటూత్ లో ఎనర్జీ). ఈ రోజు మనం బ్లూటూత్ క్లాసిక్ గురించి మాత్రమే చర్చిస్తాము. రెండింటి మధ్య ఉన్న తేడా ఏమిటంటే, బ్లూటూత్ క్లాసిక్ చాలా డేటా బదిలీని నిర్వహించగలదు, అయితే బ్యాటరీని ఎక్కువ రేటుతో వినియోగిస్తుంది, అయితే బ్లూటూత్ లో ఎనర్జీ అనేది పవర్ కన్జర్వింగ్ వేరియంట్, ఇది తక్కువ దూర కమ్యూనికేషన్ కోసం ఉపయోగించబడుతుంది. డేటా బదిలీ కోసం ప్రారంభించబడే వరకు BLE నిద్ర మోడ్లో ఉంటుంది.
ESP32 క్లాసిక్ బ్లూటూత్ సీరియల్ కమ్యూనికేషన్
ESP32 బ్లూటూత్ పని ఏదో ఒకవిధంగా Arduino మాదిరిగానే ఉంటుంది, మేము Arduinoలో చేసినట్లుగా బాహ్య బ్లూటూత్ సెన్సార్ HC-05 వలె ఉపయోగించబడుతుంది. Arduino మరియు HC-05 సెన్సార్లు రెండూ సీరియల్ కమ్యూనికేషన్ ద్వారా కమ్యూనికేట్ చేస్తాయి. ఇక్కడ ESP32 విషయంలో కూడా అదే జరుగుతుంది, అయితే తేడా ఏమిటంటే ESP32 అంతర్నిర్మిత బ్లూటూత్ మాడ్యూల్స్తో వస్తుంది, ఇది మొదట డేటాను స్వీకరిస్తుంది మరియు దానిని Xtensa ప్రాసెసర్కు ఫార్వార్డ్ చేస్తుంది.
కాబట్టి, ఈ కమ్యూనికేషన్ని స్థాపించడానికి ' బ్లూటూత్ సీరియల్ ” లైబ్రరీ ఉపయోగించబడుతుంది, ఇది Arduino సీరియల్ లైబ్రరీని పోలి ఉంటుంది, కానీ ఇది ESP32 లోపల మాత్రమే ఉంటుంది. బ్లూటూత్ సీరియల్ లైబ్రరీ అందించే కొన్ని విధులు క్రిందివి:
- ప్రారంభం()
- అందుబాటులో ()
- వ్రాయడానికి()
- చదవండి()
ESP32 ఉపయోగించి బ్లూటూత్ కంట్రోల్డ్ LED
బ్లూటూత్ వైర్లెస్ కమ్యూనికేషన్ ద్వారా మొబైల్ బ్లూటూత్ని ఉపయోగించి LEDని నియంత్రించగల సరళమైన కోడ్ని వ్రాద్దాం. బ్లూటూత్ సీరియల్ కమ్యూనికేషన్ని ఉపయోగించి LEDని నియంత్రించడానికి అవసరమైన హార్డ్వేర్ క్రింది విధంగా ఉంది:
- ESP32
- LED
- బ్రెడ్బోర్డ్
- Android పరికరం
- సీరియల్ బ్లూటూత్ టెర్మినల్ అప్లికేషన్
సర్క్యూట్
ESP32 బోర్డ్ యొక్క GND వద్ద కనెక్ట్ చేయబడిన ప్రతికూల టెర్మినల్తో ESP32 యొక్క డిజిటల్ పిన్ 15 వద్ద LEDని కనెక్ట్ చేయండి. సురక్షితమైన ప్రస్తుత పరిమితి కోసం, మేము వాటి మధ్య నిరోధకం (220 ఓంలు)ని కూడా కనెక్ట్ చేయవచ్చు:
కోడ్
Arduino IDE క్లిక్లో ESP32 బోర్డ్ను ఎలా ఇన్స్టాల్ చేయాలో చూడటానికి Arduino IDE తెరిచి, బోర్డు మేనేజర్లో ESP32 బోర్డ్ను ఎంచుకోండి. ఇక్కడ . బోర్డుని ఎంచుకున్న తర్వాత ఎడిటర్ విండోలో దిగువ కోడ్ను వ్రాయండి:
#
#LED_PIN 15ని నిర్వచించండి /*లెడ్ పిన్ ప్రారంభించబడింది*/
BluetoothSerial SerialBT;
బైట్ BT_INP;
#నిర్వచించినట్లయితే (కాన్ఫిగ్_బిటి_ఎనేబుల్) || !defined(CONFIG_BLUEDROID_ENABLED)/*SDKలో బ్లూటూత్ కోసం తనిఖీ చేయండి*/
#error బ్లూటూత్ ఆఫ్--దీన్ని ఎనేబుల్ చేయడానికి `మేక్ మెనూకాన్ఫిగ్`ని రన్ చేయండి
#ఎండిఫ్
శూన్యమైన సెటప్ ( )
{
పిన్మోడ్ ( LED_PIN, అవుట్పుట్ ) ; /* దారితీసిన పిన్ సెట్ వంటి అవుట్పుట్ */
సీరియల్.ప్రారంభం ( 115200 ) ; /* బాడ్ రేటు కోసం సీరియల్ కమ్యూనికేషన్ */
SerialBT.ప్రారంభం ( ) ; /* బ్లూటూత్ కమ్యూనికేషన్ ప్రారంభమవుతుంది */
Serial.println ( 'బ్లూటూత్ జత చేయడానికి సిద్ధంగా ఉంది...' ) ; /* బ్లూటూత్ ఆన్ చేసినప్పుడు */
}
శూన్య లూప్ ( )
{
ఉంటే ( SerialBT.అందుబాటులో ఉంది ( ) ) /* తనిఖీ కోసం బ్లూటూత్ డేటా లభ్యత */
{
BT_INP = SerialBT.read ( ) ; /* చదవండి పరికరం నుండి బ్లూటూత్ డేటా */
సీరియల్.వ్రాయండి ( BT_INP ) ; /* ముద్రించండి చదవండి సమాచారం */
}
ఉంటే ( BT_INP == '1' ) /* ఉంటే పరిస్థితి కోసం నాయకత్వం వహించిన రాష్ట్రం */
{
డిజిటల్ రైట్ ( LED_PIN, HIGH ) ; /* లీడ్ ఆన్ చేయండి ఉంటే 1 ఇన్పుట్ స్వీకరించబడింది */
}
ఉంటే ( BT_INP == '0' )
{
డిజిటల్ రైట్ ( LED_PIN, తక్కువ ) ; /* దారితీసింది ఆఫ్ ఉంటే 0 ఇన్పుట్ స్వీకరించబడింది */
}
}
ఇక్కడ పై కోడ్లో, మేము ESP32 కోసం బ్లూటూత్ సీరియల్ లైబ్రరీని చేర్చడం ద్వారా ప్రారంభించాము. తదుపరి మేము ESP32 బ్లూటూత్ను ప్రారంభించే బ్లూటూత్ సీరియల్ లైబ్రరీ ఫంక్షన్లను చేర్చాము.
తదుపరి LED పిన్ 15 ప్రారంభించబడింది మరియు ఉపయోగించబడుతుంది పిన్మోడ్() ఫంక్షన్ LED పిన్ అవుట్పుట్గా సెట్ చేయబడింది.
కోడ్ యొక్క లూప్ భాగంలో ప్రోగ్రామ్ సీరియల్ బ్లూటూత్ డేటా లభ్యత కోసం తనిఖీ చేస్తుంది. ఇన్పుట్ డేటా 1 అయితే LED ఆన్ అవుతుంది మరియు అందుకున్న డేటా 0 అయితే LED ఆఫ్ అవుతుంది.
కోడ్ అప్లోడ్ అయిన తర్వాత. ESP32 బోర్డ్ యొక్క బ్లూటూత్ ఆన్ చేయబడుతుంది మరియు కింది సందేశం సీరియల్ మానిటర్లో కనిపిస్తుంది.
సీరియల్ బ్లూటూత్ టెర్మినల్ని ఇన్స్టాల్ చేస్తోంది
మాకు ESP32కి సూచనలను పంపగల బ్లూటూత్ పరికరం అవసరం కాబట్టి మేము దానిని ESP32 బ్లూటూత్తో ఇంటర్ఫేస్ చేయడానికి Android స్మార్ట్ఫోన్ని ఉపయోగిస్తాము. ముందుగా, మనం ఆండ్రాయిడ్ ఫోన్లో సీరియల్ టెర్మినల్ను ఇన్స్టాల్ చేయాలి. ఆండ్రాయిడ్ ఫోన్ని ESP32తో ఇంటర్ఫేస్ చేయడానికి క్రింది దశలను అనుసరించండి:
దశ 1 : మీ స్మార్ట్ఫోన్లో గూగుల్ ప్లే స్టోర్ తెరిచి సెర్చ్ చేయండి సీరియల్ బ్లూటూత్ టెర్మినల్ . దిగువ చూపిన అప్లికేషన్ను ఇన్స్టాల్ చేయండి:
దశ 2 : ఓపెన్ మొబైల్ ఫోన్ బ్లూటూత్ సెట్టింగ్లను ఇన్స్టాల్ చేసిన తర్వాత. ESP32 బ్లూటూత్ కోసం శోధించండి మరియు క్లిక్ చేయడం ద్వారా మీ స్మార్ట్ఫోన్తో జత చేయడం ప్రారంభించడానికి క్లిక్ చేయండి జత :
దశ 3 : ఒక పై నొక్కిన తర్వాత జత , మొబైల్ ఫోన్ ESP32 బ్లూటూత్తో జత చేయడం ప్రారంభమవుతుంది:
దశ 4 : ఇప్పుడు సీరియల్ బ్లూటూత్ టెర్మినల్ అప్లికేషన్ను తెరిచి, సైడ్ మెను నుండి పరికరాలకు వెళ్లండి:
దశ 5 : పరికరం ఎంపికను తెరిచిన తర్వాత అది కొన్ని అనుమతుల కోసం అడుగుతుంది లేదా నొక్కండి రిఫ్రెష్ చేయండి ఎగువ కుడి మూలలో బటన్:
దశ 6 : క్రింది పాప్అప్ క్లిక్ వస్తుంది సెట్టింగ్లు మరియు అది అడిగే అనుమతిని అనుమతించండి:
దశ 7 : ఇప్పుడు ESP32 బోర్డు బ్లూటూత్ ద్వారా సూచనలను తీసుకోవడానికి సిద్ధంగా ఉంది. బ్లూటూత్ క్లాసిక్ ఎంపిక క్రింద ESP32 బోర్డ్ని ఎంచుకోండి:
దశ 8 : ESP32 ఎంచుకున్న తర్వాత అది కనెక్ట్ అవ్వడం ప్రారంభిస్తుంది మరియు విజయవంతమైతే, a కనెక్ట్ చేయబడింది సందేశం కనిపిస్తుంది.
దశ 9 : ఇప్పుడు మనం ఏదైనా సూచనను ఇక్కడ టైప్ చేయడం ద్వారా పంపవచ్చు. 1ని టైప్ చేసి, పంపు బటన్ను క్లిక్ చేయండి, ESP32పై LED బోర్డు ఆన్ అవుతుంది. అదేవిధంగా, 0 LED టైప్ చేయడం ద్వారా ఆఫ్ అవుతుంది.
అదేవిధంగా, Arduino IDE యొక్క సీరియల్ మానిటర్లో అవుట్పుట్ ఏమి పొందుతుందో మనం చూడవచ్చు:
అవుట్పుట్:
1 పంపిన తర్వాత LED ఆన్ అవుతుంది:
0 పంపిన తర్వాత LED ఆఫ్ అవుతుంది:
గమనిక : దిగువ చిత్రంలో చూపిన విధంగా మేము నిర్దిష్ట సూచనల కోసం బటన్లను కూడా కాన్ఫిగర్ చేయవచ్చు. దీన్ని చేయడానికి, బటన్లను క్లిక్ చేసి, మీకు కావలసిన విలువను సెట్ చేయండి. ఇక్కడ మేము రెండు బటన్లను ఒకటి హైకి మరియు మరొకటి తక్కువ స్థితికి సెట్ చేసాము. మీరు ఈ సత్వరమార్గాలను హెక్సాడెసిమల్ విలువలలో కూడా కాన్ఫిగర్ చేయవచ్చు.
ముగింపు
ESP32 బోర్డులు ఆన్బోర్డ్ వైఫైని కలిగి ఉంటాయి మరియు క్లాసిక్ బ్లూటూత్ మరియు లో ఎనర్జీ బ్లూటూత్తో డ్యూయల్ బ్లూటూత్ మద్దతును కలిగి ఉంటాయి. అధిక డేటా బదిలీకి క్లాసిక్ ఉపయోగించబడుతుంది, అయితే తక్కువ విద్యుత్ అవసరాలతో తక్కువ దూరాలకు BLE (బ్లూటూత్ లో ఎనర్జీ) ఉపయోగించబడుతుంది. ఈ కథనం క్లాసిక్ బ్లూటూత్ డేటా బదిలీని కవర్ చేస్తుంది మరియు ESP32 బోర్డ్ని ఉపయోగించి బ్లూటూత్ కమ్యూనికేషన్ ఎలా జరుగుతుంది అనే ఆలోచనను అందిస్తుంది.