最简单DIY串口蓝牙硬件实现方案

news/2025/1/12 12:17:17/

51单片机物联网智能小车系列文章目录


第一篇:最简单DIY的51蓝牙遥控小车设计方案
第二篇:最简单DIY串口蓝牙硬件实现方案


文章目录

  • 51单片机物联网智能小车系列文章目录
  • 前言
  • 一、最简单DIY串口蓝牙硬件实现方案是什么?
  • 二、制作步骤
    • 1.搭建ESP32开发环境
    • 2.下载代码
    • 3.根据软件和硬件完成硬件连接
  • 三、仿真与调试
    • 1. 准备好硬件,小车上电和打开arduino“串口监视器”,输入指令,点击发送。
    • 2. 接收小车返回的响应
  • 总结


前言

    daodanjishui物联网核心原创技术之最简单DIY串口蓝牙硬件实现方案。
    市面上有各种开源智能小车,但是有复杂的有简单的,如果想快速入门DIY物联网智能小车蓝牙控制器,这个方案会给你一个快捷高效的方案。


一、最简单DIY串口蓝牙硬件实现方案是什么?

    在第一篇实现了51单片机智能小车,不过那时候是用手机蓝牙调试助手来发送遥控指令控制小车的。原因是入门不需要太复杂,那现在需要做一个蓝牙遥控器来代替手机蓝牙,所以我就用到了ESP32单片机,因为这个单片机具有蓝牙功能。
    虽然市面上也有不少开源的智能小车遥控器方案,还有自己小时候也玩过不少无线遥控的航模,但是全部由自己软件硬件全部独立设计的方案到几年前才正式实现,现在用文字的形式记录下来,对自己童年时代深刻地回忆和对未来技术的展望。“闭门造遥控器”虽然有点痛苦,但是当你看到自己亲手做的小车在地上通过自制的蓝牙遥控器遥控动起来的时候,你会发现一切的付出都是值得的!小车的全家福如下图所示:
在这里插入图片描述
51单片机最小系统板如下:
在这里插入图片描述
自制串口蓝牙遥控器如下所示:
在这里插入图片描述
遥控器与小车全家福如下:
在这里插入图片描述
通过电脑的串口调试助手发送控制指令,这个ESP32单片机就会把串口的控制指令通过无线蓝牙发送出去,智能小车的串口蓝牙模块收到蓝牙信息之后就控制小车行进了。串口调试助手的信息如下图所示:
在这里插入图片描述
优酷视频入口:https://player.youku.com/embed/XNDg5ODQ4NzUzMg==

直接观看视频

ESP32充当电脑串口蓝牙遥控蓝牙设备

二、制作步骤

1.搭建ESP32开发环境

1.1购买ESP32单片机,ESP32DEVKITV1开发板,价格更低十几块在某宝就能买到,这次下载程序可以直接使用手机数据线跟ESP32连接,跟ESP32-CAM单片机不一样,CAM还需要接一个USB转TTL模块才能下载程序
单片机的外貌如下:
在这里插入图片描述
原理图如下:
在这里插入图片描述
在这里插入图片描述

1.2搭建Arduino开发环境,不会搭建开发环境的买家可以到:https://www.cirmall.com/circuit/19141 自行按照说明搭建。

2.下载代码

    这个Arduino ESP32单片机的蓝牙代码也是相当精简,虽然是自己原创写的,但是也是经过严格的推敲和验证。很多读者不会编写蓝牙通信代码的话建议好好看看我这个代码了!代码截图如下:
在这里插入图片描述
截图的第一个箭头表示的是我智能小车使用的串口蓝牙模块的蓝牙热点名称和密码(串口蓝牙一上电就会生成这个热点的,一般是买回来就写死的,读者可以根据自己购买的串口蓝牙模块去调整源码的账号和密码,这是成功的关键)

//This example code is in the Public Domain (or CC0 licensed, at your option.)
//By Victor Tchistiak - 2019
//
//This example demostrates master mode bluetooth connection and pin 
//it creates a bridge between Serial and Classical Bluetooth (SPP)
//this is an extention of the SerialToSerialBT example by Evandro Copercini - 2018
//
//author by:daodanjishui 2020.10.10
#include "BluetoothSerial.h"
BluetoothSerial SerialBT;
String MACadd = "AA:BB:CC:11:22:33";
uint8_t address[6]  = {0xAA, 0xBB, 0xCC, 0x11, 0x22, 0x33};
//uint8_t address[6]  = {0x20, 0x18, 0x04, 0x15, 0x25, 0x13};
//String name = "OBDII";
String name = "HC-05";
char *pin = "1234"; //<- standard pin would be provided by default
bool connected;
void setup() {Serial.begin(115200);//SerialBT.setPin(pin);SerialBT.begin("ESP32test", true); //SerialBT.setPin(pin);Serial.println("The device started in master mode, make sure remote BT device is on!");// connect(address) is fast (upto 10 secs max), connect(name) is slow (upto 30 secs max) as it needs// to resolve name to address first, but it allows to connect to different devices with the same name.// Set CoreDebugLevel to Info to view devices bluetooth address and device namesconnected = SerialBT.connect(name);//connected = SerialBT.connect(address);if(connected) {Serial.println("Connected Succesfully!");} else {while(!SerialBT.connected(10000)) {Serial.println("Failed to connect. Make sure remote device is available and in range, then restart app."); }}// disconnect() may take upto 10 secs maxif (SerialBT.disconnect()) {Serial.println("Disconnected Succesfully!");}// this would reconnect to the name(will use address, if resolved) or address used with connect(name/address).SerialBT.connect();
}void loop() {if (Serial.available()) {SerialBT.write(Serial.read());}if (SerialBT.available()) {Serial.write(SerialBT.read());}delay(20);
}

    程序说明:用的是arduino写的工程,读者可以慢慢斟酌,如果为了成功,可以购买跟我一样型号的串口蓝牙模块。

