aruino四轮蓝牙小车控制
首先需要配置蓝牙
两种蓝牙AT指令配置方法:
1、与USB转TTL相连后接入电脑,将波特率设置成9600,模块指示灯快闪,这时再按下模块的按钮便进入AT模式,这时打开串口助手,输入AT指令再回车就可以发送AT指令了。
2、与USB转TTL相连后接入电脑,将电源线断开一根,长按模块按钮,上电,然后松手,模块的指示灯慢闪,将波特率设置为38400便进入AT模式,打开串口助手,输入AT指令再回车就可以发送AT指令了。
文末附AT指令 集合
设备连接图如下
主要代码:
1、在上传代码之前,您必须安装必要的库
2、在点击编译上传按钮之前断开蓝牙模块的连接,否则您将收到编译错误消息。
3、安装AFMotor Library库方法: https://learn.adafruit.com/adafruit-motor-shield/library-install
4、下载完库之后打开 Arduino IDE >> go to sketch >> Include Libray >> ADD. ZIP Libray >> Select the downloaded ZIP File >> Open it >> Done
5、库安装成功后,您可以毫无问题地上传代码,但在上传代码时请确保蓝牙模块未与Arduino连接
#include <AFMotor.h>//车轮控制定义
AF_DCMotor motor1(1, MOTOR12_1KHZ);
AF_DCMotor motor2(2, MOTOR12_1KHZ);
AF_DCMotor motor3(3, MOTOR34_1KHZ);
AF_DCMotor motor4(4, MOTOR34_1KHZ);char command; void setup()
{ Serial.begin(9600); //设置蓝牙波特率void loop(){if(Serial.available() > 0){ command = Serial.read(); Stop(); //initialize with motors stoped//Change pin mode only if new command is different from previous. //Serial.println(command);switch(command){case '1': //前进forward();break;case '2': //后退back();break;case '3': //向左left();break;case '4'://向右right();break;}}
}void forward()//前进
{motor1.setSpeed(255); //定义差速motor1.run(FORWARD); motor2.setSpeed(255); motor2.run(FORWARD); motor3.setSpeed(255);motor3.run(FORWARD); motor4.setSpeed(255);motor4.run(FORWARD);
}void back()//后退
{motor1.setSpeed(255); //定义差速motor1.run(BACKWARD); motor2.setSpeed(255); motor2.run(BACKWARD); motor3.setSpeed(255); motor3.run(BACKWARD); motor4.setSpeed(255); motor4.run(BACKWARD);
}void left()//向左
{motor1.setSpeed(255);//定义差速motor1.run(BACKWARD); motor2.setSpeed(255); motor2.run(BACKWARD); motor3.setSpeed(255); motor3.run(FORWARD); motor4.setSpeed(255); motor4.run(FORWARD);
}void right()//向右
{motor1.setSpeed(255); //定义差速motor1.run(FORWARD); motor2.setSpeed(255); motor2.run(FORWARD); motor3.setSpeed(255); motor3.run(BACKWARD); motor4.setSpeed(255); motor4.run(BACKWARD);
} void Stop()//停止
{motor1.setSpeed(0); //速度为零停止motor1.run(RELEASE); motor2.setSpeed(0); motor2.run(RELEASE); motor3.setSpeed(0); motor3.run(RELEASE);motor4.setSpeed(0); motor4.run(RELEASE);
}
AT指令集合
指令 | 功能 | 响应 |
AT | 识别是否进入AT模式 | OK |
AT+NAME / AT+NAME=< param > | 询问名字 / 设置名字 | +NAME:< param >OK |
AT+RNAME?< param1> | 获取远程蓝牙设备名称: |
1、+NAME:< param2> OK 2、FAIL |
AT+PSWD / AT+PSWD=< param > | 询问密码 / 设置密码 | +PSWD:2333OK |
AT+UART /AT+UART=< param > < param >< param > |
询问波特率/设置波特率 (默认9600,0,0) |
+UART:< param> < param >< param >OK |
AT+ROLE/AT+ROLE=< param > |
询问主从模式/设置主从模式 (返回值:0从;1主) |
+ROLE:< param>OK |
AT+ADDR/AT+ADDR=< param > | 询问/更改模块地址 | +ADDR:< param>OK |
AT+RMAAD | 清除配对列表 | OK |
AT+RESET | 复位(重启) | OK |
AT+ORGL | 恢复默认状态 | OK |
AT+ IAC? | 询问访问码 | +IAC: < param>OK |
AT+CMODE/AT+CMODE=< param> |
询问/设置连接方式 (0:指定蓝牙地址连接 1:任何蓝牙地址连接 2:回环角色) |
+ CMODE:< param>OK |
AT+PMSAD=< param> |
从蓝牙配对列表中 删除指定认证设备 |
OK |
AT+STATE | 询问蓝牙工作状态 | + STATE: < param> OK |
AT+VERSION? | 获取软件版本号 | +VERSION:< param>OK |
AT+INQ |
询问蓝牙设备 (蓝牙地址 设备类 信号强) |
+INQ: < param1>, < param2> <param3>OK |
AT+INQC | 取消查询蓝牙设备 | OK |
AT+ENSNIFF=< param> | 进入节能模式 | OK |
AT+EXSNIFF=< param> | 退出节能模式 | OK |
AT+LINK=< param> | 设备连接 |
OK/FAIL; Param: 远程设备蓝牙地址 |
AT+DISC | 断开连接 |
1、+DISC:SUCCESS OK; 2、+DISC:LINK_LOSS OK; 3、+DISC:NO_SLC OK; 4、+DISC:TIMEOUT OK; 5、+DISC:ERROR OK |
AT+PAIR=< param1>,< param2> | 设备配对 |
1、OK——成功; 2、FAIL——失败 Param1: 远程设备蓝牙地址; Param2:连接超时(秒) |
AT+INIT | 初始化 SPP规范库 | 1、OK——成功;2、FAIL——失败 |
AT+MRAD? | 获取最近使用过的蓝牙认证设备地址 |
+ MRAD :< param> OK ; Param:最近使用过的蓝牙设备地址 |
AT+ADCN? | 获取蓝牙配对列表中认证设备数 |
+ADCN:< param> OK; Param:配对列表中蓝牙设备数 |
AT+FSAD=< param> | 从蓝牙配对列表中查找指定的认证设备 | 1、OK——成功 2、FAIL——失败 |
AT+RMAAD | 从蓝牙配对列表中删除所有认证设备 | OK |
AT+SENM=< param>, < param2>,AT+ SENM? |
设置/查询安全、加密模式 |
1、OK——成功 2、FAIL——失败 + SENM: < param>,< param2>,OK |
AT+SNIFF=< Param1>, < Param2>,< Param3>, < Param4> / AT+IPSCAN? |
设置/查询—SHIFF节能参数 |
OK +SNIFF: < Param1> , < Param2> ,< Param3> < Param4> |
AT+MPIO? | 查询 PIO端口输入 | +MPIO:< Param> OK |
AT+PIO=< Param1>,< Param2> | 设置 PIO 单端口输出 | OK |
AT+MPIO=< Param> | 设置 PIO 多端口输出 | OK |
AT+BIND=< Param>/AT+ BIND? | 设置/查询—绑定蓝牙地址 | OK + BIND:< param> OK |
aruino四轮蓝牙小车控制相关推荐
- 基于MSP432P401R的串口屏蓝牙小车控制
目录 前言 一.串口屏蓝牙助手设计 二.keil5代码设计 1.main.c 2.串口1中断程序 总结 前言 前段时间兴趣使然用串口屏做了个基于MSP432蓝牙串口屏控制的小车车,现在记录一下,话不多 ...
- 个人项目 小跟班——蓝牙小车控制(UI篇)
1 功能需求及技术可行性分析 预期实现一个应用--小跟班,它可以通过蓝牙与小车相连并对小车进行控制.本应用的主要功能有: 1 搜索蓝牙设备,取消搜索蓝牙设备 2 连接蓝牙设备,断开连接 3 对连接的蓝 ...
- arduino 蓝牙 android 小车,arduino智能蓝牙小车
大家好!这是小编第二次做小项目~ 小编目前专业是电气自动化的,不搞点硬件方面的东西,不学点控制技术,有点对不起自己所学的专业. 小编这次打算做arduino多功能智能小车~ 首先,为啥选择arduin ...
- Arduino实现两个HC-05蓝牙模块控制蓝牙小车
特此声明,本文所有内容是在参考以下链接的基础上整理并开发的,所有代码均验证无误.如果你想使用或者发表,请您声明出处. 一,实验目的. 本文使用两个Arduino UNO板子,两个HC-05,分别作为主 ...
- APP Invertor 制作BLE蓝牙APP 控制esp32蓝牙小车
APP Invertor蓝牙小车制作 1.插件下载 1.1.导入插件 2.APP界面展示 2.1 .可视化编程 3.esp32 蓝牙代码 4.实测效果 4.1 APP控制端 4.2 蓝牙接收端 经 ...
- 69、基于STM32单片机智能两轮双轮自平衡小车 蓝牙app控制系统设计
毕设帮助.开题指导.技术解答(有偿)见文末. 目录 摘要 一.硬件方案 二.设计功能 三.实物图 四.原理图 五.程序源码 六.资料包括 摘要 目前,国内市场上的平衡车琳琅满目,但多数功能单一, 价格 ...
- 蓝牙控制小车c语言程序,手把手教你做蓝牙小车(一)
第1节 选择Arduino开发板 1.1 Arduino是什么 对Arduino,官方有一堆解释. 作为一个软件程序猿,在我眼里,Arduino是学习"可怕硬件"的一个便捷通道.它 ...
- Arduino智能小车——蓝牙小车
Arduino智能小车--蓝牙小车 Arduino智能小车系列教程时空门: Arduino智能小车--拼装篇 点击跳转 Arduino智能小车--测试篇 点击跳转 Arduino智能小车--调速篇 点 ...
- 51单片机智能蓝牙小车
作为大一电子小趴菜,在和队友学习制作蓝牙小车过程中遇到了许多困难.本文既为大家避坑,也作为团队总结. 这篇文章分为两部分 1,组装篇 2,代码篇 思维导图: 组装篇 先准备好一块电源拓展板,用于为电机 ...
- 2个红外传感器循迹原理_8个蓝牙小车的设计方案
蓝牙技术是一种无线数据和语音通信开放的全球规范,它是基于低成本的近距离无线连接,为固定和移动设备建立通信环境的一种特殊的近距离无线技术连接.当蓝牙邂逅智能车会摩擦出怎样的作品呢,整理了8个蓝牙小车的设 ...
最新文章
- Linux新增开放端口
- qt5编程入门 第2版_2小时入门SparkSQL编程
- CS中常用转义符与@符号的作用
- 有了malloc/free,为什么还要new/delete?
- MySQL(五)汇总和分组数据
- Qt在linux下无法输入中文,Ubuntu使用集成开发环境QT无法输入中文的解决方法
- php 在函数里打开链接,JavaScript中打开链接的几种方法介绍
- python应用领域介绍
- 《spring-boot学习》-06-thymeleaf详解
- 最常见的5个导致节点重新启动、驱逐或 CRS 意外重启的问题
- as3通用三方库大全
- AcWing 91. 最短Hamilton路径(状态压缩DP+哈密顿回路)
- 海军装备、舰船电子设备|环境可靠性试验|GJB150A\GJB4
- 产品01]-产品经理初步认知-产品经理定义/职责/分类
- 微信开发者工具 wxmi修改模版颜色_小白变大师试试免费设计工具:adaptiff
- 基于C语言通讯录管理系统编程设计
- sql根据身份证号获取年龄和性别(Oracle+hive)
- 网易云自动签到云函数【详细版】-2022.5.4
- Oracle EBS 笔记8
- 什么是 make 和 makefile
热门文章
- 北京大学计算机学硕考研分数线,2020北京大学研究生分数线汇总(含2016-2020历年复试)...
- pci 1751 java_PCI-1751快速安装使用手册.PDF
- 直播视频秒开及视频优化
- python人机猜拳随机,python实现人机猜拳小游戏
- 两个tplink路由器有线桥接_新版TP-Link路由器有线桥接怎么设置?
- 学习python应用,初识python怎样的感受?
- Windows10服务优化
- Meta元宇宙副总裁离职了...『Go语言圣经』终于汉化啦;德云社失业警告!AI要说相声了;一键就能AI绘图的网站;前沿论文 | ShowMeAI资讯日报
- 形容人的内核是什么意思_cpu核数是什么意思
- 什么是IT人员外包?