一、所需材料:
Esp32开发板 L298N电机驱动 小车底板材料
电脑(需要烧录代码到开发板中) 杜邦线若干(没有的话也可以用普通电线代替,只是用来导电有接口,没有什么特殊性) 手机端Bluetooth Electronics app(去浏览器下载即可)
二、环境搭建
这里笔者用的是ardino开发环境,这也是物联网中用的比较多的一个开发环境,当然对于一个新手小白来说光搭建环境就有些困难,因为不少人无法下载到对应的开发板,这里展开详细的介绍,也会对刚入门的学者有一些帮助。(实则有效哦,不需要梯子也照样可以)
1、进入ardino官网下载软件
https://www.arduino.cc/en/software
目前已经更新到了2.3.0版本了 喜欢老版本的可以下载老版本,这个没有影响
找到对应的版本下载即可,这个没有什么问题就是普通的下载软件
2、配置编译环境
首先需要直接打开安装包进行安装即可,注意安装路径,尽量放在D盘,安装完之后打开软件
当然常规的步骤就是先在文件-首选项中添加网址https://dl.espressif.com/dl/package_esp32_index.json https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
然后找到工具-开发板-开发板管理器
然后打开下载就可以了
当然,一般人可能无法下载成功,会出现以下报错
网上好多博主说,下载旧的版本就可以解决,但是笔者尝试了多次,貌似没什么效果,可能是因为外网的缘故,挂梯子就可以下载了 当然大部分人不会,可以用以下方法(亲测有效)
http://链接: https://pan.baidu.com/s/1QWeZfh5WQeyrTbfsxy4WUw?pwd=cn29 提取码: cn29 复制这段内容后打开百度网盘手机App,操作更方便哦
下载完成后直接打开就可以了,ardino需要退出后重新进入,即可看到所要的开发板(如果采用直接下载文件的话,位置可能无法正确放置,这样最方便快捷)
当然,如果没有对应芯片的驱动,还是无法识别端口的,win11电脑的端口有些被自动隐藏了,就是这样
这时候只要选择显示隐藏设备即可
现在就可以看到端口了
当然,如果没有对应芯片驱动的话,是不会有显示的,有些电脑会自动识别下载,如果不能,需要去对应芯片官网,下载芯片驱动,安装即可,一定要去官网下载,避免被骗!
完成以上全部步骤,我们就算完成了第一步,入门,接下来我们可以尝试第一个点灯程序,如果开发板蓝色灯闪烁,则成功配置
以下是点灯代码
// 引入Arduino核心库 #include <Arduino.h> // 定义LED引脚 #define LED_PIN 2 void setup() { // 将LED引脚设置为输出模式 pinMode(LED_PIN, OUTPUT); } void loop() { // 点亮LED digitalWrite(LED_PIN, HIGH); delay(1000); // 延迟1秒 // 关闭LED digitalWrite(LED_PIN, LOW); delay(1000); // 延迟1秒 }
看到蓝灯亮起,就代表我们环境搭建已经完成了!
三、组装接线
如果用杜邦线的话,接线起来会方便很多,还有就是esp32开发板是不允许两个电源同时供电的,现在还未烧录代码,所以,我们暂时没有给开发板供电,后续装好,如果电压小于3v接3v3和GND引脚,如果大于3v则接vin和GND引脚,切记不能接错,不然很容易会烧坏开发板,
至于轮子什么组装的,可以去b站搜视频看看,都是比较简单的。
四、烧录代码
这里直接给出源代码了:
#include <BluetoothSerial.h> // 定义引脚 #define ENA 13 #define IN1 12 #define IN2 14 #define ENB 27 #define IN3 26 #define IN4 25 BluetoothSerial SerialBT; void setup() { // 初始化串口 Serial.begin(); SerialBT.begin("ESP32_BT"); // 设置蓝牙名称 // 设置引脚模式 pinMode(ENA, OUTPUT); pinMode(IN1, OUTPUT); pinMode(IN2, OUTPUT); pinMode(ENB, OUTPUT); pinMode(IN3, OUTPUT); pinMode(IN4, OUTPUT); } void loop() { if (SerialBT.available()) { // 读取蓝牙模块发送的数据 char command = SerialBT.read(); // 根据接收到的指令控制电机 switch (command) { case 'F': // 正转 digitalWrite(IN1, HIGH); digitalWrite(IN2, LOW); digitalWrite(IN3, HIGH); digitalWrite(IN4, LOW); analogWrite(ENA, 255); // 设置PWM占空比控制电机速度 analogWrite(ENB, 255); break; case 'B': // 反转 digitalWrite(IN1, LOW); digitalWrite(IN2, HIGH); digitalWrite(IN3, LOW); digitalWrite(IN4, HIGH); analogWrite(ENA, 255); analogWrite(ENB, 255); break; case 'L': // 左转 digitalWrite(IN1, LOW); digitalWrite(IN2, HIGH); digitalWrite(IN3, HIGH); digitalWrite(IN4, LOW); analogWrite(ENA, 255); analogWrite(ENB, 255); break; case 'R': // 右转 digitalWrite(IN1, HIGH); digitalWrite(IN2, LOW); digitalWrite(IN3, LOW); digitalWrite(IN4, HIGH); analogWrite(ENA, 255); analogWrite(ENB, 255); break; case 'S': // 停止 digitalWrite(IN1, LOW); digitalWrite(IN2, LOW); digitalWrite(IN3, LOW); digitalWrite(IN4, LOW); analogWrite(ENA, 0); analogWrite(ENB, 0); break; } } }
代码直接粘在ardino软件中,点击上传即可(这里上传完成会有显示,没有蓝灯亮了哦)。
五、手机端Bluetooth Electronics app按键设置
找到添加这些按钮即可,注意每一个按钮要设置参数,前进为F,后退为B,左转为L,右转为 R,注意每个按钮松下即是S,这样按下即走,松开即停
六、连接蓝牙完成
这步需要手机端先找到蓝牙连接上,然后直接点run即可
完成后大概就是这个样子,可以正常跑起来啦,充电宝可以换成其它电源,比如锂电池会更流畅,蓝牙是点对点的控制,有范围,如果要是做远程车,则考虑WiFi模式,不过需要随身WiFi作为WiFi提供,喜欢的话后续会更新的~
哈哈哈,最后觉得有帮助的可以关注一波哦~
今天的文章
arduino蓝牙小车_arduino蓝牙小车分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:http://bianchenghao.cn/80927.html