一些值后串口监视器无响应且伺服电机卡住

时间:2016-07-30 14:53:24

标签: arduino arduino-uno electronics

当我通过串行监视器输入角度时,我编写了一个旋转伺服的程序。 当我输入价值时,有时候效果很好。在一些值之后,伺服卡住了......有时串行监视器都没有响应而伺服卡住了......这是我的代码:

#include <Servo.h>
int i = 0;
Servo servo;
void setup() {
  servo.attach(9);
  delay(100);
  Serial.begin(9600);    
}

void loop() {
  int number = getTheNumber();
  if(number >=0 && number <= 180)
    servo.write(number);

  delay(1000);
}

int getTheNumber(){
  int j = 0;
  char valueArray[5]={0,0,0,0,0};

  while(Serial.available()==0)
    delay(100);

  while(Serial.available() != 0){
    valueArray[j]=Serial.read();
    delay(100);
    j++;
  }

  int intValue = atoi(valueArray);

  return intValue;
}

它有什么问题?我该如何解决这个问题?

0 个答案:

没有答案