通过Arduino用PWM控制L298N转速
int IN1=4;int IN2=5;
int IN3=6;
int IN4=7;
int ENA=10;//使能端口1
int ENB=11;//使能端口2
int i;
//数字端口4与5为一组,6与7为另一组
//数字端口10 11 作为直流电机的使能端
void setup() {
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(7, OUTPUT);
pinMode(10, OUTPUT);
pinMode(11, OUTPUT);
}
void Motor1(boolean reverse)//电机1
{
if (reverse)
{
for(i=0;i<=255;i++)
{analogWrite(ENA,i);
analogWrite(ENB,i);
delay(500);}
}
else
{
for(i=255;i>=0;i--)
{analogWrite(ENA,i);
analogWrite(ENB,i);
delay(500);}
}
}
void Motor2(boolean reverse)//电机2
{
if (reverse)
{
for(i=0;i<=255;i++)
{analogWrite(ENB,i);
delay(500);}
}
else
{
for(i=255;i>=0;i--)
{analogWrite(ENB,i);
delay(500);}
}
}
void loop()
{
digitalWrite(IN1,HIGH);
digitalWrite(IN2,LOW);
digitalWrite(IN3,HIGH);
digitalWrite(IN4,LOW);
Motor1(1);
Motor1(0);
Motor2(1);
Motor2(0);
}
电机1的可以写成这样吗?就是把i给个固定值
void Motor1(boolean reverse)//电机1
{
if (reverse)
{
inti=10;
analogWrite(ENA,i);
delay(500);
}
} 原来如此,我一直直接写pwm的都不知道有使能端
页:
[1]