247浏览
查看: 247|回复: 12

[项目] 【花雕学编程】Arduino动手做(234)---WeMos D1R32极简蓝牙

[复制链接]
【花雕学编程】Arduino动手做(234)---WeMos D1R32极简蓝牙图1

Wemos D1 ESP32 开发板是一款紧凑而强大的设备,它集成了天线和射频巴伦、功率放大器、低噪声放大器、滤波器和电源管理模块。整个解决方案占用的印刷电路板面积最少。该板采用台积电 40nm 低功耗技术,搭配 2.4GHz 双模 Wi-Fi 和蓝牙芯片,功率和射频性能最佳,安全可靠,可扩展至各种应用。将 WiFi 和蓝牙连接结合在单个 ESP32 芯片上。Wemos D1 ESP32 开发板是基于乐鑫 ESP32 芯片的开发板。它具有 Wi-Fi 和蓝牙连接,以及一系列用于连接传感器、执行器和其他设备的输入和输出引脚。该板具有高性能处理器和广泛的功能,是物联网和家庭自动化项目的理想选择。此外,该板具有易于使用的界面,采用 Arduino UNO 外形尺寸,并与 Arduino 平台兼容,可以轻松开发项目并与其他设备集成。借助 Wemos D1 ESP32 开发板,您可以轻松地为各种应用创建智能、互联的解决方案。该板的一些规格包括:
- 240 MHz 双核 LX6 芯片
- Wi-Fi 802.11 b/g/n 连接
- 蓝牙 4.2 BLE 连接
- 4 MB 闪存
- 520 KB SRAM
- 30 针输入/输出,包括 GPIO、I2C、SPI、UART 和 ADC
- MicroSD支持
- LiPo电池充电支持
该板与 Arduino 平台兼容,可以使用 Arduino IDE 进行编程。此外,它还支持 MicroPython 平台,该平台允许使用 Python 进行编程。


【花雕学编程】Arduino动手做(234)---WeMos D1R32极简蓝牙图2

驴友花雕  中级技神
 楼主|

发表于 2024-10-7 14:06:33

【花雕学编程】Arduino动手做(234)---WeMos D1R32极简蓝牙

WeMos D1 R32 ESP32搭建开发环境

1、安装Windows驱动CH340

【花雕学编程】Arduino动手做(234)---WeMos D1R32极简蓝牙图1

回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2024-10-7 14:12:09

【花雕学编程】Arduino动手做(234)---WeMos D1R32极简蓝牙

2、在Arduino中添加 esp32 开发板地址:
打开Arduino后选择:文件 > 首选项 > 附加开发板管理器网址中加入Arduino for esp32包的地址:
https://dl.espressif.com/dl/package_esp32_index.json
https://raw.githubusercontent.co ... ge_esp32_index.json

【花雕学编程】Arduino动手做(234)---WeMos D1R32极简蓝牙图2

【花雕学编程】Arduino动手做(234)---WeMos D1R32极简蓝牙图1

回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2024-10-7 14:26:52

【花雕学编程】Arduino动手做(234)---WeMos D1R32极简蓝牙

3、安装后,转到工具 –>开发板 –> ESP32 Arduino –>选择ESP32  Dev  Module。

【花雕学编程】Arduino动手做(234)---WeMos D1R32极简蓝牙图2

【花雕学编程】Arduino动手做(234)---WeMos D1R32极简蓝牙图1
回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2024-10-7 14:29:26

【花雕学编程】Arduino动手做(234)---WeMos D1R32极简蓝牙

4、点亮板载LED

  【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
    实验二百三十四:Wemos D1 迷你Arduino Uno R3 D1 R32 ESP32
    Wifi蓝牙无线开发板CH340 4M内存
  {花雕动手做}项目之一:使用 BLINK 点亮板载LED

实验开源代码

  1. /*
  2.   【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
  3.     实验二百三十四:Wemos D1 迷你Arduino Uno R3 D1 R32 ESP32
  4.     Wifi蓝牙无线开发板CH340 4M内存
  5.   {花雕动手做}项目之一:使用 BLINK 点亮板载LED
  6. */
  7. #define LED_BUILTIN 2
  8. void setup() {
  9.   pinMode(LED_BUILTIN, OUTPUT); // 设置板载LED为输出模式
  10. }
  11. void loop() {
  12.   digitalWrite(LED_BUILTIN, HIGH); // 打开LED
  13.   delay(500); // 延时500毫秒
  14.   digitalWrite(LED_BUILTIN, LOW); // 关闭LED
  15.   delay(500); // 延时500毫秒
  16. }
复制代码


回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2024-10-7 15:49:08

【花雕学编程】Arduino动手做(234)---WeMos D1R32极简蓝牙

代码解读
1、定义LED_BUILTIN:手动定义LED_BUILTIN为GPIO 2,解决了未声明的错误1。
2、设置引脚模式:使用pinMode()函数将GPIO 2设置为输出模式。
3、控制LED:通过digitalWrite()函数控制LED的开关状态。
4、延时函数:使用delay()函数实现LED的闪烁效果。
5、错误排查:确保选择正确的开发板和配置,避免类似的编译错误。

实验场景图

