【做一个STM32麦克拉姆轮小车】用STM32让电机转起来

【做一个STM32麦克拉姆轮小车】用STM32让电机转起来,第1张

#系列目录【从零开始做一个STM32蓝牙小车】

第一章 用驱动模块让电机转起来

提示:这里介绍两个我常用的电机驱动(L298N和TB6612),用这两个常用的电机驱动来让小电机转起来。

在此之前最好是学过一点STM32单片机知识。

本文内容针对于初学者,请大佬勿喷。

本文目录
  • #系列目录【从零开始做一个STM32蓝牙小车】
  • 前言
  • 正文
  • 一、两种常用的电机驱动的简单了解
    • 1. L298N
    • 2.TB6612
  • 二、STM32单片机的代码
    • 1.说明
    • 2.代码部分
    • 3.接线部分
  • 总结


前言

本节学习驱动模块的使用方法,并且让小电机转动起来。

这里介绍两种常用的电机驱动模块,L298N和TB6612。下面会有对着两种驱动模块的简单介绍,另外也附上相关资料的链接,如果看完我的不明白可以点进去链接查看详情。


正文 一、两种常用的电机驱动的简单了解 1. L298N

L298N驱动的说明大概如下,可以对应自己的驱动看看。


IN1,IN2,IN3,IN4依次分别对应OUT1,OUT2,OUT3,OUT4
ENA对应IN1和IN2的使能。
ENB对应IN3和IN4的使能。

用一个电机接线说明: OUT1,OUT2接直流电机电机两根线,IN1,IN2接单片机的两个IO口,驱动供电方面看自己的电源电压而定。小于5V接5V和GND,大于5小于12V接12V和GND。

看不太明白进去链接看看
参考资料:
链接: L298N、电机、单片机的线路连接.
链接: L298N电机驱动模块详解
链接: stm32单片机驱动L298N模块

2.TB6612

这个模块还比较简单,使用也和L298N类似,网上资料挺多的,这里不介绍了,下面附上一个讲的还不错的文章链接。
链接: TB6612使用说明,使用方法,引脚图,实物图

总的来说两个驱动模块使用方式大同小异,会一个的使用其他基本触类旁通了。

二、STM32单片机的代码 1.说明

单片机我用的是stm32f103c8t6,用其他型号单片机同样适用。
实现逻辑为,使能两个IO口,使其分别输出高低电平,来使驱动输出高低电平,从而使电机转动。给驱动的供电电压大小决定了电机转速的快慢。但是不能超过其供电最大值。

2.代码部分
#include "stm32f10x.h"                  // Device header

void Motor_Init(void)// 初始化两个IO口PB12,PB13
{
  GPIO_InitTypeDef GPIO_InitStructure;
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE); 
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_12|GPIO_Pin_13;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;      
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;     
  GPIO_Init(GPIOB, &GPIO_InitStructure);		

  GPIO_ResetBits(GPIOB,GPIO_Pin_12|GPIO_Pin_13);//保证两个IO口开始时为低电平
}
int main()
{
	Motor_Init();//初始化IO口
	while(1)
	{
		GPIO_ResetBits(GPIOB,GPIO_Pin_12);//将PB12置低电平
		GPIO_SetBits(GPIOB,GPIO_Pin_13);//将PB13置高电平
	}
}
3.接线部分

将PB12,PB13分别接在IN1,IN2(或AIN1,AIN2)。
如果正常我们将会看见电机转动。


总结

这里的驱动电机还是比较简单的,主要是对于这些模块的学习,了解其运作机制,便可以成功玩转这些模块了。

接下来将会给电机加上pwm波,用来控制电机转速。如果用这来做一个小风扇就可以调节风力的大小了。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/789824.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-05
下一篇2022-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存