0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

ESP32-S3在ardinuo上如何與手機(jī)進(jìn)行藍(lán)牙互傳?現(xiàn)在來(lái)教你!

瞿小洲 ? 來(lái)源:jf_33322995 ? 作者:jf_33322995 ? 2024-07-05 10:05 ? 次閱讀

先簡(jiǎn)單介紹一下:

ESP32-S3 是一款低功耗的 MCU 系統(tǒng)級(jí)芯片 (SoC),支持2.4GHz Wi-Fi和低功耗藍(lán)牙(Bluetooth LE)無(wú)線通信。芯片集成了高性能的Xtensa32位LX7雙核處理器、超低功耗協(xié)處理器、Wi-Fi 基帶、藍(lán)牙基帶、RF模塊以及外設(shè)。

來(lái)看esp32 S3的配置

wKgaomaHT8aABd6_AAES0VeI9Fc088.png

支持 IEEE 802.11b/g/n 協(xié)議
在 2.4 GHz 頻帶支持 20 MHz 和 40 MHz 頻寬
支持 1T1R 模式,數(shù)據(jù)速率高達(dá) 150 Mbps
低功耗藍(lán)牙 (Bluetooth LE):Bluetooth 5、Bluetooth mesh
高功率模式 (20 dBm)
速率支持 125 Kbps、500 Kbps、1 Mbps、2 Mbps
廣播擴(kuò)展 (Advertising Extensions)
多廣播 (Multiple Advertisement Sets)
信道選擇 (Channel Selection Algorithm #2)
Wi-Fi 與藍(lán)牙共存,共用同一個(gè)天線
Xtensa 32位 LX7雙核處理器,主頻高達(dá) 240MHz
45 × GPIO 口

wKgZomaHUx2AN1NpAALPIY7ydqk129.png

管腳介紹

wKgaomaHU_KAY57JAAML9lX8H2Q588.png

資料為esp32s3的datasheet 可以添加一下我的微信(xinsousou)來(lái)向我免費(fèi)索取哦~

Arduino IDE設(shè)置

打開(kāi)Arduino IDE。

在“工具”菜單中選擇“開(kāi)發(fā)板” -> “ESP32 Dev Module”。(注意:可能需要安裝ESP32的板管理器URL,具體步驟參考ESP32的官方文檔)

選擇正確的串行端口和上傳速度。

示例代碼

cpp
#include     
BluetoothSerial SerialBT;   
void setup() {    
Serial.begin(115200);    // 初始化藍(lán)牙并設(shè)置設(shè)備名稱和PIN碼(可選)    
SerialBT.begin("ESP32-S3-Bluetooth", true);    
Serial.println("Bluetooth device started");  
}    
void loop()
 {    // 從串口接收數(shù)據(jù)并發(fā)送到藍(lán)牙    
if (Serial.available()) {      
	char received = Serial.read();      
	SerialBT.write(received);   
}      // 從藍(lán)牙接收數(shù)據(jù)并發(fā)送到串口    
if (SerialBT.available()) {      
	char received = SerialBT.read();      
	Serial.write(received);    
}      // 延遲以減少處理壓力    
delay(10);  
}

如果你想讓它叫喚起來(lái)的話。。。。。

在ESP32-S3 Arduino環(huán)境中,如果你想在連接藍(lán)牙后實(shí)現(xiàn)亮流水燈并蜂鳴的效果,且不使用外部設(shè)備(如額外的LED條或復(fù)雜的驅(qū)動(dòng)電路),你可以使用ESP32-S3板載的LED(如果有的話,通常是內(nèi)置的LED,如用于指示程序運(yùn)行的LED)和GPIO引腳連接一個(gè)LED及一個(gè)無(wú)源蜂鳴器。我們將使用GPIO引腳來(lái)控制額外的LED來(lái)模擬流水燈效果。

以下是一個(gè)基本的示例代碼,用于在ESP32-S3連接藍(lán)牙后,通過(guò)藍(lán)牙接收信號(hào)(或簡(jiǎn)單地按時(shí)間間隔)來(lái)控制GPIO引腳上的LED形成流水燈效果,并同時(shí)驅(qū)動(dòng)無(wú)源蜂鳴器發(fā)聲。

首先,你需要連接一個(gè)LED和一個(gè)無(wú)源蜂鳴器到ESP32-S3的GPIO引腳。這里我們LED連接到GPIO 2,蜂鳴器連接到GPIO 13,并都通過(guò)適當(dāng)?shù)?a target="_blank">電阻連接到GND以限制電流