【花雕学编程】Arduino动手做(234)---WeMos D1R32极简蓝牙图2

【花雕学编程】Arduino动手做(234)---WeMos D1R32极简蓝牙图1

回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2024-10-7 16:24:19

【花雕学编程】Arduino动手做(234)---WeMos D1R32极简蓝牙

ESP32是一款功能强大的微控制器,内置了Wi-Fi和蓝牙功能。特别是其低功耗蓝牙(BLE)功能,使其在物联网(IoT)应用中非常受欢迎。以下是对ESP32 BLE的详细介绍:

1、BLE基础知识
BLE(Bluetooth Low Energy)是一种专为低功耗、短距离通信设计的无线技术。它在2.4 GHz ISM频段运行,适用于需要传输少量数据的电池供电设备,如可穿戴设备和传感器1。

2、ESP32的BLE功能
ESP32支持双模蓝牙,包括经典蓝牙(BR/EDR)和低功耗蓝牙(BLE)。其BLE功能具有以下特点:
多角色支持:ESP32可以同时作为BLE服务器和客户端运行。
高效的电源管理:BLE的设计使其在不活动时消耗极少的电力,非常适合电池供电的设备。
丰富的库支持:ESP32的开发环境(如ESP-IDF和Arduino IDE)提供了丰富的BLE库,简化了开发过程。

3、BLE架构
ESP32的BLE架构分为控制器(Controller)和主机(Host)两部分:
控制器:负责物理层和链路层的处理,包括发送和接收无线电信号。
主机:管理设备间的通信协议和数据处理,提供应用层接口。

4、应用场景
智能家居:通过BLE连接智能灯泡、门锁等设备,实现远程控制和自动化。
健康监测:结合心率监测器、血氧仪等设备,实时监测健康数据。
环境监测:使用BLE传感器网络,监测温度、湿度、空气质量等环境参数。

【花雕学编程】Arduino动手做(234)---WeMos D1R32极简蓝牙图1

回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2024-10-7 17:50:36

【花雕学编程】Arduino动手做(234)---WeMos D1R32极简蓝牙

  【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
    实验二百三十四:Wemos D1 迷你Arduino Uno R3 D1 R32 ESP32
    Wifi蓝牙无线开发板CH340 4M内存
  {花雕动手做}项目之二:极简的ESP32蓝牙串口透传实现(从机)

实验开源代码

  1. /*
  2.   【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
  3.     实验二百三十四:Wemos D1 迷你Arduino Uno R3 D1 R32 ESP32
  4.     Wifi蓝牙无线开发板CH340 4M内存
  5.   {花雕动手做}项目之二:极简的ESP32蓝牙串口透传实现(从机)
  6. */
  7. #include "BluetoothSerial.h" // 引入蓝牙串口库
  8. // 检查是否启用了蓝牙和Bluedroid
  9. #if !defined(CONFIG_BT_ENABLED) || !defined(CONFIG_BLUEDROID_ENABLED)
  10. #error Bluetooth is not enabled! Please run `make menuconfig` to and enable it
  11. #endif
  12. BluetoothSerial SerialBT; // 创建蓝牙串口对象
  13. void setup() {
  14.   Serial.begin(115200); // 初始化串口通信,波特率为115200
  15.   SerialBT.begin("ESP32test"); // 初始化蓝牙串口,设置蓝牙设备名称为"ESP32test"
  16.   Serial.println("设备已启动,现在您可以将其与蓝牙配对!"); // 输出启动信息
  17. }
  18. void loop() {
  19.   if (Serial.available()) {
  20.     SerialBT.write(Serial.read()); // 将串口接收到的数据发送到蓝牙
  21.   }
  22.   if (SerialBT.available()) {
  23.     Serial.write(SerialBT.read()); // 将蓝牙接收到的数据发送到串口
  24.   }
  25.   delay(20); // 延时20毫秒,避免过于频繁的循环
  26. }
复制代码


回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2024-10-7 17:53:00

【花雕学编程】Arduino动手做(234)---WeMos D1R32极简蓝牙

实验串口返回情况

【花雕学编程】Arduino动手做(234)---WeMos D1R32极简蓝牙图1
回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2024-10-7 17:59:09

【花雕学编程】Arduino动手做(234)---WeMos D1R32极简蓝牙

打开手机蓝牙,发现可用设备

【花雕学编程】Arduino动手做(234)---WeMos D1R32极简蓝牙图1
回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2024-10-7 18:05:07

【花雕学编程】Arduino动手做(234)---WeMos D1R32极简蓝牙

打开手机APP——SPP蓝牙串口

【花雕学编程】Arduino动手做(234)---WeMos D1R32极简蓝牙图1
回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2024-10-7 18:08:18

【花雕学编程】Arduino动手做(234)---WeMos D1R32极简蓝牙

连接后,在聊天窗口输入:ok和1234567890

【花雕学编程】Arduino动手做(234)---WeMos D1R32极简蓝牙图1
回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2024-10-7 18:10:33

【花雕学编程】Arduino动手做(234)---WeMos D1R32极简蓝牙

实验串口返回情况

【花雕学编程】Arduino动手做(234)---WeMos D1R32极简蓝牙图1
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail