40517浏览
楼主: 驴友花雕

[ESP8266/ESP32] 最像Arduino Uno的ESP32开发板之WeMos D1 R32

[复制链接]

驴友花雕  中级技神
 楼主|

发表于 2021-7-14 16:55:18

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
  实验一百七十七:Wemos D1 R32 ESP32开发板
  项目三十八:极简的ESP32蓝牙串口透传实现


配对

最像Arduino Uno的ESP32开发板之WeMos D1 R32图1

回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2021-7-14 16:58:09

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
  实验一百七十七:Wemos D1 R32 ESP32开发板
  项目三十八:极简的ESP32蓝牙串口透传实现

成功添加蓝牙设备“ESP32test”

最像Arduino Uno的ESP32开发板之WeMos D1 R32图1

回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2021-7-14 17:10:10

本帖最后由 驴友花雕 于 2021-7-14 17:13 编辑

最像Arduino Uno的ESP32开发板之WeMos D1 R32图1
回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2021-7-15 06:44:13

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
  实验一百七十七:Wemos D1 R32 ESP32开发板
  项目三十八:极简的ESP32蓝牙串口透传实现

在电脑上看到的ESP32开发板

最像Arduino Uno的ESP32开发板之WeMos D1 R32图1

回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2021-7-15 08:08:36


【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
  实验一百七十七:Wemos D1 R32 ESP32开发板
  项目三十八:极简的ESP32蓝牙串口透传实现(从机)

  BluetoothSerial库函数


  1.   Serial.begin(115200);
  2.   SerialBT.begin("ESP32test"); //Bluetooth device name
  3.   Serial.println("The device started, now you can pair it with bluetooth!");
复制代码


初始化中的函数一目了然
Serial.begin() 用于设置波特率;
SerialBT.begin("ESP32test") 此函数用于设置其它设备在搜索此设备的蓝牙时显示的名称,这里如果用手机蓝牙搜索的话就会显示ESP32test;
Serial.println("The device started, now you can pair it with bluetooth!") 此函数用于在对话框中的输出,这里用于提示蓝牙已开始工作


下面loop中的函数是重点


  1.   if (Serial.available()) {
  2.     SerialBT.write(Serial.read());
  3.   }
  4.   if (SerialBT.available()) {
  5.     Serial.write(SerialBT.read());
  6.   }
  7.   delay(20);
  8. }
复制代码


下类函数为显示串口缓冲区中当前剩余的字符个数,当它>0时说明串口接收到了信息,
Serial.available()此函数为开发板发送的字符个数
SerialBT.available()此函数为开发板接收的字符个数

下类函数为发送和接收的函数
Serial.read()此函数用于存储开发板发送的数据
SerialBT.read()此函数用于存储开发板接收的数据

下类函数为输出函数,用途相同,都是在对话框中显示相应的数据
Serial.write
SerialBT.write



回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2021-7-15 09:41:29

打开手机应用宝,搜索SPP,安装蓝牙串口BlueSPP

最像Arduino Uno的ESP32开发板之WeMos D1 R32图1





回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2021-7-15 10:03:20

打开APP,搜索蓝牙设备

最像Arduino Uno的ESP32开发板之WeMos D1 R32图1





回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2021-7-15 10:20:33

选择一个设备ESP32test进行连接


最像Arduino Uno的ESP32开发板之WeMos D1 R32图1
回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2021-7-15 10:36:57

发送“ok”



最像Arduino Uno的ESP32开发板之WeMos D1 R32图1

回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2021-7-15 10:45:30

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
  实验一百七十七:Wemos D1 R32 ESP32开发板
  项目三十八:极简的ESP32蓝牙串口透传实现(从机)

  项目串口返回情况

最像Arduino Uno的ESP32开发板之WeMos D1 R32图1

回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2021-7-15 13:43:51

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
  实验一百七十七:Wemos D1 R32 ESP32开发板
  项目三十九:尝试物联网接入方案blinker
  安装Blinker 库:
  https://github.com/blinker-iot/blinker-library/archive/master.zip
  文档资料:https://diandeng.tech/doc

  实验开源代码

  1. /*
  2.   【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
  3.   实验一百七十七:Wemos D1 R32 ESP32开发板
  4.   项目三十九:尝试物联网接入方案blinker
  5.   安装Blinker 库:
  6.   https://github.com/blinker-iot/blinker-library/archive/master.zip
  7.   文档:https://diandeng.tech/doc
  8. */
  9. #define BLINKER_PRINT Serial
  10. #define BLINKER_BLE
  11. #include <Blinker.h>
  12. // 新建组件对象
  13. BlinkerButton Button1("btn-abc");
  14. BlinkerNumber Number1("num-abc");
  15. int counter = 0;
  16. // 按下按键即会执行该函数
  17. void button1_callback(const String & state) {
  18.     BLINKER_LOG("get button state: ", state);
  19.     digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN));
  20. }
  21. // 如果未绑定的组件被触发,则会执行其中内容
  22. void dataRead(const String & data)
  23. {
  24.     BLINKER_LOG("Blinker readString: ", data);
  25.     counter++;
  26.     Number1.print(counter);
  27. }
  28. void setup() {
  29.     // 初始化串口
  30.     Serial.begin(115200);
  31.     #if defined(BLINKER_PRINT)
  32.         BLINKER_DEBUG.stream(BLINKER_PRINT);
  33.     #endif
  34.    
  35.     // 初始化有LED的IO
  36.     pinMode(LED_BUILTIN, OUTPUT);
  37.     digitalWrite(LED_BUILTIN, HIGH);
  38.     // 初始化blinker
  39.     Blinker.begin();
  40.     Blinker.attachData(dataRead);
  41.     Button1.attach(button1_callback);
  42. }
  43. void loop() {
  44.     Blinker.run();
  45. }
