51单片机下的L298N简单用法
51单片机下的L298N简单用法
淘宝上能买的大多这种样子
为什么要出这篇文章呢,有很多人问过我这个模块该怎么用,想想应该是很简单的事情,有两个会stm32的大三学长都来问我这个东西怎么用。。。看来是没有学过51。
今天我弄了个比较简单的电路,来控制一个电机的正反转。
接线图
以上是这个电路简单的图解,我只使用了一路输入输出,另一路原理相同。模块买来之后上边会有三个跳线帽,不用管,让他在上边就行。
简单说一说这个图。
LM2940稳压电路
电源使用的是两节18650电池串联,满电电压8V左右,然后使用lm2940稳压芯片转成5V,5V电压用来给单片机供电,8V电压用来给电机供电。
Ps:也可以分别使用一个5V电源和一个5-12V的电源给单片机和L298N供电。
单片机我使用的是P2^0 P2^1,这两个口接L298N的输入口1和2,输出口1 2接电机的两极。并接好电源,记住L298N和单片机必须接同一个GND,L298N和单片机必须接同一个GND,L298N和单片机必须接同一个GND,否则电机不转或者会抖动,这点很重要。
接下来写程序让他动起来,P2^0和P2^1口分别给不同的电平,电机即可转起来。
关于转向:正反转完全可以由程序来控制,组装时可以不用考虑转向问题
有两种方法改变转向:
1、 改变电气连接:简单点就是把电机两极接线互换,即可改变转向。
2、 程序改变转向:即把两个口的高低电平互换即可(顺时针还是逆时针为正转完全取决于自己的想法)
L298N虽然是两路输出,但不一定最多只接两个电机,完全可以接四个,只不过要两个两个并联而已,一个小车可以只使用一个L298N,一路控制一侧的电机。做循迹小车、灭火小车等等。可以使用PWM控制电机转速。
LM2940-5.0稳压电路
教大家使用L298N电机驱动模块,电机控制正反转、调速很轻松!
普及数电模电知识,科教兴国。
大家好,今天和大家来学习L298N电机驱动模块。L298N是双H桥电机驱动芯片,可以驱动两个直流电机或者一个步进电机,能实现电机的正反转以及调速。
先来看看L298N芯片实物:
上图是15脚Multiwatt封装的L298N。
L298N兼容标准的TTL逻辑,是一款高电压、高电流双全桥驱动器,能够驱动感性负载,例如继电器、电磁阀、直流电机、步进电机等。两个独立的使能信号用于使能或禁能设备,每一个桥的下管射极相连,射极引脚可以连接相应的采样电阻,用以过流保护,芯片的逻辑供电与负载供电分离,以使芯片可以工作在更低的逻辑电压下。
这个芯片那么多引脚,对于各引脚的功能定义,我们可以通过数据手册来了解:
从下往上数,按照序号,1脚和15脚是:电机电流(或叫桥驱动电流)检测引脚;2、3脚是A桥输出引脚,可接一个直流电机;4脚是负载驱动供电引脚,这个引脚和地之间必须要接一个100nF的无感电容;5脚和7脚是A桥信号输入,兼容TTL电平;6脚和11脚是使能输入,兼容TTL,低电平禁能,高电平使能;8脚是地,GND;9脚是逻辑供电,该引脚到地必须连接一个100nF的电容;10脚和12脚是B桥信号输入,同样兼容TTL逻辑电平;13脚和14脚是B桥输出,可接一个直流电机。
在这里需要提一下,是关于1脚和15脚:
当需要对电机电流进行检测时,分别在sense A、B两个引脚上串接个小电阻,当A、B两个桥的电流(电机电流)流过两个电阻时转换成电压,这个电压被送到控制L298工作的上位机(或控制电路),上位机就根椐这个电压的高低判断L298是否工作正常。
如果这个电压超过设计上限时,上位机就判L298有故障,可采取如下保护措施:
1、停止步进脉冲输出,关断电机电流。
2、给EN脚一个低电平,关闭L298。
如sense不用,就直接将sense A、B两脚接地。
好的,下面附上一个常见常用的L298N电机驱动模块的电路原理图:
如果大家对自制电机驱动模块感兴趣,可以按照这个原理图做PCB。
好的,关于这个L298N芯片我们就讲这么细,接下来我们来整体学习模块,上图:
关于这个模块的各接口的功能已经在图中标出,这个模块有两个供电口,标示着“12V输入”的是功率驱动电源输入,供电范围可以是7-46V,一般12V供电就能满足我们大部分的DIY需求。标示着“5V输出可不接”的是逻辑供电,当我们将“板载5V输出使能”的跳帽接上时,可对外供电,比如给单片机或者各传感器供电;如果功率驱动电源输入超过12V时,这个跳帽我们最好去掉,从外面给这个接口供电。标示着“单片机IO控制输入”的IN1、IN2、IN3、IN4是用来给控制信号的,可直接接单片机的IO口。最后,标示着“马达A输出、马达B输出”的就是接电机啦。当我们使用时,按照标示接好线就可以使用了。
接下来我们来看看这个模块的控制逻辑表:
当我们需要控制电机时按照上表给信号就OK。
不用单片机,单纯地用电源的正极和负极来给控制端口信号,给大家演示一下控制的过程。1是高电平,对应电源的5V,0是低电平,对应电源的负极,当我们给IN1接电源负极,给IN2接5V时,电机正转(对照逻辑控制表),反之,电机反转。
我们默认使能端口EN是使能的,5V的跳帽一直接着,这时电机的速度是恒定不变的。如果我们想要改变电机的转速,将这个使能端口用单片机控制,在一定的周期T内,控制给使能端口的高电平的时间,这时候电机就可以调出我们想要的转速,这就是PWM调速,这个过程用手也可以完成,但是速度不匀不够平滑,反应也不够速度。
最后,附上详细视频教程:详细视频教程
相关问答
l298 在proteus中如何接线?电源使用的是两节18650电池串联,满电电压8V左右,然后使用lm2940稳压芯片转成5V,5V电压用来给单片机供电,8V电压用来给电机供电。Ps:也可以分别使用一个5V电...
l298n 和51 单片机 怎么连接?L298N应该按照其使用说明书上的引脚连接方式接线,以确保它正常工作并避免电路损坏。1.L298N应该按照其使用说明书上的引脚连接方式接线。2.L298N驱动模块具...
求大神解释怎么用 L298N 驱动步进电机?步进电机就是把这四个输出端接在电机的四根电机线上。相当于L298N能驱动两个直流电机或者一个步进电机。光耦的作用就是起到信号的隔离,让L298N这边一旦...
arduino如何分别控制多个步进电机运动,XYZ轴运动。?[回答]我目前用的器材:两个两相四线步进电机,分别由两个l298n驱动,均安装在后轮上,主控制板是arduino2560,nrf24l无线芯片及ArduinoJoyStickShield板...
单片机 智能小车pmw?不需要单独的PWM模块,仅靠单片机和电机驱动(L298N)足够了。具体是在程序中用单片机的IO口模拟出PWM信号来,也就是控制IO口输出的高低电平的时间,利用不同时...
步进电机如何用 单片机 控制?步进电机的驱动是需要驱动器的,驱动器的种类不同,单片机控制的方式也不同,是不能用单片机来直接控制步进电机的。可以选用现成的驱动器,也可以自己做启动器...
步进电机与直流电机的区别?步进电机与直流电机在电机学里完全就属于不同类型的电机,直流电机只要加上合适的电压就会转,而且转得圈数难以精确控制;而步进电机则按照节拍工作,可以旋转极...
在座的盆友,求推荐!步进电机的操作规范是什么?AT89C51单片机,Q电机驱动器L298N驱动,构建单片机辨识并输入表明键盘输入的数据信息(转角)并产生倒数脉冲掌控Q电机旋转,电机型号是两相Q电动机42BYG...
对于51 单片机 上电后,各I/O口的状态是什么?-ZOL问答51单片机上电复位后,各输出口的状态都是1。当执行指令MOVX@DPTR,A时,这是51单片机写,对应的WE为0;当执行指令MOVXA,@DPTR时,这是51单片机读,对应的RD为0;.....
能否在L9110S电机驱动芯片输出点加上三极管来增大输出电流吗?不建议单片机直接驱动。可以这么说,没人这么干过。一般控制电机,都需要间接控制。电机算是强电,单片机算是弱电。中间通过光耦来给PWM。电机驱动芯片常见的...