3.根据软件和硬件完成硬件连接

通过安卓数据线连接ESP32和电脑,如“遥控器与小车全家福”图所示
用电脑串口调试助手发指令给小车可以实现有线控制小车行走,如“串口调试助手的信息”图所示。
注意了串口调试助手是arduino默认的“串口监视器”测试的。

三、仿真与调试

1. 准备好硬件,小车上电和打开arduino“串口监视器”,输入指令,点击发送。

如图所示:
在这里插入图片描述
左下角的箭头是默认发送\r\n的意思。
比如FFF\r\n是前进,
下面是后退:BBB\r\n
下面是左转: LLL\r\n
最后是右转: RRR\r\n(以此类推)

2. 接收小车返回的响应

看上面的截图,收到:FFF说明小车响应了前进指令。
后面以此类推。

输入FFF,点击“发送”按钮,小车就前进,串口调试窗口就看到小车回复了FFF,输入BBB就是倒退,左转是LLL,右转是RRR。
注意波特率是115200


总结

    小车是用ESP32单片机替代了安卓手机蓝牙调试助手从而用电脑串口调试助手发送指令的形式来控制的,所以说是最简单的蓝牙遥控小车遥控器DIY。不过加上舵机和机械手和操控摇杆或者是手机控制app,就变得高端了,敬请期待。这个版本是免费的,但是功能还是很齐全和强大的,代码也写得通俗易懂,不拖泥带水。
代码工程下载链接:https://www.cirmall.com/circuit/20409/
点我直接跳转


http://www.ppmy.cn/news/153347.html

相关文章

台式计算机必备硬件,DIY台式电脑主机六大硬件

如果自己DIY台式电脑&#xff0c;一定要选择好这六大硬件&#xff0c;其次再配上机箱、散热器(盒装CPU自带散热器)等下面是学习啦小编收集整理的DIY台式电脑主机六大硬件的选择&#xff0c;希望对大家有帮助~~ DIY台式电脑主机六大硬件的选择 方法/步骤 目前市面上的处理器(CPU…

DIY装机过程图解简述(硬件基础)

电子元件集成度的飞速提升令装机变得异常简单&#xff0c;期间甚至不需要我们具备任何电工知识。事实上&#xff0c;装机的更大意义在于让大家享受DIY的乐趣&#xff0c;同时尽快掌握一些相关的硬件知识&#xff0c;以便积累一些对应初级硬件故障的经验。今天&#xff0c;我们将…

计算机主机装机步骤,电脑组装步骤详细教程之裸机点亮 再将DIY硬件装入主机箱...

对于装机小白来说&#xff0c;如果没有DIY装机经验&#xff0c;那么装机还是有难度的&#xff0c;甚至不知道哪个硬件安装到哪里。不过如果有电脑组装教程的话&#xff0c;我们可以根据装机教程一步一步组装即可。下面装机之家为大家分享一个电脑组装教程&#xff0c;本次装机教…

硬件设计-DIY功放

不管是新手还是老手&#xff0c;都应该DIY一个功放 ​ 图为路飞本科时做的一套功放加耳放 今天在B站看到一个UP自己做了功放&#xff0c;很赞。于是想到了写今天这篇文章。也是基于自己入门硬件的一个小插曲&#xff0c;推荐给大家。 视频是当时本科时做的功放&#xff0c;用…

新电脑硬件DIY+ 安装Ubutun 18.04+排雷

硬件篇&#xff1a; 1.乘着小矿难3/8节活动&#xff0c;某东&#xff0c;抢了一张 RTX3080 12g&#xff0c; 7k&#xff01;&#xff01;&#xff01; CPU: I5 12600KF 主板华硕 B660M plus wifi DDR5. 主板信息&#xff1a;注意wifi,和网卡具体型号。 散件购买注意点&…

项目分享| DIY STM32控制的电子负载(硬件方案分享,软件代码下载)

今天分享的项目是基于STM32控制的简易电子负载&#xff0c;具有恒流、恒压、恒电阻以及恒功率功能&#xff0c;最大输入电压为100V&#xff0c;热设计功耗为100W&#xff0c;最大负载电流为12A。 感兴趣的同学可以关注下。感谢&#xff01; 系统结构图 电子负载采用3.7V锂电…

一、硬件制作

硬件制作 智能车元器件清单 电阻 限流分压 100/200、10k&#xff1a;复位电路 分压 1k&#xff1a;接在引脚和电源之间 控制电流保护引脚&#xff08;看手册中引脚额定电流&#xff09; 470&#xff1a;LED限流 工作电流&#xff08;电源电压-LED压降&#xff09;/限流电阻阻…

ESP32_DIY_硬件设计(一)

一. 简介 看到最近ESP32特别流行&#xff0c;我也来跟跟风&#xff0c;绘制了一块ESP32的PCB板玩玩。使用的是ESP32 WROOM 32模组作为主控&#xff0c;据说是刚刚出来的新品&#xff0c;性能特别强。 简要介绍一下PCB板的情况&#xff1a; 1.69寸触摸屏FPC接口 TF卡插座 四…