Arduino控制L298N

一般做智能小车或者DIY开发的童鞋需要用到Arduino这狂开发板,

作为一名好奇心很强的软件开发人员,我自然也想尝尝鲜特别是利用Arduino做一些人机交互的项目,如果结合了Kinect、AR增强现实,肯定会有意想不到的效果。

废话不多说,本次是使用Arduino通过L298N控制直流电机(实际上我是想做智能小车的,可是才只做了个轮子 )

首先借用网上图片,简单介绍一下L298N

Arduino控制L298N_第1张图片

我不是学电子专业的,所以电路图什么的,没有!


简单介绍一下:Out1、Out2、Out3、Out4两个一组,是可以同时控制两个电机(刚好两个轮子的小车),我使用的L298N没有图中的上排5V、5V,只有ENA、ENB这两个端口是用来控制两侧的Out输出的使能端,顾名思义就是控制他们能不能使用的,如果想要两个轮子都转,ENA、ENB是要短接的。下排的IN1、In2、In3、IN4是来自外部的输入这里度盎然是来自Ardunio的输入咯,VCC是电源输入端,GND就是接地咯,5V是外部供电的话的接入口(貌似是的)

介绍就到此为止,下面是我的接线图

Arduino控制L298N_第2张图片Arduino控制L298N_第3张图片Arduino控制L298N_第4张图片

那两个车轮子下面就是两个电机,就不拍咯。

下面是我的代码,有了代码就很好接线了


int in1 = 8;
int in2 = 9;
// motor two
int in3 = 6;
int in4 = 7;
void setup() {
  // put your setup code here, to run once:
  pinMode(in1, OUTPUT);
  pinMode(in2, OUTPUT);
  pinMode(in3, OUTPUT);
  pinMode(in4, OUTPUT);
   Serial.begin(9600);
}

void loop() {
  // put your main code here, to run repeatedly:
 normalRun();
}
void normalRun(){    
   // turn on motor A
  digitalWrite(in1, HIGH);
  digitalWrite(in2, LOW);
  // turn on motor B
  digitalWrite(in3, HIGH);
  digitalWrite(in4, LOW);
}
这里面就是全部了,In1、in2就是对应的L298N的IN1、IN2,烧录的Arduino里面就可以跑啦

如果有什么问题,欢迎大家和我交流

你可能感兴趣的:(人机交互,arduino)