首页 > 编程知识 正文

l298n电机驱动模块驱动直流电机,l298n电机驱动模块连线

时间:2023-05-03 19:35:08 阅读:203024 作者:3998

文章目录 1、驱动模块介绍2、驱动模块的连线方法1)第一种方法(不建议)2)第二种方法(建议)3)第三种方法(不建议) 3、驱动模块的使用方法4、参考代码1)52单片机版本(淘宝提供,需要word文档的可以评论)2)stm8版本(自写) 5、常见问题1)电机不会转动?2)关于ENA和ENB上面的跳线帽要不要拔去?

1、驱动模块介绍

电机驱动模块一般使用的都是L298N作为主控芯片

样子如图所示

当用单片机5V电源给L298N供电驱动5V的小马达时,驱动模块的12V和5V都接单片机的5V(这样可以动,但轮子转动的速度不快,详细查看下面的连接方法)GND一定得接单片机的GND,也就是一定要与单片机共地。
第一排6个排针接单片机的IO口就可以了。其中IN1到IN4为马达逻辑输入,控制其正转和反转。以左边马达为例当IN1=0,IN2=1时为正转。IN1=1,IN2=0时为反转。待机则全为0,刹车则全为1。ENA和ENB为两马达的使能,需要调速的时候就把那两个使能的跳线帽直接拔掉,然后在第一个入口接入一个PWM信号即可。(PWM调速可以参考我的另外一篇文章)

2、驱动模块的连线方法 1)第一种方法(不建议)

12V供电口和5V供电口都接入单片机的5V电压

ps::第一种方法的提高电压较小,轮子转速不足,可能无法进行调速

2)第二种方法(建议)

当接入7~12V电压时,正5V不需要接电压,其可以输出5V的电压供单片机使用。中间那个接单片机的GND。

ps:由于5v供电口可以输出5v的电压,可以直接拿来为单片机供电

3)第三种方法(不建议)

当输入的电压大于12V小于24V时,需要拔掉电源旁的跳线帽,5V端需要接入5v的电压,GND还是接GND。

ps:第三种方法的输入电压较大,PWM调速的时候怕对单片机造成影响,所以我用的是第二种方法

3、驱动模块的使用方法

使用方法:

输出A: 通道A输出 ,连接电机
输出B: 通道B输出 ,连接电机
12V供电: 主电源正极输入
供电GND: 主电源正负极极输入
5V输出: 5v电压输出端,可用于给MCU供电
ENA: 通道A使能 ,pwm信号连接(调速使用)
ENB: 通道B使能 pwm信号连接(调速使用)
IN1~IN4: 逻辑输入IN1 ~ IN2控制通道A,逻辑输入IN3~IN4控制通道B
板载5V跳线帽: 接上后板载5V输出有效

4、参考代码 1)52单片机版本(淘宝提供,需要word文档的可以评论)



2)stm8版本(自写) // 关于电机驱动的宏定义#define RightIN1 PH_ODR_ODR0 //定义为输出量#define RightIN2 PH_ODR_ODR1#define LeftIN1 PH_ODR_ODR2 //定义为输出量#define LeftIN2 PH_ODR_ODR3void Motor_Init(void){ //设置Ph0-3端口为推挽低速输出 PH_DDR_DDR0 = 1; PH_CR1_C10 = 1; PH_CR2_C20 = 0; PH_DDR_DDR1 = 1; PH_CR1_C11 = 1; PH_CR2_C21 = 0; PH_DDR_DDR2 = 1; PH_CR1_C12 = 1; PH_CR2_C22 = 0; PH_DDR_DDR3 = 1; PH_CR1_C13 = 1; PH_CR2_C23 = 0; }//小车左转void Motor_TurnLeft(void){ RightIN1 = 0; RightIN2 = 1; LeftIN1 = 1; LeftIN2 = 1; // delay_ms(2000);}//小车右转void Motor_TurnRight(void){ RightIN1 = 1; RightIN2 = 1; LeftIN1 = 1; LeftIN2 = 0; // delay_ms(2000);}//小车直走void Motor_GoForward(void){ RightIN1 = 0; RightIN2 = 1; LeftIN1 = 1; LeftIN2 = 0; // delay_ms(2000);}//小车倒退void Motor_GetBack(void){ RightIN1 = 1; RightIN2 = 0; LeftIN1 = 0; LeftIN2 = 1; // delay_ms(2000);}void Motor_BeParking(void){ RightIN1 = 1; RightIN2 = 1; LeftIN1 = 1; LeftIN2 = 1;} 5、常见问题 1)电机不会转动?

(1)有响声但是齿轮不转,可能是电压不够,加大电压
(2)接线存在错误,没有与MCU共地等
(3)逻辑端编程错误,没有正确的使能

2)关于ENA和ENB上面的跳线帽要不要拔去?

如果只是需要转动马达就不需拔去,如果需要调试,就需要拔去然后直接接入一个PWM信号

参考链接:
L298N 驱动电机与单片机的线路连接图
L298N模块的连接与使用(stm32驱动与51驱动)

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。