您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 信息化管理 > l298驱动直流电机
L298驱动直流电机L298N是ST公司生产的一种高电压、大电流电机驱动芯片。该芯片采用15脚封装。主要特点是:工作电压高,最高工作电压可达46V;输出电流大,瞬间峰值电流可达3A,持续工作电流为2A;额定功率25W。内含两个H桥的高电压大电流全桥式驱动器,可以用来驱动直流电动机和步进电动机、继电器线圈等感性负载;采用标准逻辑电平信号控制;具有两个使能控制端,在不受输入信号影响的情况下允许或禁止器件工作有一个逻辑电源输入端,使内部逻辑电路部分在低电压下工作;可以外接检测电阻,将变化量反馈给控制电路。使用L298N芯片驱动电机,该芯片可以驱动一台两相步进电机或四相步进电机,也可以驱动两台直流电机。用L298控制直流电机很容易。用单片机端口高低就可以控制开始、停止、正反转,利用EN1,EN2控制使能就能控制转速。推荐一个直流电机控制的板子,配有USB下载器,修改程序很方便,功能很多。还可以做机器人小车:产品地址:视频地址:参考程序如下:程序1:#includereg51.h#includemath.h#defineucharunsignedchar#defineuintunsignedintsbiten1=P3^0;/*L298的EnableA*/sbits1=P3^2;/*L298的Input1*/sbits2=P3^3;/*L298的Input2*/uchart=0;/*中断计数器*/ucharm1=0;/*电机1速度值*/uchartmp1;/*电机当前速度值*//*电机控制函数index-电机号(1,2);speed-电机速度(-100—100)*/voidmotor(ucharindex,charspeed){if(speed=-100&&speed=100){if(index==1)/*电机1的处理*/{m1=abs(speed);/*取速度的绝对值*/if(speed0)/*速度值为负则反转*/{s1=0;s2=1;}else/*不为负数则正转*/{s1=1;s2=0;}}}}voiddelay(uintj)/*简易延时函数*/{for(j;j0;j--);}voidmain(){uchari;TMOD=0x02;/*设定T0的工作模式为2*/TH0=0x9B;/*装入定时器的初值*/TL0=0x9B;EA=1;/*开中断*/ET0=1;/*定时器0允许中断*/TR0=1;/*启动定时器0*/while(1)/*电机实际控制演示*/{for(i=0;i=100;i++)/*正转加速*/{motor(1,i);delay(5000);}for(i=100;i0;i--)/*正转减速*/{motor(1,i);delay(5000);}for(i=0;i=100;i++)/*反转加速*/{motor(1,-i);delay(5000);}for(i=100;i0;i--)/*反转减速*/{motor(1,-i);delay(5000);}}}voidtimer0()interrupt1/*T0中断服务程序*/{if(t==0)/*1个PWM周期完成后才会接受新数值*/{tmp1=m1;}if(ttmp1)en1=1;elseen1=0;/*产生电机1的PWM信号*/t++;if(t=100)t=0;/*1个PWM信号由100次中断产生*/}程序2:#includereg51.h#defineucharunsignedchar#defineuintunsignedintcharflag=1;//按键标志,当flag=1时表示没有按下,当flag=0时表示有按键按下sbitS1=P1^0;//电机pwm输入端sbitS2=P1^1;sbitS3=P1^2;sbitS4=P1^3;sbitEN=P0^0;sbitINA=P0^1;sbitINB=P0^2;uintcount=5;voiddelayms(intms)//延时函数{uchari;while(ms--){for(i=250;i0;i--);}}voidinit_sys(void)/*系统初始化函数*/{/*定时器初始化*/TMOD=0x01;TH0=0xd8;TL0=0xf0;TR0=1;ET0=1;EA=1;}voidfront()//电机正转{EN=1;INA=1;INB=0;//方向端置1电机正转}voidback()//电机反转{EN=1;INA=0;INB=1;}voidmain()//主函数{init_sys();while(1){if(flag==1){if(S1==0){delayms(2);//延时去抖if(S1==0){flag=0;front();}}if(S2==0){delayms(2);//延时去抖if(S2==0){flag=0;back();}}if(S3==0){delayms(2);//延时去抖if(S3==0){flag=0;count+=10;if(count9)count=9;if(count1)count=1;}}if(S4==0){delayms(2);//延时去抖if(S4==0){flag=0;count--;if(count9)count=9;if(count1)count=1;}}if(S1!=0&&S2!=0&&S3!=0&&S4!=0)flag=1;}}}voidtimer0(void)interrupt1using2{staticucharclick=0;/*中断次数计数器变量*/TH0=0xd8;/*恢复定时器初始值*/TL0=0xf0;++click;if(click=10)click=0;if(click=count)EN=1;elseEN=0;}L298N双H桥直流电机驱动芯片(电机驱动板)电路产品参数:1.驱动芯片:L298N双H桥直流电机驱动芯片2.驱动部分端子供电范围Vs:+5V~+35V;如需要板内取电,则供电范围Vs:+7V~+35V3.驱动部分峰值电流Io:2A4.逻辑部分端子供电范围Vss:+5V~+7V(可板内取电+5V)5.逻辑部分工作电流范围:0~36mA6.控制信号输入电压范围:低电平:-0.3V≤Vin≤1.5V高电平:2.3V≤Vin≤Vss7.使能信号输入电压范围:低电平:-0.3≤Vin≤1.5V(控制信号无效)高电平:2.3V≤Vin≤Vss(控制信号有效)8.最大功耗:20W(温度T=75℃时)9.存储温度:-25℃~+130℃10.驱动板尺寸:55mm*49mm*33mm(带固定铜柱和散热片高度)11.驱动板重量:33g12.其他扩展:控制方向指示灯、逻辑部分板内取电接口。使用说明:步进电机的驱动:板上的ENA与ENB为高电平时有效,这里的电平指的是TTL电平。ENA为A1和A2的使能端,ENB为B1和IB2的使能端。BJ接步进电机公共端。步进电机控制逻辑如下所示,其中A、B、C、D为步进电机的四个线圈,为1表示有电流通过,为0表示没有电流流过。线圈连线图如下图所示(以四相步进电机为例)。
本文标题:l298驱动直流电机
链接地址:https://www.777doc.com/doc-4570311 .html