单片机L298N电机驱动板的几种不同电压使用场景

L298N电机驱动版主要由两个核心组件构成

  1. L298N 驱动芯片

  2. 78M05 稳压器

    模块参数:
    请添加图片描述
    模块端口示意图:

请添加图片描述

其中这个板载5V使能的这个跳线帽比较的复杂,其与稳压模块有关

稳压模块能否生效完全取决于5V使能跳帽是否启用(拔掉禁用、插入启用,默认是板载连通的),这里分两种情况,接通和未接通:

板载跳帽:

当电源小于或等于12V时,内部电路由稳压器供电,并且5V引脚作为微控制器供电的输出引脚,即:VCC作为7805的输入,5V是7805的输出,从而可以为板载提供5v电压,为外部电路供电使用
请添加图片描述

拔掉跳帽:

电源大于12V时拔掉跳帽,并且应通过5V端子单独为内部供电,此时5V端为输入。即:VCC不作为7805的输入,而+5v由外部电路提供,此时就需要两个供电电源,VCC和+5V

请添加图片描述

注意事项:

**7V<U<12V:**当使用驱动电压(上图标识为12V,实际可以接受的输入范围是 7-12V)为7V-12V的时候,可以使能板载(就是图中板载5V使能)的5V逻辑供电,当使用板载5V供电之后,接口中的+5V供电不要输入电压,如果强行供电,有可能会烧坏右侧电容,但可以直接5V电压供外部使用,一般引出来直接给开发板供电,比如:Arduino,51单片机

ps:上次我用4节干电池没有驱动起来,原来是电压不够。

**12V<U<=24V:**芯片手册中提出可以支持到35v,但是按照经验一般298保守应用最大电压支持到24V已经很牛了,如果要驱动额定电压为18V的电机,首先必须拔除板载5V输出使能的跳帽,然后在5V输出端口外部接入5V电压对L298N内部逻辑电路供电。

对U的范围进行总结:

U<7V:12V端口输入电压供内部电路使用,缺点是12V输入的电压可能不足导致,电机转速不够

(这一种情况是我自己假设的,U<7V,理论上内部电路依旧是由稳压器供电,)

7V<U<12V:内部电路将由稳压器供电,5V端口为输出,不能强行供电

12V<U<=24V:12V端口输入高电压驱动电机,内部控制电路由外面从5V端口额外输入,板载5V使能跳线帽拔开,VCC不作为7805的输入。

请添加图片描述

电源引脚

VCC 外接直流电源引脚,电压范围在5~35V之间
GND GND是接地引脚,连接到电源负极
5V 驱动芯片内部逻辑供电引脚,如果安装了5V跳帽,则此引脚可输出5V电压,为微控板或其他电路提供电力供给,如果拔掉5V跳帽,则需要独立外接5V电源
请添加图片描述
控制引脚

  1. IN1 & IN2 电机驱动器A的输入引脚,控制电机A转动及旋转角度
    IN1输入高电平HIGH,IN2输入低电平LOW,对应电机A正转
    IN1输入低电平LOW,IN2输入高电平HIGH,对应电机A反转
    IN1、IN2同时输入高电平HIGH或低电平LOW,对应电机A停止转动
    调速就是改变IN1、IN2高电平的占空比(需拔掉ENA处跳帽)

  2. IN3 & IN4 电机驱动器B的输入引脚,控制电机B转动及旋转角度
    IN3输入高电平HIGH,IN4输入低电平LOW,对应电机B正转
    IN3输入低电平LOW,IN4输入高电平HIGH,对应电机B反转
    IN3、IN4同时输入高电平HIGH或低电平LOW,对应电机B停止转动
    调速就是改变IN3、IN4高电平的占空比(需拔掉ENB处跳帽)

输出引脚

  1. OUT1 & OUT2 电机驱动器A的输出引脚,接直流电机A或步进电机的A+和A-
  2. OUT3 & OUT3 电机驱动器B的输出引脚,接直流电机B或步进电机的B+和B-

调速控制引脚

  1. ENA 电机A调速开关引脚,拔掉跳帽,使用PWM对电机A调速,插上电机A高速运行(占空比100%)
  2. ENB 电机B调速开关引脚,拔掉跳帽,使用PWM对电机B调速,插上电机B高速运行(占空比100%)

关于电机调速这块

采用PWM调速,其原理是就是开关管在一个周期内电的导通时间为t,周期T内,则电机两端的平均电压U=Vcc*(t/T)=a Vcc。其中a=t/T,也称占空比,Vcc是电源电压,电机的转速与电机两端的电压成正比,而电机两端的电压与控制波形的占空比成正比,因此电机的速度与占空比成比例,占空比越大,电机转速越快,详细可看文末:电机驱动原理调速PWM。

