最近没事,用Qt写了一个蓝牙遥控器,效果还可以,贴出来给大家看看。
软件app(BlueCar):
双击app进入蓝牙连接界面,找到蓝牙串口模块HC-06,点中双击:
等待5秒钟,然后提示连接成功连接。
点击ok,进入控制界面:
接下来单独介绍控制界面:
上面图中,左右两边红框区域是控制运动的按钮,前进,后退,左转,右转,原地左转,原地右转。点击这些按钮可以通过蓝牙发送响应的16进制指令,发送的16进制指令会实时显示在输出命令显示区域
打开串口调试工具,测试一下实物通信。(我采用了蓝牙模块HC-06连接USB转串口模块)
串口数据接收区显示的内容就是点击软件控制按钮后,发送过来的。
还可以通过串口数据助手发送特殊字符串数据给app,控制app上指示灯的亮灭。应用场景比如障碍感应提示。也可以发送其它自定义命令,比如可以实时显示小车速度啥的。
通信命令集协议:
blueCar下发消息数据格式定义
名字 | Header | Command | Length | Payload | Cheacksum |
大小 | 1字节 | 1字节 | 1字节 | N字节 | 1字节 |
说明 | 标识符 | 指令/应答类型 | 数据长度 | 数据 | 校验和 |
Command:
0x68: 下发指令
指令下发(blueCar下发指令给接收端)
Commands:
01: 运行模式
自动: 68 01 01 01 6B
手动: 68 01 01 00 6A
02前进:68 02 00 6A
03后退:68 03 00 6B
04左转: 68 04 00 6C
05:右转:68 05 00 6D
06:原地逆时针旋转:68 06 00 6E
07:原地顺时针旋转:68 07 00 6F
08: 射击:68 08 00 70
09:喇叭:68 09 00 71
10:功能键_1:68 0A 00 72
11:功能键_2:68 0B 00 73
12:功能键_3: 68 0C 00 74
13:功能键_4: 68 0D 00 75
18:速度设置:68 0E 04 XX XX XX XX Checksum
停止运动:68 0F 00 77
指令接收(接收端发送数据给blueCar,blueCar将状态或数据显示出来)
控制LED: “$”+“ 消息”+“#”
14:指示灯_1:
亮: “$0101#”
灭: “““$0100#”
15:指示灯_2:
亮: “$0201#”
灭: “$0200#”
16:指示灯_3:
亮: “$0301#”
灭: “$0300#”
17:指示灯_4:
亮: “$0401#”
灭: “$0400#”
其它显示: 直接发送字符串
软件下载连接:https://download.csdn.net/download/hs977986979/12804515
欢迎大家一起交流学习QQ:2284108152