STM32超级蓝牙小车——基于STM32F103C8T6的多功能蓝牙小车(PID循迹、跟踪、有源蜂鸣器播放音乐、蓝牙遥控、AD采集+DMA转运等超多元素小车)

一、项目时间:2023.7.24~11.26

二、实现效果:通过蓝牙控制小车运动与模式转换

                        模式一:循迹模式

                        模式二:跟踪模式

                        模式三:音乐模式

                        模式四:控制运动模式

三、使用模块:

  1. STM32F103C8T6核心板 * 1
  2. L298N电机驱动模块 * 1
  3. TCRT5000L五路红外循迹传感器模块 * 1
  4. DC3V-6V黄色直流减速电机-TT * 4
  5. 锂电池组电源 6V  * 1
  6. OLED屏幕-四针 * 1
  7. DC - DC 12V装3.3v 5v 12v 电源模块
  8. HC-SR04超声波模块
  9. 光敏模块+热敏模块
  10. 八个灯
  11. 蓝牙模块

下面是超级蓝牙小车实物图:

 需要用到的资源如下:

1,车轮:TIM2-CH1,CH2  => PA0,PA1 + PB0,PB1,PB2,PB10,PB11

2,蓝牙:USART-TX,RX => PA9 PA10 

3,超声波:TIM-CH1,CH2 => PA6 PA7

4,OLED:  PB8,PB9

5,ADC+DMA:  PA3,PA4(采集两个数据:温度与光强)

6,舵机:TIM4-CH2  => PB7

7,循迹模块: PA15,PB3~6

8,炫灯

9:蜂鸣器

下面的表格是引脚使用的直观表格

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
PA 1 1 X 5 5 9 3 3 8 2 2 8 8 / / 7
PB 1 1 / 7 7 7 7 6 4 4 1 1 8 8 8

8

四、代码

因为使用到的模块很多,一些基础配置的代码就不放出来了,下面是一些重要部分的代码

1,循迹模块代码 Trailing.c

#include "stm32f10x.h"                  // Device header
#include "delay.h"
#include "Trailing.h"
#include "Motor.h"
#include "PID.h"

int Speed_Begin = 50; //extern 后面需要加上->变量以及变量的类型


/*====================================
函数	:五路循迹模块加权函数
参数	:无
返回值	:返回五路加权的结果
描述	:通过对五路循迹情况进行加权,输出
		 到PID函数作为误差参数,即将数字情
		 况转变为误差。
====================================*/
int Trailing_Speed(void)
{
//	int Flag;
	int Sum,Speed_1;
	Sum = 0;
//	Flag = 0;
	if(LED1==1) Sum=Sum-20;
	if(LED2==1) Sum=Sum-10;
	if(LED3==1) Sum=Sum  ;
	if(LED4==1) Sum=Sum+10;
	if(LED5=
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值