51单片机控制(按键)2相步进电机 L298N驱动
L298N的详细资料驱动直流电机和步进电机

L298N的详细资料驱动直流电机和步进电机电机驱动电路;电机转速控制电路(PWM信号)主要采用L298N,通过单片机的I/O输入改变芯片控制端的电平,即可以对电机进行正反转,停止的操作,输入引脚与输出引脚的逻辑关系图为驱动原理图--------------------------------------------------------L298N电机驱动模块图•••1.1 实物图••1.2 原理图•••1.3 各种电机实物接线图•••1.4 各种电机原理图•••1.5 模块接口说明•••L298N电机驱动模块图1.1 实物图正面背面1.2 原理图1.3 各种电机实物接线图直流电机实物接线图4相步进电机实物接线图3相步进电机实物接线图1.4各种电机原理图直流电机原理图步进电机原理图1.5 模块接口说明+5V:芯片电压5V。
VCC:电机电压,最大可接50V。
GND:共地接法。
A-~D-:输出端,接电机。
A~D+ :为步进电机公共端,模块上接了VCC。
EN1、EN2:高电平有效,EN1、EN2分别为IN1和IN2、IN3和IN4的使能端。
IN1~ IN4:输入端,输入端电平和输出端电平是对应的。
1和15和8引脚直接接地,4管脚VS接2.5到46的电压,它是用来驱动电机的,9引脚是用来接4.5到7V的电压的,它是用来驱动L298芯片的,记住,L298需要从外部接两个电压,一个是给电机的,另一个给L298芯片的6和11引脚是它的使能端,一个使能端控制一个电机,至于那个控制那个你自己焊接,你可以把它理解为总开关,只有当它们都是高电平的时候两个电机才有可能工作,5,7,10,12是298的信号输入端和单片机的IO口相连,2,3,13,14是输出端,输入5和7控制输出2和3, 输入的10,12控制输出的13,14L298N型驱动器的原理及应用L298N是SGS公司的产品,内部包含4通道逻辑驱动电路。
是一种二相和四相电机的专用驱动器,即内含二个H桥的高电压大电流双全桥式驱动器,接收标准TTL逻辑电平信号,可驱动46V、2A以下的电机。
l298n驱动电路

L298N驱动电路简介L298N是一种高性能集成双全桥驱动器,常用于控制直流电机的转速和方向。
该驱动电路具有简单可靠、驱动能力强等优点,因此在机器人、智能车、航模等领域得到广泛应用。
本文将介绍L298N驱动电路的原理、使用方法以及常见问题解答,帮助读者更好地了解和使用L298N驱动电路。
原理L298N驱动电路基于H桥电路的原理,通过控制四个电流驱动管的导通和截止来控制电机的转向和转速。
H桥电路由四个电流驱动管组成,分为上半桥和下半桥,其中上半桥控制电机的正转,下半桥控制电机的反转。
L298N驱动电路采用常见的电机驱动架构,由两个H桥电路组成,可以同时驱动两台电机。
通过控制输入引脚的电平,可以实现电机的正转、反转、停止以及速度调节等功能。
使用方法连接电路图首先,将L298N驱动电路与电机正确连接。
电机应连接到OUT1、OUT2和OUT3、OUT4引脚上,根据电机的类型和需求,可以选择串或并联连接。
电机的正负极需连接正确,否则电机将无法正常工作。
根据需求,将输入信号引脚IN1、IN2连接到微控制器或其他信号源上。
IN1和IN2引脚用于控制电机的转向,通过改变IN1和IN2的电平状态可以控制电机的正转、反转和停止。
若需控制第二台电机,重复上述步骤,将电机连接到OUT3、OUT4引脚,IN3、IN4引脚连接到相应的信号源。
控制电路图接下来,通过控制输入信号引脚的电平,可以实现电机的不同工作状态。
•控制电机正转:将IN1引脚置高电平(5V),IN2引脚置低电平(0V)。
•控制电机反转:将IN1引脚置低电平(0V),IN2引脚置高电平(5V)。
•控制电机停止:将IN1和IN2引脚同时置低电平(0V)或置高电平(5V)。
根据需要,可以通过PWM调节控制电机的转速。
通过改变PWM信号的占空比,可以控制电机的转速和功率。
常见问题解答以下是一些关于L298N驱动电路的常见问题解答:1. L298N驱动电路最大电流是多少?L298N驱动电路的最大电流是2A。
l298n电机驱动直流电机各种程序

