(优作)基于STM32蓝牙控制小车系统设计(硬件+源代码+论文)竞赛作品

基于STM32蓝牙控制小车系统设计(硬件+源代码+论文)竞赛作品

        基于意法半导体与ARM公司生产的STM32F4 DISCOVERY开发板的集电机驱动模块、电源管理模块、stm32f4主控模块、蓝牙串口通信模块、android控制端模块。电机驱动模块使用了两个L298N芯片来驱动4路电机,使能端连接4路来自主控板的PWM波信号,8个输入端接主控板的8个输出端口;电源管理模块使用了LM2940-5.0芯片进行12V到5V的转换,12V用于电机模块的供电,5V用于蓝牙模块、传感器等的供电;主控模块采用了MDK编辑程序,然后下载到主控板,实现硬件与软件的交互;蓝牙串口通信模块则是采用了FBT06_LPDB针插蓝牙模块,与主控板进行串口通信,同时与android手机进行通信;android控制端模块是一个集开启蓝牙、搜索蓝牙、控制小车等功能。用户可以通过android控制端进行控制小车的运动,实现一些用户需要的功能和服务。

设置电机转向程序
改程序将电机驱动模块的8个输入端口接到了主控板的8个GPIO口,通过推挽输出,从而控制电机的转向,代码如下:


void Direction(int direction)
{
SysTick_Config(SystemCoreClock / 1000); //时钟中断设为1ms
 	RCC->AHB1ENR |= 0x00000005; //使能GPIOA和GPIOD时钟
    RCC->APB2ENR |= (1<<14);  //使能syscfg时钟
if(direction==0)
{
   GPIOA->MODER &= 0xffff0000; //设置PA0,1,2,3为输出
   GPIOA->MODER |= 0x00005555; 
   GPIOA->OTYPER &= 0xFFFFff00; //设置PA0,1,2,3为推挽输出
   GPIOA->OSPEEDR &= 0xffff0000; //设置PA0,1,2,3的输出速度为100M
   GPIOA->OSPEEDR |= 0x0000ffff;
   SYSCFG->CMPCR = 0x00000001; //使用IO补偿单元
   GPIOA->PUPDR &= 0xffffff00;  //设置PA0,1,2,3无上拉,无下拉
   GPIOA->BSRRH = 0x00ff;  //复位GPIOA_BSRRH寄存器
   GPIOA->BSRRL = 0x0055;		
	 }
	else
	{
GPIOA->MODER &= 0xffff0000; //设置PA0,1,2,3为输出
   GPIOA->MODER |= 0x0000005555; 
   GPIOA->OTYPER &= 0xFFFFff00; //设置PA0,1,2,3为推挽输出
   GPIOA->OSPEEDR &= 0xffff0000; //设置PA0,1,2,3的输出速度为100M
   GPIOA->OSPEEDR |= 0x0000ffff;
   SYSCFG->CMPCR = 0x00000001; //使用IO补偿单元
   GPIOA->PUPDR &= 0xffffff00;  //设置PA0,1,2,3无上拉,无下拉
   GPIOA->BSRRH = 0x00ff;  //复位GPIOA_BSRRH寄存器
   GPIOA->BSRRL = 0x00AA;
}

成果展示:

资料下载:

相关推荐

  1. 基于STM32的寻迹小车设计详细论文

    2024-05-09 10:50:10       15 阅读
  2. 基于STM32 单片机智能台灯控制系统设计

    2024-05-09 10:50:10       25 阅读
  3. 基于STM32的智能家居控制系统设计方案

    2024-05-09 10:50:10       13 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-05-09 10:50:10       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-05-09 10:50:10       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-05-09 10:50:10       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-05-09 10:50:10       18 阅读

热门阅读

  1. python通过ssh远程打开windows的浏览器,不显示页面

    2024-05-09 10:50:10       13 阅读
  2. spark history server异常

    2024-05-09 10:50:10       13 阅读
  3. MQTT对比HTTP

    2024-05-09 10:50:10       11 阅读
  4. 中移物联网24届春招Offer笔面经

    2024-05-09 10:50:10       8 阅读
  5. 【c++实现获取web信息】

    2024-05-09 10:50:10       9 阅读
  6. 深度学习算法集成部署

    2024-05-09 10:50:10       9 阅读
  7. python基础 面向练习学习python1

    2024-05-09 10:50:10       10 阅读
  8. Django中如何使用WebSocket实时更新数据?

    2024-05-09 10:50:10       8 阅读