「Arduino」利用搖桿模塊控制LED,簡化操作難度

Joystick翻譯過來有操作杆的意思,況如我們平時玩的遊戲手柄上面帶的那個操作杆,亦與我們小時候玩的遊戲街機中的操作杆類似,我們可以把這個Joystick模塊用到遊戲上面,也可以用來自己DIY作品,通過Joystick模塊可以使操作簡單易懂。
我們需要的材料清單如下:
● Arduino UNO開發板 x1
● Joystick操縱桿模塊 x1
● 5個LED指示燈 x5
● 連接導線 x若干
● 麵包板 x 1
硬件電路的連接如下:

「Arduino」利用搖桿模塊控制LED,簡化操作難度

實驗所用的代碼如下:

/***********************************************************
 File name: _27_JoystickModule.ino
 Description: We measure the information of joystick module,
 and displayed in the serial monitor.
 Website: www.gewbot.com
 E-mail: [email protected]
 Author: Tom
 Date: 2017/03/16
 ***********************************************************/

#define button 2
#define JoyStick_X A0 //x
#define JoyStick_Y A1 //y

int buttonState = 0;

void setup()
{
pinMode(11,OUTPUT);
pinMode(10,OUTPUT);
pinMode(9,OUTPUT);
pinMode(8,OUTPUT);
pinMode(7,OUTPUT);

digitalWrite(button, HIGH);

Serial.begin(115200); // 115200 bps
}
void loop()
{
int xValue = analogRead(JoyStick_X);
int yValue = analogRead(JoyStick_Y);

buttonState = digitalRead(button);

Serial.print(xValue);
Serial.print("\t");
Serial.println(yValue);
delay(500);

//左
if (xValue>=0 && yValue<=10){
digitalWrite(10, HIGH);
}
else{digitalWrite(10, LOW);}

//下
if (xValue=500){
digitalWrite(11, HIGH);
}
else{digitalWrite(11, LOW);}

//上
if (xValue>=1020 && yValue>=500){
digitalWrite(9, HIGH);
}
else{digitalWrite(9, LOW);}

//右
if (xValue>=500 && yValue>=1020){
digitalWrite(8, HIGH);
}
else{digitalWrite(8, LOW);}

//消除影響
if(xValue>=1020 && yValue>=1020){
digitalWrite(9, LOW);
digitalWrite(8, LOW);
}

if(buttonState == LOW){
Serial.println("Switch = High");
digitalWrite(7, HIGH);
}
else{digitalWrite(7, LOW);}
}


分享到:


相關文章: