技术文档

单片机与l298 基于51单片机和L298步进电机控制Proteus设计

小编 2025-07-04 技术文档 23 0

基于51单片机和L298步进电机控制Proteus设计

一、背景

(1)L298N简介

L298N 是一种双H桥电机驱动芯片,其中每个H桥可以提供2A的电流,功率部分的供电电压范围是2.5-48v,逻辑部分5v供电,接受5vTTL电平。一般情况下,功率部分的电压应大于6V否则芯片可能不能正常工作。它可以用来控制直流电机,也可以控制步进电机。

(2)步进电机简介

步进电机又称为脉冲电机,基于最基本的电磁铁原理,它是一种可以自由回转的电磁铁,其动作原理是依靠气隙磁导的变化来产生电磁转矩。由于步进电机是一个可以把电脉冲转换成机械运动的装置,具有很好的数据控制特性,因此,计算机成为步进电机的理想驱动源, 随着微电子和计算机技术的发展,软硬件结合的控制方式成为了主流,即通过程序产生控制脉冲,驱动硬件电路。单片机通过软件来控制步进电机, 更好地挖掘出了电机的潜力。在不超载的情况下电机的转速和停止位置只取决于脉冲信号的频率和数量;并且步进电机的脉冲与步进旋转的角度成正比,脉冲的频率与步进的转速成正比,所以可以很好的从源头控制信号的输出;且步进电机只有周期性的误差,使得在速度、位置等控制领域用步进电机来控制变得非常的简单。下面是步进电机的拆解图:

本设计就是使用proteus仿真软件对步进电机的控制进行简单的仿真,帮助大家了解和入门步进电机。当然如果想要更好的控制电机还是需要别的控制算法,这里先不做介绍。

(3) LCD1602液晶显示器

LCD1602液晶显示器曾经是广泛使用的一种字符型液晶显示模块。它是由字符型液晶显示屏(LCD)、控制驱动主电路HD44780及其扩展驱动电路HD44100,以及少量电阻、电容元件和结构件等装配在PCB板上而组成。不同厂家生产的LCD1602芯片可能有所不同,但使用方法都是一样的。为了降低成本,绝大多数制造商都直接将裸片做到板子上。不多目前这种液晶性价比并不好,使用的越来越少了。

二、设计目标

使用51单片机控制步进电机的正反转,加减速。设置有三个按键,通过按键控制步进电机的正反转和加减速等。同时设计有LCD1602液晶显示器,通过LCD1602可以显示步进电机的状态,包括方向、启停,档位等。

三、设计过程

首先我们使用proteus软件绘制好仿真图,如图所示

然后使用keil建立工程并编写相应的程序,如图

最后加载HEX文件就可以通过proteus进行仿真了,如下视频所示

视频加载中...

感兴趣的小伙伴欢迎关注我哦~!

教大家使用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调速,这个过程用手也可以完成,但是速度不匀不够平滑,反应也不够速度。

最后,附上详细视频教程:详细视频教程

相关问答

51 单片机 两个直流减速电机怎么接线?

51单片机连接两个直流减速电机可以采用L298N电机驱动模块。具体接线步骤如下:将L298N模块的VCC引脚连接到5V电源,GND引脚连接到地线。将51单片机的输出引脚...

怎样使用 L298 芯片?

L298就是起到放大电流的作用。单片机的电流太小,驱动不了电机。L298有四路输入,四路输出;有两个使能端,一般情况下,你可以直接把EA,EB两个使能端接高,直接...

单片机 能不能直接驱动步进电机?

一、单片机不能直接驱动步进电机。原因是单片机虽然是主要起控制作用,但其端口主要是起到信号控制作用,而不能起到功率驱动。一般单片机的I/O口的输出电流都在...

智能小车如何实现PWM调速?

不需要单独的PWM模块,仅靠单片机和电机驱动(L298N)足够了。具体是在程序中用单片机的IO口模拟出PWM信号来,也就是控制IO口输出的高低电平的时间,利用不同时...

单片机 控制舵机电压不够怎么办?

单片机控制舵机电压不够,有可以是使用L298N对stm32供电导致电压不稳,可以取消L298N对stm32供电,用其他稳定电源对stm32供电,即可解决单片机控制舵机电压不够,...

在座的前辈跪求解答!!arduino如何分别控制多个步进电机运动...

[回答]目前用的器材:两个两相四线步进电机,分别由两个l298n驱动,均安装在后轮上,主控制板是arduino2560,nrf24l无线芯片及ArduinoJoyStickShield板子进行...

求助, L298 N模块该怎么连线?

用L298N驱动直流电机,如需PWM调速,ENA、ENB使能端最好接单片机的IO口上,这样可控,如果直接接5V的话,那么就不可控了。用L298N驱动直流电机,如需PWM调速,ENA、...

麻烦老表们!有人知道不:巩义OEMQSFP-DD光模块,QSFP-DD光模...

[回答]直接买一个L298驱动模块。。。----买吧。买回来看看,就可以看出:就是用单片机,直接驱动L298的,中间并没有光耦等零碎元件。L298和电机之间,有8个二...

直流电机和步进电机的区别,具体在功率和负载效率上面的区别?

步进电机与直流电机在电机学里完全就属于不同类型的电机,直流电机只要加上合适的电压就会转,而且转得圈数难以精确控制;而步进电机则按照节拍工作,可以旋转极...

如何用C语言控制步进电机,正转后自动反转?

首先要看你的电机是直流电机还是步进电机。直流电机就简单了,只有两根线,电机两端电压正负极改变就可以实现正转反转。不过要加电机驱动芯片,或者h桥电路,电...

猜你喜欢