mirror of
https://github.com/m5stack/m5-docs.git
synced 2026-05-20 10:23:01 -07:00
3.5 KiB
3.5 KiB
JOYSTICK ユニット {docsify-ignore-all}
📝概要 :octocat:サンプルコード 🔌回路図 🛒購入リンク 🎬関連動画
概要
**JOYSTICK**ユニットはコントローラーなどに利用可能なジョイスティックです。X-Y軸オフセットとボタンクリック入力を取得できます。
内部的には (X, Y, Z) 軸方向の入力はATmega328pのそれぞれ(A0, A1, A2) ピンに接続されています。
M5CoreとJoystickはI2Cで接続されます。I2Cアドレスは0x52です。
特徴
- X, Y 値の範囲 (10 ~ 250), Z方向(0: released, 1: pressed)
- Grove インターフェース、サポートプログラミング UIFlow、Arduino
- LEGO 互換ホール
関連リンク
サンプルコード
1. Arduino IDE
完全なソースコードはこちら。
#include <M5Stack.h>
#include "Wire.h"
#define JOY_ADDR 0x52
// declaration
uint8_t x_data, y_data, button_data;
char data[100];
// initialization
M5.begin();
M5.Lcd.clear();
dacWrite(25, 0);//disable the speak noise
Wire.begin(21, 22, 400000);
// read data
Wire.requestFrom(JOY_ADDR, 3);
if (Wire.available()) {
x_data = Wire.read();// X(range: 10~250)
y_data = Wire.read();// Y(range: 10~250)
button_data = Wire.read();// Z(0: released 1: pressed)
sprintf(data, "x:%d y:%d button:%d\n", x_data, y_data, button_data);
}
2. UIFlow
完全なソースコードはこちら。
回路図
ピンマップ
| M5Core(GROVEインターフェースA) | GPIO22 | GPIO21 | 5V | GND |
| JOYSTICK Unit | SCL | SDA | 5V | GND |
関連動画
Joystick デモ - 車椅子操作
Joystick デモ - ツリーメニュー操作


