1. 项目概述与硬件选型
大家好,今天我来分享一个超实用的STM32智能小车项目,将蓝牙遥控和超声波避障功能完美整合在一起。我自己做过好几个版本的小车,这个方案是目前最稳定、功能最全面的,特别适合想要进阶学习的开发者。
先说说为什么要做这个一体化设计。单纯做蓝牙遥控或者单纯做避障都不难,但把两者结合起来就涉及到多任务调度和优先级处理的问题。比如你正用手机遥控小车前进,突然前面出现障碍物,这时候小车需要自动刹车并转向,然后再恢复遥控控制——这个过程需要很精细的设计。
核心硬件清单:
- 主控芯片:STM32F103C8T6(蓝色pill开发板,性价比高)
- 蓝牙模块:HC-05(经典稳定,容易配对)
- 超声波模块:HC-SR04(便宜又好用)
- 电机驱动:L298N双H桥模块
- 电源:18650电池组(7.4V输出)
- 电机:TT马达带减速箱(扭力足够)
- 车体:亚克力四轮底盘
这里有个小技巧:选HC-05蓝牙模块时,最好买那种带底板和电平转换的版本,这样直接接3.3V就能用,不用自己折腾电平转换电路。超声波模块的触发信号线最好加个100欧的电阻,防止信号过冲。
2. 硬件连接详解
硬件连接是项目的基础,接错了后面调试会很头疼。我第一次做的时候就因为线接反了,电机转方向完全不对,折腾了好久。
核心连接示意图:
STM32与L298N连接:
PA8 -> IN1(左电机方向1)
PA9 -> IN2(左电机方向2)
PA10 -> IN3(右电机方向1)
PA11 -> IN4(右电机方向2)
5V -> +5V(使能L298N逻辑电路)
GND -> GND(共地很重要!)
蓝牙模块连接:
PA2 -> HC-05 TX(STM32接收)
PA3 -> HC-05 RX(STM32发送)
3.3V -> VCC
GND -> GND
超声波模块连接:
PB0 -> Trig(触发测距)
PB1 -> Echo(回波接收)
5V -> VCC
GND -> GND
电源部分要特别注意:电机驱动的电源和STM32的电源最好分开供电,我用的是两节18650电池串联得到7.4V,一路给L298N的电机电源输入,另一路通过降压模块降到5V给STM32和各个传感器供电。如果全部共用一套电源,电机启动时的电流波动可能会让STM32复位。
3. 开发环境搭建
我习惯用STM32CubeIDE,因为它整合了STM32CubeMX和开发环境,配置外设特别方便。对于初学者来说,比纯手写寄存器要友好得多。
环境配置步骤:
- 安装STM32CubeIDE(官网免费下载)
- 创建新工程,选择STM32F103C8Tx
- 配置系统时钟:72MHz(最大化性能)
- 配置调试口:Serial Wire(SWD下载调试)
关键外设配置:
- USART2:蓝牙串口,波特率9600
- TIM1:四通道PWM输出,控制电机速度
- TIM3:输入捕获,测量超声波
237



被折叠的 条评论
为什么被折叠?



