ESP32用作经典蓝牙串口透传模块与手机进行串口通信

ESP32用作经典蓝牙串口透传模块与手机进行串口通信

简介

ESP32-WROOM-32模组集成了双模蓝牙包括传统蓝牙(BR/EDR)、低功耗蓝牙(BLE)和 Wi-Fi,具有广泛的用途:Wi-Fi 支持极大范围的通信连接,也支持通过路由器直接连接互联网;而蓝牙可以让用户连接手机或者广播 Bluetooth LE Beacon 以便于信号检测。

蓝牙特性:

• 支持标准 Class-1、Class-2 和 Class-3,且无需外部功率放大器

• 增强型功率控制 (Enhanced Power Control)

• 输出功率高达 +9 dBm

• NZIF 接收器具有--94 dBm 的 BLE 接收灵敏度

• 自适应跳频 (AFH)

• 基于 SDIO/SPI/UART 接口的标准 HCI

• 高速 UART HCI,最高可达 4 Mbps

• 支持蓝牙 4.2 BR/EDR 和 Bluetooth LE 双模 controller

• 同步面向连接/扩展同步面向连接 (SCO/eSCO)

• CVSD 和 SBC 音频编解码算法

• 蓝牙微微网 (Piconet) 和散射网 (Scatternet)

• 支持传统蓝牙和低功耗蓝牙的多设备连接

• 支持同时广播和扫描

开发板集成Type-C USB转TTL串口芯片CH343可以实现一键串口下载程序和串口打印。

ESP32开发板Arduino程序

开发板管理器搜索安装ESP32开发板

选择好自己手里所用的对应开发板

打开BluetoothSerial示例程序

javascript 复制代码
//This example code is in the Public Domain (or CC0 licensed, at your option.)
//By Evandro Copercini - 2018
//
//This example creates a bridge between Serial and Classical Bluetooth (SPP)
//and also demonstrate that SerialBT have the same functionalities of a normal Serial

#include "BluetoothSerial.h"

#if !defined(CONFIG_BT_ENABLED) || !defined(CONFIG_BLUEDROID_ENABLED)
#error Bluetooth is not enabled! Please run `make menuconfig` to and enable it
#endif

BluetoothSerial SerialBT;

void setup() {
  Serial.begin(115200);
  SerialBT.begin("ESP32test"); //Bluetooth device name
  Serial.println("The device started, now you can pair it with bluetooth!");
}

void loop() {
  if (Serial.available()) {
    SerialBT.write(Serial.read());
  }
  if (SerialBT.available()) {
    Serial.write(SerialBT.read());
  }
  delay(20);
}

手机与ESP32开发板进行蓝牙串口透传通信

编译上传例程到ESP32开发板,在手机应用市场搜索下载安装"SPP蓝牙串口"APP,本实验中用的是"Arduino bluetooth controller"APP,打开APP搜索ESP32tset蓝牙设备并建立连接。

选择Terminal mode

Arduino IDE打开串口助手,手机蓝牙串口APP和串口助手互发信息,即可显示出收到信息。通过修改例程中的波特率参数即可更改蓝牙串口通信的波特率。

总结

通过本实验可把ESP32用作一个蓝牙串口透传设备使用,功能和常用的HC-05/06串口蓝牙设备一样。

相关推荐
云山工作室1 小时前
基于单片机的牧场奶牛养殖系统设计(论文+源码)
stm32·单片机·嵌入式硬件·毕业设计·毕设
三佛科技-134163842122 小时前
制冰机方案,家用制冰机MCU控制方案开发设计
单片机·嵌入式硬件·智能家居·pcb工艺
wanhengidc5 小时前
云手机搬砖 尤弥尔传奇自动化操作
运维·服务器·arm开发·安全·智能手机·自动化
三佛科技-187366133975 小时前
FT61F02X 10bit AD型8位MCU型号解析(程序储存器及脚位图介绍)
单片机·嵌入式硬件
mit6.8246 小时前
[手机AI开发sdk] Aid_code IDE | PC浏览器同步访问
ide·人工智能·智能手机
费工不费解6 小时前
Arduino硬件原理3:核心单片机
单片机·嵌入式硬件
TDengine (老段)6 小时前
TDengine 字符串函数 CHAR 用户手册
java·大数据·数据库·物联网·时序数据库·tdengine·涛思数据
安娜的信息安全说8 小时前
深入浅出 MQTT:轻量级消息协议在物联网中的应用与实践
开发语言·物联网·mqtt
云数据构建师8 小时前
TB67S580FNG 芯片核心特点与应用概述
单片机·嵌入式硬件
CosimaLi8 小时前
STM32F10x硬件I2C
stm32·单片机·嵌入式硬件