L298N的接线和详细使用方法
文章说明:
名词概念(为了方便易懂,我就通俗的表达):
逻辑电压:控制板子执行程序的电压。
驱动电压:输出口AB的电压。
逻辑电流:驱动板执行程序的电流。
驱动电流:输出口AB的电流。
本人调试此款L298N,只调试过3.3V(小于5v的驱动电压下面都统称小于5v),7.4v,12v,24v(大于5v的驱动电压都统称大于5v)这4个档位的电压,此外调试时没测试过电流大小,只知道L298N最大功率为25w,最大驱动电流为2A。
简单介绍L298N板载位置的各个名称

简单的端子和接口介绍:
一、12v供电:
理论上最高可以接入35v(没试过最低和最高的电压,此处是某宝卖家提供的参数),购买直流电机前,先看清楚直流电机的相关参数和性能,如果满足L298N的使用要求,再进行购买使用,否则容易烧毁L298N。
从12v供电口进去的电,就是输出AB口的电压。但在介绍板载5v跳帽时,会说明当输入电压小于5v和大于5v的情况。
二、供电GND:
顾名思义,接地线。但要注意的是,此处GND不但要接驱动电源的GND,如果是和别的单片机或者其他系统连接在一起的时候,一定要从这里再引出一根GND和单片机或者系统的GND相连。即整个系统的GND连接在一起,如果不连接在一起,电压没有参考电平,无法进行正常的控制。
三、5v供电:
这是一个特殊的端口。既可以做L298N的逻辑电压的输入,也可以做外部单片机或系统的5v供电口。具体切换在板载5v跳帽中介绍。
四、板载5v跳帽:
12v供电口接≥5V的电源电压时,板载5v跳帽不拔除,5v供电口有电压输出。数值具体大小自己用万用表测,反正当12v口接7.4v时,5v供电口是输出5v的。
12v供电口≤5v的电源电压时,板载5v跳帽需要拔除,因为L298N需要逻辑驱动电压来驱动板子。此时5v供电口就变成了L298N的逻辑电压供电的输入口。供电电压在3.3v -5v之间。
四、通道AB使能跳帽:
需要PWM控制就拔除,不需要PWM控制就不用拔除(老玩家就别管这句话了,就算不拔除也可以做到PWM调试的,应该懂的都懂)。
PWM控制对于电机而言表现出来现象的就是转速控制,在Arduino里用analogWrite(Pin,Value)语句来实现 [Pin(对应的针脚),Value(0-255之间的整型数字)]
五、逻辑输入:
IN1和IN2为一组,对应OutA(输出A);
IN3和IN4为一组,对应OutB(输出B)。
六、输出AB:
直接接相应的输出即可。
通道AB使能(AB两个跳帽一起拔除)拔除的Arduino代码:
1 int Right_motor = 12; // IN1接Arduino板子上数字针脚12;
2 int Right_motor_1 = 11; // IN2接Arduino板子上数字针脚11;
3 int ENA = 10; // 使能针脚接Arduino板子上PWM口10;
4
5 void setup(){
6 pinMode(Right_motor, OUTPUT); // 定义输入输出;
7 pinMode(Right_motor_1, OUTPUT);
8 }
9
10 void Run_B(){ // 前进 L298N拔掉跳帽(注意AB两端都要拔掉);同时当L298N是外部供电的情况下,L298N的GND端口要和Arduino的GND连线
11 digitalWrite(Right_motor, HIGH);
12 digitalWrite(Right_motor_1, LOW);
13 analogWrite(ENA, 200);
14 }
15
16 void Stop(){ // 停止
17 digitalWrite(Right_motor, HIGH);
18 digitalWrite(Right_motor_1, LOW);
19 analogWrite(ENA, 0);
20 }
21
22 void loop()
23 {
24 Run_B();
25 }
通道AB使能(AB两个跳帽一起不拔除)不拔除的Arduino代码:
1 int Right_motor = 12; // IN1接Arduino板子上数字针脚12;
2 int Right_motor_1 = 11; // IN2接Arduino板子上数字针脚11;
3
4 void setup(){
5 pinMode(Right_motor, OUTPUT); // 定义输入输出;
6 pinMode(Right_motor_1, OUTPUT);
7
8 }
9
10 void Run_B(){ // 前进 L298N不拔掉跳帽用这个(注意两端都不拔除);同时当L298N是外部供电的情况下,L298N的GND端口要和Arduino的GND连线
11 digitalWrite(Right_motor, HIGH);
12 digitalWrite(Right_motor_1, LOW);
13 }
14
15 void Stop(){ // 停止
16 digitalWrite(Right_motor, LOW);
17 digitalWrite(Right_motor_1, LOW);
18 }
19
20 void loop()
21 {
22 Run_B();
23 }
不拔除AB使能跳帽,做到PWM调速:
1 int Right_motor = 12; // IN1接Arduino板子上数字针脚12;
2 int Right_motor_1 = 11; // IN2接Arduino板子上数字针脚11;
3
4 void setup(){
5 pinMode(Right_motor, OUTPUT); // 定义输入输出;
6 pinMode(Right_motor_1, OUTPUT);
7 }
8
9 void Run_A(int val){ // 前进 L298N接使能跳帽用这个;同时当L298N是外部供电的情况下,L298N的GND端口要和Arduino的GND连线
10 analogWrite(Right_motor,val);
11 analogWrite(Right_motor_1,0);
12 }
13
14 void Stop(){ // 停止
15 analogWrite(Right_motor,0);
16 analogWrite(Right_motor_1,0);
17 }
18
19 void loop()
20 {
21 Run_A(200);
22 }
L298N的接线和详细使用方法的更多相关文章
- PL/SQL Developer 连接Oracle数据库详细配置方法
PL/SQL Developer 连接Oracle数据库详细配置方法 近段时间很多网友提出监听配置相关问题,客户终端(Client)无法连接服务器端(Server).本文现对监听配置作一简单介绍,给出 ...
- NUnit详细使用方法
http://www.ltesting.net/ceshi/open/kydycsgj/nunit/ http://nunit.org/index.php?p=download NUnit详细使用方法 ...
- Html Mailto标签详细使用方法
http://www.360doc.com/content/09/0805/14/16915_4684377.shtml Html Mailto标签详细使用方法 Html中mailto标签是一个非常实 ...
- 使用phpExcelReader操作excel提示The filename *.xls is not readable的详细解决方法
使用phpExcelReader操作excel提示The filename *.xls is not readable的详细解决方法 是xls文件有问题,另存为新的xls文件,然后导入就不会有这个问题
- python简介及详细安装方法
1.Python简介 1.1 Python是什么 相信混迹IT界的很多朋友都知道,Python是近年来最火的一个热点,没有之一.从性质上来讲它和我们熟知的C.java.php等没有什么本质的区别,也是 ...
- vlc 详细使用方法:libvlc_media_add_option 函数中的参数设置
vlc 详细使用方法:libvlc_media_add_option 函数中的参数设置 [转载自]tinyle的专栏 [原文链接地址]http://blog.csdn.net/myaccella/ar ...
- 【yumex图形安装双击】【转载】CentOS yum的详细使用方法
CentOS yum的详细使用方法 yum是什么yum = Yellow dog Updater, Modified主要功能是更方便的添加/删除/更新RPM包.它能自动解决包的倚赖性问题.它能便于管理 ...
- Linux下ps命令详解 Linux下ps命令的详细使用方法
http://www.jb51.net/LINUXjishu/56578.html Linux下的ps命令比较常用 Linux下ps命令详解Linux上进程有5种状态:1. 运行(正在运行或在运行队列 ...
- Mysql 死锁的详细分析方法
用数据库的时候,偶尔会出现死锁,针对我们的业务系统,出现死锁的直接结果就是系统卡顿.客户找事儿,所以我们也在想尽全力的消除掉数据库的死锁.出现死锁的时候,如果只是想解锁,用show full proc ...
随机推荐
- 转:nginx服务器配置
1. user www-data说明的是使用的用户,至于www-data这个用户是系统自带的,我们不用说系统里没有这个账户的,虽然这个账户具体是做什么的,我也不太清楚2.worker_processe ...
- Shell脚本对Linux进行文件校验
Shell脚本对Linux进行文件校验 一.需求 有客户等保需求对文件一致性进行校验,想到利用md5sum工具,因此写脚本来对文件进行自定义扫描,后期可以利用其进行校验,快速校验文件发现变更的文件,一 ...
- buu RSA
一.分析 下载链接,发现一个公钥的文件(e,n),和一个加密过的文件 二. 公钥文件,里面一堆字母,然后后面百度,才知道需要去解开n,e 指数是e,模数是n(十六进制) 三.再通过n来分解素数,得到p ...
- HCNA Routing&Switching之动态路由协议RIP
前文我们了解了动态路由的基本概念,以及动态路由和静态路由的区别,优缺点,动态路由的分类,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/14995317.html ...
- 如果面试官问你 JVM,额外回答逃逸分析技术会让你加分!
我是陈皮,一个在互联网 Coding 的 ITer,微信搜索「陈皮的JavaLib」第一时间阅读最新文章. 引言 我在面试别人的过程中,JVM 内存模型我几乎必问,虽然有人说问这些就是面试造航母,工作 ...
- 简单聊一下Uwsgi和Django的爱恨情仇
项目目录:/root/app Uwsgi的配置文件 [uwsgi] # Python扩展包安装的地方 pythonpath=/usr/local/src/python3/lib/python3.5/s ...
- 前端-Vue基础2
1.过滤器 前台通过后台传值,要对后台传过来的变量进行特殊处理,比如根据id转成中文等: 1.1 局部过滤器 局部过滤器只针对一个Vue实例 默认将|左侧count传递给右侧方法 {{count|fi ...
- 前端开发入门到进阶第三集【js进行url解析】
https://www.cnblogs.com/yuanzhiguo/p/8241644.html
- Javascript闭包解析----------------v客学院技术分享
跟java,php等编程语言一样,javascript也采用词法作用域,简单的来说就是函数的执行依赖于变量的作用域,这个作用域是在函数定义时决定的,而不是函数调用时决定的.为了实现这种词法作用域,还必 ...
- VirtualBox 修改Android x86虚拟机的分辨率
首先说明一下,本人使用的是Windows下的VirtualBox,android x86使用的是9.0-r2版本 一.查看virtualbox中已有的分辨率 启动虚拟机后,连续按两次E键,进入下面页面 ...