cpp
#include     
BluetoothSerial SerialBT;    
#define LED_PIN_1 2    // 第一個(gè)LED連接的GPIO引腳  
#define LED_PIN_2 14   // 假設(shè)我們?cè)龠B接一個(gè)LED到GPIO 14以模擬流水燈效果(可選)  
#define BUZZER_PIN 13  // 蜂鳴器連接的GPIO引腳    // 流水燈LED數(shù)組(可以擴(kuò)展以包含更多LED)  
int ledPins[] = {LED_PIN_1, LED_PIN_2};  
int numLEDs = sizeof(ledPins) / sizeof(ledPins[0]);    
unsigned long previousMillis = 0;        // 上次執(zhí)行時(shí)間  
const long interval = 500;               // 流水燈間隔時(shí)間,單位毫秒    
void setup() {    Serial.begin(115200);    // 初始化藍(lán)牙    
SerialBT.begin("ESP32-S3-Bluetooth");    
Serial.println("Bluetooth device started");      // 初始化LED和蜂鳴器引腳為輸出    
for (int i = 0; i < numLEDs; i++) 
{      
pinMode(ledPins[i], OUTPUT);    
}    
pinMode(BUZZER_PIN, OUTPUT);  
}    
void loop() {    // 從藍(lán)牙接收數(shù)據(jù)(這里不直接處理,但你可以根據(jù)需要添加代碼)      // 流水燈效果    
unsigned long currentMillis = millis();    
if (currentMillis - previousMillis >= interval) {      
previousMillis = currentMillis;        // 關(guān)閉所有LED      
for (int i = 0; i < numLEDs; i++) {        
digitalWrite(ledPins[i], LOW);      }        // 點(diǎn)亮下一個(gè)LED(循環(huán)點(diǎn)亮)      
static int currentLed = 0;      digitalWrite(ledPins[currentLed], HIGH);      
currentLed = (currentLed + 1) % numLEDs;        // 也可以在這里添加驅(qū)動(dòng)蜂鳴器的代碼,比如每次流水燈變化時(shí)讓蜂鳴器響一下      
digitalWrite(BUZZER_PIN, HIGH);      
delay(50); // 蜂鳴器響50毫秒      
digitalWrite(BUZZER_PIN, LOW);    }      // 注意:這里我們沒(méi)有直接從藍(lán)牙接收信號(hào)來(lái)控制流水燈,    
// 但你可以通過(guò)監(jiān)聽(tīng)SerialBT.available()并在接收到特定命令時(shí)改變流水燈的行為。  
}

使用步驟

上傳代碼:將ESP32-S3開(kāi)發(fā)板連接到電腦,并在Arduino IDE中上傳上述代碼。

連接藍(lán)牙

手機(jī)上啟用藍(lán)牙

打開(kāi)手機(jī)設(shè)置,進(jìn)入藍(lán)牙設(shè)置界面。

確保藍(lán)牙功能已開(kāi)啟,并設(shè)置為可被發(fā)現(xiàn)或可見(jiàn)。

搜索并連接ESP32

在手機(jī)的藍(lán)牙設(shè)置中,搜索可用的藍(lán)牙設(shè)備。

找到ESP32的藍(lán)牙名稱(在ESP32的代碼中設(shè)置),并點(diǎn)擊連接。

如果ESP32的藍(lán)牙模塊需要配對(duì)碼(PIN碼),請(qǐng)?jiān)谑謾C(jī)上輸入相應(yīng)的配對(duì)碼。這個(gè)配對(duì)碼可能在ESP32的代碼中預(yù)設(shè),或者是在連接過(guò)程中由ESP32動(dòng)態(tài)生成的。

數(shù)據(jù)通信

在Arduino IDE的串口監(jiān)視器中發(fā)送數(shù)據(jù),這些數(shù)據(jù)將被發(fā)送到已連接的手機(jī)。

在手機(jī)上使用藍(lán)牙通信應(yīng)用(如藍(lán)牙終端或類似應(yīng)用)發(fā)送數(shù)據(jù)到ESP32-S3,這些數(shù)據(jù)將在串口監(jiān)視器中顯示。

注意事項(xiàng)

確保ESP32-S3和手機(jī)在同一藍(lán)牙頻道上。

藍(lán)牙通信的可靠性和距離可能會(huì)受到環(huán)境和其他無(wú)線設(shè)備的影響。

