单片机/MCU论坛
直播中

jf_48815865

未满1年用户 3经验值
私信 关注
[文章]

白嫖的CW32小车的蓝牙模式使用教程

  这款CW32L012C8T6作为主控芯片的小车,通过串口和蓝牙连接,这款芯片内部集成3个通用异步收发器(UART),支持异步全双工、同步半双工和单线半双工模式,支持硬件数据流 控和多机通信,还支持 LIN(局域互连网络);可编程数据帧结构,可以通过小数波特率发生器提供宽范围的 波特率选择。内置定时器模块,支持等待超时检测、接收空闲检测、自动波特率检测和通用定时功能。 UART 控制器工作在双时钟域下,允许在深度休眠模式下进行数据的接收,接收完成中断可以唤醒 MCU 回到 运行模式。自带的是一款低功耗蓝牙模块,适用于短距离无线通信。该模块通常被用于各种嵌入式项目,如物联网(IoT)设备、手机配件、智能家居设备、医疗设备等。
  以下是蓝牙模块的一些主要特点和功能:


  • 低功耗: 本模块设计为低能耗,适合电池供电的应用。

  • 蓝牙版本: 支持蓝牙4.0或更高版本,能够与大多数蓝牙设备兼容。

  • 操作范围: 通常具有较好的无线传输距离,适合各种室内外应用。

  • 小尺寸: 模块结构紧凑,便于嵌入到各种设备中。

  • 简单接口: 提供UART、SPI等常用接口,便于与微控制器或其他设备进行连接和通信。

  • 易于配对: 具备快速配对功能,简化了与其他蓝牙设备的连接过程。

  模块图片:

  蓝牙接口在开发板上原理图如下:


  由以上原理图可知,蓝牙模块的通讯协议为串口,接到开发板上的PA2和PA3接口,再查询手册可知PA2,PA3复用功能为USART2,如下图


然后把程序烧录进小车,最后需要对上位机就是手机APP程序配置一下,需要将按键设置上对于的指令,我们打开蓝牙调试器这个程序,点击到按钮控制这个界面,勾选上编辑模式,编辑完成后取消勾选编辑模式。

uint8_t car_state;//当前小车状态0停止 1前进 2后退 3左转 4右转 void blue_data_pro(uint8_t data){        switch (data)         {        case 0xA:                speed=150;        change_speed_flag=1;                        break;        case 0xB:                speed=300;        change_speed_flag=1;                        break;        case 0xC:                speed=450;        change_speed_flag=1;                        break;        case 0xD:                speed=600;        change_speed_flag=1;                        break;        case 0xE:                speed=750;        change_speed_flag=1;                        break;        case 0xF:                speed=900;        change_speed_flag=1;                        break;        case 0x0:                car_state=0;        change_car_state_flag=1;                        break;        case 0x1:                car_state=1;        change_car_state_flag=1;                        break;        case 0x2:                car_state=2;        change_car_state_flag=1;                        break;        case 0x3:                car_state=3;        change_car_state_flag=1;                        break;        case 0x4:                car_state=4;        change_car_state_flag=1;                        break;  }}
通过这段代码我们知道了蓝牙控制的指令,前进、后退、左转、右转、停止对应0X01,0X02,0X03,0X04,0X00,速度也是同样如此,我们把这个指令编辑到这个蓝牙编辑界面中,像这样:

每个按键都编辑好对应的指令,这样蓝牙上位机的配置也配置好了,按照这样的步骤,我很流畅的通过蓝牙遥控上了这款CW32L012小车,整个过程还是很顺利的。


回帖(1)

jf_73923635

2025-11-22 14:24:30
赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞
举报

更多回帖

发帖
×
20
完善资料,
赚取积分