Cmg电机:Arduino电机坡道

我的 arduino 坡道电机代码需要一些帮助,我正在制作一个遥控机器人,遥控器有一个按钮。

如果按钮为高电平:电机应使用 pwm 逐渐增加其速度(从pwm=0开始)。从静止速度到最大速度的时间段应为 1 秒。一旦达到最大速度,它应保持最大速度(pwm=255)。释放按钮的那一刻,电机应逐渐从当前速度降低到完全停止。

到目前为止,我已经设法编写了斜坡并保持代码的速度部分;代码不包括按钮部分。

int motor;
int motorpwm=11;
int x=1;
int i;
void setup()
{
pinMode(11,OUTPUT);
Serial.begin(9600);
}
void loop() 
{
for(int i=0;i<256;i=i+x)
 {
ogWrite(motorpwm,i);
Serial.println(i);
if(i==255)
  {
x=0;
Serial.println("PWM is maximum");
  }
 }
}

请包括完整的代码,包括代码的按钮控制部分。

1

不保证你,如果这是无 bug,但你可以试试这个,并在这里发布你的 restults,以便我可以调试它为你。

int motor;
int motorpwm = 11;
int x = 1;
int i;
int pwmValue;
void setup()
{
  pinMode(11, OUTPUT);
  pinMode(2, INPUT); //Button connected to Vcc and pulled down using a 10k resistor. 
  Serial.begin(9600);
}
void loop()
{
  if (digitalRead(2)) //if on is pressed it will read High signal
  {
    if (pwmValue <= 255)
    {
      ogWrite(motorpwm, pwmValue++);
      Serial.print("Going Up with value: ");
      Serial.println(pwmValue);
    }
    else
    {
      Serial.println("PWM is maximum");
    }
  }
  else
  {
    if (motorpwm > 0)
    {
      ogWrite(motorpwm, pwmValue--);
      Serial.print("Going down with value: ");
      Serial.print(pwmValue);
    }
    else
    {
      Serial.println("PWM is minimum");
    }
  }
}

This is how you will connect your switch to pin 2

本站系公益性非盈利分享网址,本文来自用户投稿,不代表边看边学立场,如若转载,请注明出处

(852)
Color mot d:使用Postman调用DVLAMOT历史API时出现“缺少身份验证令牌”错误
上一篇
Fibre:光纤通道 CRC计算(4 bit crc checksum calculator online)
下一篇

相关推荐

发表评论

登录 后才能评论

评论列表(11条)