{
if(!KEY1)
{
delay(10000);
if(!KEY1)
{
PWM_Num++;
if(PWM_Num==4)PWM_Num=0;
switch(PWM_Num){
case 0:P1=0xFE;PWM_ON=0;break;//高电平时长
case 1:P1=0xFD;PWM_ON=4;break;
}
void main(void)
{
delay(1000);
delay(1000);
INPUT1=1;
INPUT2=0;
INPUT3=1;
INPUT4=0;
TH0 = 0xF4;
TL0 = 0x48;
TH1 = 0xF4;
TL1 = 0x48;
TMOD = 0x11;
TR0 = 1;
TR1 = 1;
ET0 = 1;
{
static char stepFlag;
TR0=0;
if(stepFlag==1)
{
TL0=pwm_H;
TH0=pwm_H>>8;
EN1=0;//电机1不使能
EN2=0;//电机2不使能
stepFlag=0;
}
else
{
TL0=pwm_L;
TH0=pwm_L>>8;
EN1=1;//电机1使能
EN2=1;//电机2使能
(1)
#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
sbit INPUT1 = P2^3; //控制口
【C语言学习】51单片机L298N驱动电机调速

【C语言学习】51单片机L298N驱动电机调速51单片机L298N驱动电机调速//=============L298N端口定义===============sbit ENA = P3^6; //左轮驱动使能sbit IN1 = P0^3; //左轮黑线(-)sbit IN2 = P0^4; //左轮红线(+)sbit IN3 = P0^5; //右轮红线(-)sbit IN4 = P0^6; //右轮黑线(+)sbit ENB = P3^7; //右轮驱动使能//=============PWM================#define PWM_COUST 100 //PWM细分等份uchar MOTO_speed1; //左边电机转速uchar MOTO_speed2; //右边电机转速uchar PWM_abs1; //左边电机取绝对值后占空比uchar PWM_abs2; //左边电机取绝对值后占空比uchar PWM_var1=20; //左边电机直走速度(不同的电机,此参数不同)uchar PWM_var2=20; //右边电机直走速度uchar PWMAnd = 0; //PWM自增变量void motor(char speed1,char speed2){//==============左边电机=============if (speed1>0){IN1 =0;IN2 =1;//正转}else if (speed1<0){IN1 =1;IN2 =0;//反转}//==============右边电机=============if (speed2>0){IN3 =1;IN4 =0;//正转}else if (speed2<0){IN3 =0;IN4 =1;//反转}}void motor_PWM (){uchar PWM_abs1;uchar PWM_abs2;PWM_abs1=MOTO_speed1;PWM_abs2=MOTO_speed2;if (PWM_abs1>PWMAnd) ENA=1; //左边电机占空比输出else ENA=0;if (PWM_abs2>PWMAnd) ENB=1; //右边电机占空比输出else ENB=0;if (PWMAnd>=PWM_COUST) PWMAnd=0; //PWM计数清零else PWMAnd+=1;}void TIME_Init (){//=========定时器T2初始化PWM==================T2CON = 0x00;T2MOD = 0x00;RCAP2H = 0xff; //定时0.1msRCAP2L = 0x47;TH2 = 0xff;TL2 = 0x47;ET2 = 1; //定时器2中断开TR2 = 1; //PWM定时器关,PWM周期为10ms}void PWM_Time2 () interrupt 5{TR2 = 0;TF2 = 0;ET2 = 0; //定时器0中断禁止motor_PWM();//PWM占空比输出ET2 = 1; //定时中断0开启TR2 = 1;}main(){TIME_Init () ;motor(50,50);//左右电机的转速都是50 }。
51单片机的L298N直流电机驱动(PWM)

51单片机的直流电机驱动如下图所示为L298N焊接的供电板子,怎么用呢?首先,介绍下上面的接口部分,一共五个部分。
●第一部分:L298N芯片。
这就不用多说了,百度文库上有很多关于这个芯片的资料,我就不多说了。
●第二部分:A1 、A2、B1、B2四个接口分别用来连接直流电动机或者是步进电机。
A1和A2是一组,驱动一个电机。
B1和B2一组驱动另一个电机。
●第三部分:VDD接口,可以接一个六节1.5V的五号电池的正极。
(右边那个GND是共地端,要将你用的开发板的GND和这个仪器接上,同时也是电源的共地接口)●第四部分:节四节1.5V五号电池的正极。
负极接GND。
●第五部分:这里一共有六个接口:●1.ENA 使能A1、A2的接口,也就是说如果ENA不接高电平,那么A1、A2驱动的电机是不可能可以驱动的。
2 ENB 同上。
3A1、A2、B1、B2 你可以用你的开发板的四个I\O口接它们,它们的高低电平将直接影响到第二部分输出的高低电平(经过芯片的放大,这是的电压已经很高了,这就是作用)。
如果你想驱动电机A运转,可以在A1上加高电平A2上加低电平。
这样电机就有了电势差,就可以云装了,调整电势差可以改变正传反转和加减速(PWM来控制)。
下面上源码,源码收集于网上,原著不详,现回馈大家。
#include<reg51.h>#define uchar unsigned char#define uint unsigned intsbit INPUT1 = P1^0; //控制口sbit INPUT2 = P1^1;sbit INPUT3 = P1^2;sbit INPUT4 = P1^3;sbit ENA = P1^4; //产生PWM波sbit ENB = P1^5;uint MA=0,MB=0;uint SpeedA=20;//50%占空比uint SpeedB=20;void delay(uint z) {uint x,y;for(x=z;x>0;x--)for(y=125;y>0;y--);}void main(void){delay(1000) ;delay(1000) ;INPUT1=1;INPUT2=0;INPUT3=1;INPUT4=0;TH0 = 0xF4;TL0 = 0x48;TH1 = 0xF4;TL1 = 0x48;TMOD = 0x11;TR0 = 1;TR1 = 1;ET0 = 1;ET1 = 1;EA = 1;while(1){}}//时钟0中断处理函数void time0_int() interrupt 1 using 1 {TR0=0;TH0=0xF4;TL0=0x48;MA++;if(MA< SpeedA){ENA = 1;}else ENA = 0;if(MA == 40){MA = 0;}TR0 = 1;}//时钟1中断处理函数void time1_int() interrupt 3 using 1 {TR1=0;TH1=0xF4;TL1=0x48;MB=MB + 1;if(MB < SpeedB){ENB=1;}else ENB = 0;if(MB == 40){MB = 0;}TR1 = 1;}。
l298n电机驱动模块原理

l298n电机驱动模块原理一. 简介L298N电机驱动模块是一种高功率电机驱动系统。
这种驱动模块可用于驱动不同种类的电机,包括直流电机和步进电机。
L298N电机驱动模块提供了一个高效稳定的系统来控制电机的旋转速度和方向,使其可用于众多应用领域,如机器人、车辆、家用电器、工业自动化等。
二. L298N电机驱动模块原理L298N电机驱动模块是一种双H桥电机驱动器,其工作原理是通过控制H桥输出端口上的电压,以控制电机的旋转方向和速度。
一个H桥由四个开关管组成,能够逆向电流并通过电阻来进行偏置。
L298N电机驱动模块有两个H桥,其中每个H桥有两个开关管。
当输出端口上的电压高时,H桥的一个开关管将电流引向电机的一个端口。
当输出端口上的电压低时,H桥的另一个开关管将电流流向电机的另一个端口。
通过高低电压交替输出,L298N电机驱动模块可以控制电机的旋转方向。
为了控制电机的旋转速度,电机驱动模块使用PWM(脉冲宽度调制)技术。
PWM技术是通过改变输出端口上的电压时间来控制电机的转速的。
输出端口上的电压时间越长,电机的转速将越快。
输出端口上的电压时间越短,电机的转速就会越慢。
三. L298N电机驱动模块的应用L298N电机驱动模块广泛应用于大型机器人、小型车辆、投影仪、家庭自动化、电动工具和各种其他应用领域。
它可以控制不同种类的电机,包括直流电机和步进电机。
在机器人领域,L298N电机驱动模块可用于控制机器人的移动和操作,并控制机器人的旋转角度和速度。
在车辆领域,L298N电机驱动模块可用于控制小型车辆的前后轮转向和速度。
在家用电器领域,L298N电机驱动模块可用于控制洗衣机、吸尘器等家用电器的马达启停,从而实现这些家用电器的各种功能。
四. 总结L298N电机驱动模块是一种高性能的电机驱动模块,可用于控制不同种类的电机。
通过控制电机的旋转方向和速度,L298N电机驱动模块在机器人、车辆、家用电器等领域中的应用越来越普遍。
基于51单片机驱动L289直流电机步进电机控制Protues仿真设计

51单片机L298N直流电机步进电机驱动
采用专用芯片L298N作为电机驱动芯片。
L298N是一个具有高电压大电流的全桥驱动芯片,它相应频率高,一片L298N可以分别控制两个直流电机,而且还带有控制使能端。
用该芯片作为电机驱动,操作方便,稳定性好,性能优良。
且由L298N结合单片机可实现对小车速度的精确控制。
这种调速方式有调速特性优良、调整平滑、调速范围广、过载能力大,能承受频繁的负载冲击,还可以实现频繁的无级快速启动、制动和反转等优点。
因此决定采用L298N控制直流电机。
电机驱动芯片采用L298N,是一款承受高压大电流的全桥型直流/步进电压驱动器,如下图
电机控制芯片L298N的引脚排列
L298N内部原理图
电机驱动A/B的控制逻辑如下表所示
电机驱动A/B的工作原理
电机控制逻辑如下:以电机A为例,当使能端A为高电平是,如果输入端M1 Direction 引脚为高电平,三极管导通,输入引脚1为低电平而输入引脚2为高电平,电机A反转;如果输入端M1 Direction引脚为底电平,三极管截止,输入引脚1为高电平而输入引脚2为低电平,电机A正转。
STC89C51单片机,L297和L298N驱动电路及步进电机的基本原理与功能

STC89C51单片机,L297和L298N驱动电路及步进电机的基本原理与功能摘要:本设计首先介绍了STC89C51单片机,L297和L298N驱动电路及步进电机的基本原理与功能;其次,设计步进电机实现起停、转向、速度、位置变化的控制方案;再次,在这些器件功能与特点的基础上,拟出设计思路,构建系统的总体框架;最后利用PROTEL软件绘出电路图,同时写出设计系统的运行流程和相关程序。
整个系统通过写入单片机中的程序分配好控制字的存储单元以及相应的内存地址赋值;启动系统后,从单片机的I/O口输出控制脉冲,经过L297、L298N驱动电路对脉冲进行处理,输出能直接控制步进电机的脉冲信号。
在此基础上,重新分配I/O资源,同时增加驱动芯片L297、L298N的个数,在负载能力范围允许内,就能实现多台步进电机独立起停、转向、速度、位置变化的控制。
前言步进电机是一种将电脉冲信号转换成相应角位移的控制电机。
目前,数字技术、计算机技术和永磁材料的迅速发展,推动了步进电机的发展。
本设计针对目前各个领域对自动化的需要,采用STC89C51单片机与L297,L298N驱动芯片驱动多台步进电机同时独立工作,将它应用于各种复杂的控制领域,能使许多半自动控制的系统完全成为真正的全自动,特别是用在机器人等领域,能极大的提高生产力和降低劳动强度。
由于步进电机具有快速启动、精确步进和定位等特点,因而在数控机床,绘图仪,打印机以及光学仪器中得到广泛的应用。
STC89C51单片机的特点STC89C51系列单片机是宏晶科技推出的新一代超强抗干扰/高速/低功耗的单片机,是MCS-51系列单片机的派生产品;它们在指令系统中、硬件系统和片内资源与标准的8052单片机完全兼容,DIP-40封装系列与8051为pin-to-pin兼容,指令代码是与8051完全兼容的单片机。
STC89C51单片机具有增强型12时钟/机器周期、6时钟机器/周期任意选择,工作电压为5.5V-3.4V(5V单片机)/3.8V-2.0V(5V单片机);工作频率范围:0-40MHZ,相当于普通8051的0-80MHZ。