官方示例源码:
#include<reg52.h>
sbit IN1=P1^0;
sbit IN2=P1^1;
sbit ENA=P1^2;
void delay(unsigned int z);
void delay_us(unsigned int aa);
/*******************Ö÷º¯Êý**************************/
void main()
{
	while(1)
	{	
/******************°´Ò»¶¨Õ¼¿Õ±Èת¶¯************************/
//ת¶¯ÖÜÆÚΪ20		
		unsigned int i,cycle=0,T=2048;
		IN1=1;      //Õýת
		IN2=0;
		for(i=0;i<200;i++)
		{
			delay(10);//PWMÕ¼¿Õ±ÈΪ50%£¬ÐÞ¸ÄÑÓʱµ÷ÕûPWMÂö³å
			ENA=~ENA;
		}
//ת¶¯ÖÜÆÚΪ40
		IN1=0;      //·´×ª
		IN2=1;
		for(i=0;i<100;i++)
		{
			delay(20);//PWMÕ¼¿Õ±ÈΪ50%£¬ÐÞ¸ÄÑÓʱµ÷ÕûPWMÂö³å
			ENA=~ENA;
		}
		
/******************×Ô¶¯¼ÓËÙÕýת************************/		
//ÿ¸öPWMÖÜÆÚΪ2048us
		IN1=1;     
		IN2=0;
		while(cycle!=T)
		{	ENA=1;
			delay_us(cycle++);
			ENA=0;
			delay_us(T-cycle);
		
		}
		IN1=0;     //×Ô¶¯¼õËÙ·´×ª
		IN2=1;
		while(cycle!=T)
		{	ENA=1;
			delay_us(cycle++);
			ENA=0;
			delay_us(T-cycle);
		
		}
	}		
}
/******************zÃëÑÓʱº¯Êý*************************/
void delay(unsigned int z)
{
	unsigned int x,y;
	for(x=z;x>0;x--)
		for(y=110;y>0;y--);
}
/****************΢ÃîÑÓʱ******************************/
void delay_us(unsigned int aa)
{
	while(aa--);	
}

参考博文:
想看更加详细L298N芯片说明,点击这里

  • 12
    点赞
  • 73
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
### 回答1: 51单片机可以使用L298N驱动芯片来驱动直流电机。L298N是一种双路H桥驱动芯片,可以控制两个直流电机的正反转和速度。在使用时,需要将51单片机的IO口与L298N的控制引脚相连,通过控制IO口输出的高低电平来控制直流电机的运动。同时,还需要将直流电机的电源与L298N的电源引脚相连,以提供足够的电流和电压给直流电机驱动。 ### 回答2: 51单片机常常用于各种控制系统中,在很多设备中,为了实现一些基本的动力驱动操作,需要使用电机来完成。在这样的情况下,L298N成为了一件非常重要的设备,通过L298N能够完成直流电机的驱动操作。 L298N是一款集成电路芯片,用于直流电机驱动,它是由意大利ST公司生产的。它可以使直流电机具有正转、反转、制动、慢启动等各种功能,能够在一定程度上保护电机,延长电机寿命。 在51单片机使用L298N驱动直流电机时,需要将L298N连接到几个需要控制的IO口上,根据不同的操作需求来设置对应的IO口的电平值,从而实现对电机的驱动控制。当需要实现正转时,设置IN1电平为高,IN2电平为低,当需要反转时,设置IN1电平为低,IN2电平为高。 此外,在使用L298N驱动直流电机时,还需要注意一些细节问题。首先是需要注意L298N的电源供电问题,因为它需要一个5V的电源供电。其次,需要注意当前直流电机的工作电压,以及L298N的最大输出电流。因为超过最大输出电流时,可能会对L298N发热有影响,所以需要合理设置电机的使用参数,从而保证L298N的安全性和可靠性。 总的来说,使用L298N驱动直流电机是51单片机控制系统中非常重要的一个部分,它可以为各种设备提供强有力的动力支持,从而能够更加稳定地运行和使用。因此,在使用51单片机设计各种控制系统时,需要充分考虑L298N和直流电机的使用情况,并合理设置各项参数,以确保整个系统的稳定性和可靠性。 ### 回答3: 51单片机是一种应用广泛的单片机,广泛应用于各种嵌入式系统中。在实际应用中,驱动直流电机是51单片机的常见应用之一。为了实现高效稳定的驱动,往往需要使用外部电机驱动模块,比如l298n驱动模块。 l298n驱动模块是一种能够提供高电流输出的电机驱动模块。它可以通过51单片机的IO口来控制直流电机的运动,使直流电机能够按照程序要求进行步进运动、转动等操作。在使用l298n驱动模块时,需要将其与51单片机进行连接,然后通过调整IO口的电平来实现直流电机的驱动。 l298n驱动模块通常有两个输入端子(IN1、IN2)和两个输出端子(OUT1、OUT2)。通过调整这些输入和输出端子的电平,可以实现直流电机的正反转和调速控制。具体来说,当IN1为高电平,IN2为低电平时,电机正转;当IN1为低电平,IN2为高电平时,电机反转;当IN1、IN2均为低电平时,电机停止运动。通过调节IN1、IN2电平的高低程度,可以实现电机的不同转速。需要注意的是,直流电机在驱动时需要考虑电机的自感现象,加入了保护二极管D1-D4后,可以防止出现反电势导致的电压峰值超过超过驱动器范围。 综上所述,51单片机通过l298n驱动模块可以实现对直流电机的高效、稳定、精确的驱动控制。这种驱动方法应用广泛,是现代工业、机械、家电等领域不可或缺的关键技术。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值