🎮

アナログジョイスティックの使い方

2023/01/06に公開

部品

https://www.amazon.co.jp/dp/B016PXVH66

操作と値の関係

操作
X軸 左 0〜1023 右
Y軸 上 0〜1023 下
スイッチ ON:0 OFF:1 操作のイメージと値が逆

足のある方を左として見たときになる。

配線

モジュール側 Arduino側
GND GND
+5V 5V
VRx A0
Vry A1
SW 8 使わなくてもいい

コード

void setup() {
  Serial.begin(9600);
  pinMode(8, INPUT_PULLUP);
}

void loop() {
  char str[80];
  sprintf(str, "%d %d %d", digitalRead(8), analogRead(A0), analogRead(A1));
  Serial.println(str);
  delay(1000 / 60);
}

はまったこと

間違い
pinMode(8, INPUT);
正しい
pinMode(8, INPUT_PULLUP);

INPUT だと SW を押していないとき浮いた状態になる。INPUT_PULLUP だと 1 になる。

Discussion