藍(lán)牙名稱和密碼(如果設(shè)置了)應(yīng)與手機(jī)中顯示的一致。

通過(guò)以上步驟,能夠使用ESP32-S3與手機(jī)通過(guò)藍(lán)牙進(jìn)行基本的數(shù)據(jù)傳輸。

為了支持您的項(xiàng)目開(kāi)發(fā)需求,我們特別準(zhǔn)備了詳盡的開(kāi)發(fā)資料(有例程)。若您對(duì)此感興趣,并希望獲得這些寶貴的資源以助力您的項(xiàng)目進(jìn)展,歡迎添加我的微信(限前50位)xinsousou。我將免費(fèi)為您發(fā)送這些資料,希望能為您的開(kāi)發(fā)工作帶來(lái)便利與啟發(fā),謝謝?。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。?/p>


審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 藍(lán)牙
    +關(guān)注

    關(guān)注

    114

    文章

    5723

    瀏覽量

    169091
  • wi-fi
    +關(guān)注

    關(guān)注

    14

    文章

    2073

    瀏覽量

    124105
  • 低功耗
    +關(guān)注

    關(guān)注

    10

    文章

    2330

    瀏覽量

    103458
  • ESP32
    +關(guān)注

    關(guān)注

    17

    文章

    943

    瀏覽量

    16902
  • ardinuo
    +關(guān)注

    關(guān)注

    0

    文章

    1

    瀏覽量

    1448
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    請(qǐng)問(wèn)ESP32-S3藍(lán)牙是否支持SPP?

    由于需要支持RGB565的LCD,選型ESP32-S3。 看介紹,ESP32-S3藍(lán)牙似乎取消了對(duì)經(jīng)典藍(lán)牙的支持。 以前是使用STM32+HC-05模塊連接,需要設(shè)置ROLE=1主角
    發(fā)表于 07-01 08:07

    ESP32-S3自帶了藍(lán)牙,是否可以做藍(lán)牙音箱呢?

    因?yàn)槲沂切率?,我都沒(méi)有好好玩基礎(chǔ)開(kāi)發(fā)板,上來(lái)就買了ESP32-S3,當(dāng)時(shí)不太懂,看說(shuō)明有雙模藍(lán)牙的,但真正拿到后開(kāi)始學(xué)習(xí)才發(fā)現(xiàn),藍(lán)牙音箱是要用基礎(chǔ)藍(lán)牙才可以做。 但是作為新產(chǎn)品,不是向
    發(fā)表于 07-01 07:45

    ESP32-S3芯片賦能設(shè)備,打造智能交互新體驗(yàn)

    物聯(lián)網(wǎng)和人工智能(AI)技術(shù)融合的浪潮中,樂(lè)鑫ESP32-S3芯片以其卓越的性能和多功能性,成為智能家居和工業(yè)自動(dòng)化領(lǐng)域的明星產(chǎn)品。ESP32-S3是一款基于XtensaLX7處理器的嵌入式系統(tǒng)級(jí)
    的頭像 發(fā)表于 06-28 08:04 ?618次閱讀
    <b class='flag-5'>ESP32-S3</b>芯片賦能設(shè)備,打造智能交互新體驗(yàn)

    esp32-S3支持arduino編程嗎?

    arduino選開(kāi)發(fā)板的時(shí)候沒(méi)有es32-s3, 只有s2可選。 請(qǐng)問(wèn): 1. esp32-S3支持arduino編程嗎 2. arduino下sample下的BLE庫(kù)能用嗎? 3.
    發(fā)表于 06-27 08:23

    如何關(guān)閉ESP32-S3中的FPU浮點(diǎn)數(shù)計(jì)算單元?

    如何關(guān)閉ESP32-S3中的FPU浮點(diǎn)數(shù)計(jì)算單元。如題,之前的項(xiàng)目esp32s2 上面運(yùn)行良好,但是移植到esp32s3后由于fpu造成
    發(fā)表于 06-27 07:32

    esp-idf使用esp32-s3跑lvgl8,界面刷新很卡頓,如何對(duì)其進(jìn)行幀率優(yōu)化呢?

    esp-idf使用esp32-s3跑lvgl8,界面刷新很卡頓,如何對(duì)其進(jìn)行幀率優(yōu)化呢?
    發(fā)表于 06-19 07:54

    VScode目標(biāo)設(shè)備選擇esp32-s3時(shí)報(bào)錯(cuò)的原因?

    使用VS code編輯和編譯esp32-s3,目標(biāo)設(shè)備選擇esp32-s3時(shí)報(bào)錯(cuò),報(bào)錯(cuò)信息如附件圖一 目標(biāo)設(shè)備選擇esp32-s3時(shí)報(bào)錯(cuò)信息 : 使用esp32-s2時(shí)編譯和下載運(yùn)行都
    發(fā)表于 06-19 06:45

    請(qǐng)問(wèn)esp32-s3如何進(jìn)行3線spi通信?

    想通過(guò)esp32-s3驅(qū)動(dòng)3線spi的屏,但是一直初始化不成功。所以來(lái)求助一下esp323線spi通信。
    發(fā)表于 06-14 08:00

    如何降低esp32-s3 ble功耗?

    當(dāng)前僅使用esp32-s3 的ble與手機(jī)通訊,雙核跑240Mhz。大概每50ms發(fā)送32字節(jié)。未開(kāi)啟modem sleep時(shí)電流為180ma,開(kāi)啟modem sleep后為140ma。請(qǐng)問(wèn)下是否處于正常工況?有沒(méi)有什么另外的
    發(fā)表于 06-14 07:13

    esp32-s3藍(lán)牙僅支持BLE 5.0嗎?

    1. esp32-s3藍(lán)牙僅支持BLE 5.0嗎?經(jīng)典藍(lán)牙是否支持,以及BLE 5.1 5.2 5.3是否支持 2. 如何選擇1M 或2M 的phy?似乎沒(méi)看到相應(yīng)的api
    發(fā)表于 06-13 06:48

    請(qǐng)問(wèn)ESP32-S3如何驅(qū)動(dòng)QSPI接口的LCD?

    目前項(xiàng)目用ESP32-S3來(lái)驅(qū)動(dòng)QSPI接口的LCD,驅(qū)動(dòng)IC為GC9B71(規(guī)格書(shū)參考附件)。試著ESP-IDF的范例spi_lcd_touch_example_main基礎(chǔ)修改了
    發(fā)表于 06-07 06:51

    分享6個(gè)實(shí)用的ESP32-S3物聯(lián)網(wǎng)項(xiàng)目:從智能設(shè)備到安全創(chuàng)新

    ESP32-S3是物聯(lián)網(wǎng)領(lǐng)域的創(chuàng)新之一,具備2.4GHz Wi-Fi和藍(lán)牙連接、先進(jìn)的安全功能和各種接口協(xié)議的外設(shè)。該雙核微控制器基于TSMC超低功耗40nm技術(shù)構(gòu)建,適合輕量級(jí)AI應(yīng)用。兼具
    的頭像 發(fā)表于 05-17 10:15 ?609次閱讀

    ESP32-S3模組燒錄又失?。糠窒碓趺磁挪樵?/a>

    ESP32-S3模組物聯(lián)網(wǎng)中非常好用,可以做帶屏小音箱、溫控器、智能86盒、泳池清潔機(jī)器人等等,燒錄的時(shí)候經(jīng)常會(huì)遇到一些問(wèn)題,這里分享一些燒錄失敗的原因或者燒錄遇到的問(wèn)題,教大家怎么排查原因
    的頭像 發(fā)表于 05-11 08:04 ?2105次閱讀
    <b class='flag-5'>ESP32-S3</b>模組燒錄又失敗?分享怎么排查原因

    借助ESP32-S3主控MCU、ChirpLAN?小網(wǎng)關(guān)搭建大網(wǎng)絡(luò)

    借助先進(jìn)的ESP32-S3主控MCU,ChirpLAN?小網(wǎng)關(guān)為您帶來(lái)前所未有的網(wǎng)絡(luò)體驗(yàn)。
    的頭像 發(fā)表于 03-14 10:02 ?818次閱讀

    ESP32-S3 Wifi模組智慧酒店的應(yīng)用

    ,ESP32-S3憑借其強(qiáng)大的計(jì)算能力和豐富的內(nèi)存,有著豐富的創(chuàng)新應(yīng)用,如語(yǔ)音交互、智能音頻和基于機(jī)器學(xué)習(xí)的預(yù)見(jiàn)性維護(hù)設(shè)備等,經(jīng)常會(huì)被應(yīng)用到智慧酒店中。小啟跟大家講下ESP
    的頭像 發(fā)表于 01-06 08:03 ?571次閱讀
    <b class='flag-5'>ESP32-S3</b> Wifi模組<b class='flag-5'>在</b>智慧酒店的應(yīng)用