0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

ESP32-S3在ardinuo上如何与手机进行蓝牙互传?现在来教你!

瞿小洲 来源:jf_33322995 作者:jf_33322995 2024-07-05 10:05 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

先简单介绍一下:

ESP32-S3 是一款低功耗的 MCU 系统级芯片 (SoC),支持2.4GHz Wi-Fi和低功耗蓝牙(Bluetooth LE)无线通信。芯片集成了高性能的Xtensa32位LX7双核处理器、超低功耗协处理器、Wi-Fi 基带、蓝牙基带、RF模块以及外设。

来看esp32 S3的配置

wKgaomaHT8aABd6_AAES0VeI9Fc088.png

支持 IEEE 802.11b/g/n 协议
在 2.4 GHz 频带支持 20 MHz 和 40 MHz 频宽
支持 1T1R 模式,数据速率高达 150 Mbps
低功耗蓝牙 (Bluetooth LE):Bluetooth 5、Bluetooth mesh
高功率模式 (20 dBm)
速率支持 125 Kbps、500 Kbps、1 Mbps、2 Mbps
广播扩展 (Advertising Extensions)
多广播 (Multiple Advertisement Sets)
信道选择 (Channel Selection Algorithm #2)
Wi-Fi 与蓝牙共存,共用同一个天线
Xtensa 32位 LX7双核处理器,主频高达 240MHz
45 × GPIO 口

wKgZomaHUx2AN1NpAALPIY7ydqk129.png

管脚介绍

wKgaomaHU_KAY57JAAML9lX8H2Q588.png

此资料为esp32s3的datasheet 可以添加一下我的微信(xinsousou)来向我免费索取哦~

Arduino IDE设置

打开Arduino IDE。

在“工具”菜单中选择“开发板” -> “ESP32 Dev Module”。(注意:可能需要安装ESP32的板管理器URL,具体步骤参考ESP32的官方文档)

选择正确的串行端口和上传速度。

示例代码

cpp
#include     
BluetoothSerial SerialBT;   
void setup() {    
Serial.begin(115200);    // 初始化蓝牙并设置设备名称和PIN码(可选)    
SerialBT.begin("ESP32-S3-Bluetooth", true);    
Serial.println("Bluetooth device started");  
}    
void loop()
 {    // 从串口接收数据并发送到蓝牙    
if (Serial.available()) {      
	char received = Serial.read();      
	SerialBT.write(received);   
}      // 从蓝牙接收数据并发送到串口    
if (SerialBT.available()) {      
	char received = SerialBT.read();      
	Serial.write(received);    
}      // 延迟以减少处理压力    
delay(10);  
}

如果你想让它叫唤起来的话。。。。。

在ESP32-S3 Arduino环境中,如果你想在连接蓝牙后实现亮流水灯并蜂鸣的效果,且不使用外部设备(如额外的LED条或复杂的驱动电路),你可以使用ESP32-S3板载的LED(如果有的话,通常是内置的LED,如用于指示程序运行的LED)和GPIO引脚连接一个LED及一个无源蜂鸣器。我们将使用GPIO引脚来控制额外的LED来模拟流水灯效果。

以下是一个基本的示例代码,用于在ESP32-S3连接蓝牙后,通过蓝牙接收信号(或简单地按时间间隔)来控制GPIO引脚上的LED形成流水灯效果,并同时驱动无源蜂鸣器发声。

首先,你需要连接一个LED和一个无源蜂鸣器到ESP32-S3的GPIO引脚。这里我们LED连接到GPIO 2,蜂鸣器连接到GPIO 13,并都通过适当的电阻连接到GND以限制电流

cpp
#include     
BluetoothSerial SerialBT;    
#define LED_PIN_1 2    // 第一个LED连接的GPIO引脚  
#define LED_PIN_2 14   // 假设我们再连接一个LED到GPIO 14以模拟流水灯效果(可选)  
#define BUZZER_PIN 13  // 蜂鸣器连接的GPIO引脚    // 流水灯LED数组(可以扩展以包含更多LED)  
int ledPins[] = {LED_PIN_1, LED_PIN_2};  
int numLEDs = sizeof(ledPins) / sizeof(ledPins[0]);    
unsigned long previousMillis = 0;        // 上次执行时间  
const long interval = 500;               // 流水灯间隔时间,单位毫秒    
void setup() {    Serial.begin(115200);    // 初始化蓝牙    
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() {    // 从蓝牙接收数据(这里不直接处理,但你可以根据需要添加代码)      // 流水灯效果    
unsigned long currentMillis = millis();    
if (currentMillis - previousMillis >= interval) {      
previousMillis = currentMillis;        // 关闭所有LED      
for (int i = 0; i < numLEDs; i++) {        
digitalWrite(ledPins[i], LOW);      }        // 点亮下一个LED(循环点亮)      
static int currentLed = 0;      digitalWrite(ledPins[currentLed], HIGH);      
currentLed = (currentLed + 1) % numLEDs;        // 也可以在这里添加驱动蜂鸣器的代码,比如每次流水灯变化时让蜂鸣器响一下      
digitalWrite(BUZZER_PIN, HIGH);      
delay(50); // 蜂鸣器响50毫秒      
digitalWrite(BUZZER_PIN, LOW);    }      // 注意:这里我们没有直接从蓝牙接收信号来控制流水灯,    
// 但你可以通过监听SerialBT.available()并在接收到特定命令时改变流水灯的行为。  
}

使用步骤

上传代码:将ESP32-S3开发板连接到电脑,并在Arduino IDE中上传上述代码。

连接蓝牙

手机上启用蓝牙

打开手机设置,进入蓝牙设置界面。

确保蓝牙功能已开启,并设置为可被发现或可见。

搜索并连接ESP32

在手机的蓝牙设置中,搜索可用的蓝牙设备。

找到ESP32的蓝牙名称(在ESP32的代码中设置),并点击连接。

如果ESP32的蓝牙模块需要配对码(PIN码),请在手机上输入相应的配对码。这个配对码可能在ESP32的代码中预设,或者是在连接过程中由ESP32动态生成的。

数据通信

在Arduino IDE的串口监视器中发送数据,这些数据将被发送到已连接的手机。

在手机上使用蓝牙通信应用(如蓝牙终端或类似应用)发送数据到ESP32-S3,这些数据将在串口监视器中显示。

注意事项

确保ESP32-S3和手机在同一蓝牙频道上。

蓝牙通信的可靠性和距离可能会受到环境和其他无线设备的影响。

蓝牙名称和密码(如果设置了)应与手机中显示的一致。

通过以上步骤,能够使用ESP32-S3与手机通过蓝牙进行基本的数据传输。

为了支持您的项目开发需求,我们特别准备了详尽的开发资料(有例程)。若您对此感兴趣,并希望获得这些宝贵的资源以助力您的项目进展,欢迎添加我的微信(限前50位)xinsousou。我将免费为您发送这些资料,希望能为您的开发工作带来便利与启发,谢谢!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 蓝牙
    +关注

    关注

    119

    文章

    6407

    浏览量

    179389
  • wi-fi
    +关注

    关注

    15

    文章

    2470

    浏览量

    130096
  • 低功耗
    +关注

    关注

    12

    文章

    4053

    浏览量

    106876
  • ESP32
    +关注

    关注

    27

    文章

    1226

    浏览量

    22502
  • ardinuo
    +关注

    关注

    0

    文章

    1

    浏览量

    1584
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    基于ESP32-S3的休闲智能手表开源项目介绍

    这是一款基于ESP32-S3的休闲智能手表,配备1.7英寸显示屏、WiFi、蓝牙、振动马达、加速度计和陀螺仪,并支持多种表带。
    的头像 发表于 04-08 09:52 610次阅读
    基于<b class='flag-5'>ESP32-S3</b>的休闲智能手表开源项目介绍

    ESP32-S3系列】AD35-S3(AI红色桌宠)上手指南

    、智能控制面板、智能扬声器等。特性1CPU和片存储器内置ESP32-S3系列芯片,Xtensa双核32位LX7微处理器(支持单精度浮点运算单元),支持高达240M
    的头像 发表于 02-26 18:05 433次阅读
    【<b class='flag-5'>ESP32-S3</b>系列】AD35-<b class='flag-5'>S3</b>(AI红色桌宠)上手指南

    ESP32-S3初始化摄像头时检测到摄像头模组型号不被支持

    现在遇到的核心问题是:ESP32-S3初始化摄像头时检测到摄像头模组型号不被支持(错误码0x106(ESP_ERR_NOT_SUPPORTED)),导致摄像头探测失败并触发设备重启
    发表于 02-11 06:38

    ESP32-S3系列】AD35-S3(AI红色桌宠)规格书

    、智能控制面板、智能扬声器等。特性1CPU和片存储器内置ESP32-S3系列芯片,Xtensa双核32位LX7微处理器(支持单精度浮点运算单元),支持高达240M
    的头像 发表于 02-10 18:33 373次阅读
    【<b class='flag-5'>ESP32-S3</b>系列】AD35-<b class='flag-5'>S3</b>(AI红色桌宠)规格书

    Wi-Fi/蓝牙无线通信!乐鑫ESP32-S3方案3.5寸触摸串口彩屏,支持LVGL低代码UI开发!

    快速、高效、稳定的HMI方案来了!启明智显SC01Plus3.5寸触摸串口屏,基于ESP32-S3方案打造,支持RS485通讯接口以及Wi-Fi/蓝牙无线通信,简直是为嵌入式交互而生的HMI解决方案
    的头像 发表于 01-16 18:18 1455次阅读
    Wi-Fi/<b class='flag-5'>蓝牙</b>无线通信!乐鑫<b class='flag-5'>ESP32-S3</b>方案3.5寸触摸串口彩屏,支持LVGL低代码UI开发!

    深入解读乐鑫ESP32-S3,如何以单芯片搞定AIoT终端设备的智能交互

    运行。其开发框架和预编译模型库降低开发门槛,典型应用包括AI故事机和视觉交互模组。相比传统方案,ESP32-S3性能、成本和开发效率更具优势,适合快速量产。
    的头像 发表于 01-07 14:41 927次阅读
    深入解读乐鑫<b class='flag-5'>ESP32-S3</b>,如何以单芯片搞定AIoT终端设备的智能交互

    乐鑫科技ESP32-S3开发板+超声波雾化,给智能鱼缸整点美学氛围

    我们为什么要给智能鱼缸弄雾化?美学氛围当然是一方面,但更重要的功能是局部加湿,为水面植物与周围空气提供柔和湿度。因此我们特意推出本期内容:用乐鑫科技ESP32-S3开发板和超声波雾化模块让水面形成
    的头像 发表于 12-08 18:04 991次阅读
    乐鑫科技<b class='flag-5'>ESP32-S3</b>开发板+超声波雾化,给智能鱼缸整点美学氛围

    为什么AI陪伴玩具都爱用ESP32-S3?这就科普

    深圳动能世纪整理分析,AI玩具市场中,ESP32-S3已成为众多厂商的首选方案。从智能对话玩偶到编程机器人,从早教故事机到AR互动卡片,ESP32-S3的身影无处不在。本文将从技术特性、成本控制
    的头像 发表于 12-05 14:05 391次阅读

    VSCode + ESP-IDF环境下给ESP32-S3项目添加头文件

    VSCode + ESP-IDF环境下给ESP32-S3项目添加头文件
    的头像 发表于 11-28 07:27 3280次阅读

    ESP32-S3 工具链+环境配置的最终步骤清单

    )。 脚本会自动下载 ESP32-S3 对应的 Xtensa LX7 工具链(包含 xtensa-esp32s3-elf),等待安装完成(无需额外操作)。 步骤2:加载环境变量(每次新终端需执行) 同一
    发表于 11-26 07:36

    ESP32-S3

    学习ESP32-S3 ,推荐使用什么IDE,学习资料一般咋哪找
    发表于 11-13 10:56

    低成本开源!用乐鑫科技ESP32-S3开发板轻松驱动无刷电机,保姆级教程来了!

    想用ESP32-S3开发板驱动无刷电机却不知从何下手?本教程将手把手教你完成从硬件连接到软件编程的全流程,无论你是新手还是有一定经验的开发者,都能轻松掌握!本教程代码已全部开源!后台私信关键词
    的头像 发表于 11-06 18:03 1184次阅读
    低成本开源!用乐鑫科技<b class='flag-5'>ESP32-S3</b>开发板轻松驱动无刷电机,保姆级教程来了!

    乐鑫科技ESP32-S3开发板配单色LED,竟能玩出这么多花样!代码开源,速来白嫖!

    从闪烁到呼吸,从流水到追逐,一文掌握所有LED特效技巧本文将带领大家从零开始,使用ESP32-S3开发板实现多种单色LED效果控制。无论你是刚入门的小白,还是有一定经验的开发者,都能轻松复刻这些炫酷
    的头像 发表于 10-23 18:02 2555次阅读
    乐鑫科技<b class='flag-5'>ESP32-S3</b>开发板配单色LED,竟能玩出这么多花样!代码开源,速来白嫖!

    ESP32-S3的MicroPython开发环境搭建

    本文通过搭建Thonny IDE开发环境,了解了如何给ESP32-S3烧录MircoPython固件和MircoPython应用程序。
    的头像 发表于 09-11 16:02 2067次阅读
    <b class='flag-5'>ESP32-S3</b>的MicroPython开发环境搭建

    乐鑫ESP32-S3专为AIoT设计,强化边缘AI应用方向

    电子发烧友网报道(文/李弯弯)乐鑫最新的财报中表示,公司ESP32-S系列自ESP32-S3芯片开始,强化了边缘AI方向的应用。ESP32-S3芯片增加了用于加速神经网络计算和信号处
    的头像 发表于 09-09 09:20 7926次阅读
    乐鑫<b class='flag-5'>ESP32-S3</b>专为AIoT设计,强化边缘AI应用方向