메뉴 건너뛰기

XEDITION

project2018

[아두이노] DC 모터 조이스틱 속도 제어

proin 2018.05.16 15:44 조회 수 : 1

//#define PIN_ANALOG_X 0

#define PIN_ANALOG_Y 1

 

//int X = A0;

int Y = A1;

 

int speed_Y;

int speed_Y2;

 

void setup()

{

  Serial.begin(9600);

 

  pinMode(7, OUTPUT);

  pinMode(8, OUTPUT);

}

 

void loop()

{

  speed_Y = 0;

  speed_Y2 = 0;

  

  //Serial.print("x: ");

  //Serial.println(analogRead(PIN_ANALOG_X));

  Serial.print("y: ");

  Serial.println(analogRead(PIN_ANALOG_Y));

 

  speed_Y = (analogRead(Y) - 515) / 2;

  if(speed_Y <= -255)

  {

    speed_Y = -254;

  }

  

  if(speed_Y > 0)

  {

    digitalWrite(7, HIGH);

    digitalWrite(8, LOW);

    analogWrite(6, speed_Y);

  }

  

  if(speed_Y < 0)

  {

    speed_Y2 = speed_Y - (speed_Y * 2);

    digitalWrite(7, LOW);

    digitalWrite(8, HIGH);

    analogWrite(6, speed_Y2);

  }

 

  Serial.print(speed_Y);

  Serial.print("  ");

  Serial.println(speed_Y2);

 

  delay(100);

}

위로