复制代码


回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2021-7-15 13:46:26

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
  实验一百七十七:Wemos D1 R32 ESP32开发板
  项目三十九:尝试物联网接入方案blinker
  安装Blinker 库:
  https://github.com/blinker-iot/blinker-library/archive/master.zip
  文档资料:https://diandeng.tech/doc

  项目串口返回情况

最像Arduino Uno的ESP32开发板之WeMos D1 R32图1

回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2021-7-15 13:55:19

下载安装blinker  APP
打开应用宝搜索blinker并安装
或下载;
https://github.com/blinker-iot/app-release/releases

最像Arduino Uno的ESP32开发板之WeMos D1 R32图1

回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2021-7-15 14:25:10

添加设备


最像Arduino Uno的ESP32开发板之WeMos D1 R32图1
回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2021-7-15 14:26:47

选择独立设备


最像Arduino Uno的ESP32开发板之WeMos D1 R32图1
回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2021-7-15 14:28:17

蓝牙接入


最像Arduino Uno的ESP32开发板之WeMos D1 R32图1
回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2021-7-15 14:30:17

连接后修改板子名称和图标


最像Arduino Uno的ESP32开发板之WeMos D1 R32图1
回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2021-7-15 15:00:53

连接后,进入blinker入门示例

点我计数四次,点我开关灯四次

最像Arduino Uno的ESP32开发板之WeMos D1 R32图1
回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2021-7-15 15:03:01

项目串口返回情况

最像Arduino Uno的ESP32开发板之WeMos D1 R32图1
回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2021-8-9 08:54:29

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
  实验一百七十七:Wemos D1 ESP32 WiFi蓝牙4MB4闪存UNO R32开发板模块  UNO D1 R32(ESP32)开发板   兼容Arduino
  项目四十:尝试MAX7219的8x8点阵屏滚动输出”Hello World“

实验开源代码

  1. /*
  2.   【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
  3.   实验一百七十七:Wemos D1 ESP32 WiFi蓝牙4MB4闪存UNO R32开发板模块  UNO D1 R32(ESP32)开发板   兼容Arduino
  4.   项目四十:尝试MAX7219的8x8点阵屏滚动输出”Hello World“
  5. */
  6. #include <SPI.h>
  7. #include "LedMatrix.h"
  8. #define NUMBER_OF_DEVICES 2 //串联led矩阵连接数
  9. #define CS_PIN 13
  10. #define CLK_PIN 12
  11. #define MISO_PIN 2 //不使用此引脚只需填写匹配构造函数
  12. #define MOSI_PIN 14
  13. LedMatrix ledMatrix = LedMatrix(NUMBER_OF_DEVICES, CLK_PIN, MISO_PIN, MOSI_PIN, CS_PIN);
  14. void setup() {
  15.   ledMatrix.init();
  16.   ledMatrix.setText("Hello World");//世界你好
  17. }
  18. void loop() {
  19.   ledMatrix.clear();
  20.   ledMatrix.scrollTextLeft();
  21.   ledMatrix.drawText();
  22.   ledMatrix.commit();
  23.   delay(50);
  24. }
复制代码


回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2021-8-9 09:09:59

LedMatrix.h库函数提供了一些功能

init():初始化库
setText():设置要在LED矩阵上打印的文本
scrollTextLeft():将文本滚动到左侧效果
clear():清除显示
drawText():开始绘制文本到缓冲区
commit():将文本从缓冲区提交到LED点阵

为了使用这些功能,您需要 使用构造函数创建LedMatrix 实例:

  1. LedMatrix ledMatrix = LedMatrix(NUMBER_OF_DEVICES,CLK_PIN,MISO_PIN,MOSI_PIN,CS_PIN)
复制代码

注意:串行模式下NUMBER_OF_DEVICES级联LED矩阵的数量



最像Arduino Uno的ESP32开发板之WeMos D1 R32图1

回复

使用道具 举报

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

本版积分规则

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

硬件清单

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

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

mail