こんにちはせしろです。
前回はPS4コントローラをArduinoに接続したところまでを紹介しました。今回は「USB_Host_Shield_2.0」PS4コントローラの関数について調べたので忘備録として残したいと思います。
PS4コントローラの関数
| 名称 | 機能 | 関数 | |
| 1 |
タッチパッド |
アナログ値(X:0-1900,Y:0-940)を返します。 2点同時に対応。0:最初の指 1:二番目の指 |
PS4.getX(0),PS4.getY(0), PS4.getX(1),PS4.getY(1) |
| タッチパッドボタン |
PS4.getButtonClick(TOUCHPAD) PS4.getButtonPress(TOUCHPAD) |
||
| タッチパッドの操作を0/1で返します。 2点同時に対応。0:最初の指 1:二番目の指 |
PS4.isTouching(0) PS4.isTouching(1) |
||
| 2 | L2アナログボタン | 8bit(0-255)のアナログ値を返します。 | PS4.getAnalogButton(L2) |
| 3 | L1ボタン | 0/1を返します。 |
PS4.getButtonClick(L1) PS4.getButtonPress(L1) |
| 4 |
方向 ボタン |
「上」0/1を返します。 |
PS4.getButtonClick(UP) PS4.getButtonPress(UP) |
| 「右」0/1を返します。 |
PS4.getButtonClick(RIGHT) PS4.getButtonPress(RIGHT) |
||
| 「下」0/1を返します。 |
PS4.getButtonClick(DOWN) PS4.getButtonPress(DOWN) |
||
| 「左」0/1を返します。 |
PS4.getButtonClick(LEFT) PS4.getButtonPress(LEFT) |
||
| 5 | Lアナログスティック | 8bit(0-255)のアナログ値を返します。 |
PS4.getAnalogHat(LeftHatX) (PS4.getAnalogHat(LeftHatY) |
| 6 | L3ボタン | 0/1を返します。 |
PS4.getButtonClick(L3) PS4.getButtonPress(L3) |
| 7 | Optionボタン | 0/1を返します。 |
PS4.getButtonClick(OPTIONS) PS4.getButtonPress(OPTIONS) |
| 8 | R2アナログボタン | 8bit(0-255)のアナログ値を返します。 | PS4.getAnalogButton(R2) |
| 9 | R1ボタン | 0/1を返します。 |
PS4.getButtonClick(R1) PS4.getButtonPress(R1) |
| 10 | △ボタン | 0/1を返します。 |
PS4.getButtonClick(TRIANGLE) PS4.getButtonPress(TRIANGLE) |
| 11 | □ボタン | 0/1を返します。 |
PS4.getButtonClick(SQUARE) PS4.getButtonPress(SQUARE) |
| 12 | 〇ボタン | 0/1を返します。 |
PS4.getButtonClick(CIRCLE) PS4.getButtonClick(CIRCLE) |
| 13 | ×ボタン | 0/1を返します。 |
PS4.getButtonClick(CROSS) PS4.getButtonClick(CROSS) |
| 14 | Rアナログスティック | 8bit(0-255)のアナログ値を返します。 |
PS4.getAnalogHat(RightHatX) PS4.getAnalogHat(RightHatY) |
| 15 | R3ボタン | 0/1を返します。 |
PS4.getButtonClick(R3) PS4.getButtonClick(R3) |
| 16 | Shareボタン | 0/1を返します。 |
PS4.getButtonClick(SHARE) PS4.getButtonClick(SHARE) |
| 17 | PSボタン | 0/1を返します。 | PS4.getButtonClick(PS) |
| 18 | Pitch,Roll | P:0-360.00,R:0-360.00のアナログ値を返します。 |
PS4.getAngle(Pitch) PS4.getAngle(Roll) |
| 19 | 3軸ジャイロスコープ | センサーの生の読み取り値を返します。 |
PS4.getSensor(gX) PS4.getSensor(gY) PS4.getSensor(gZ) |
| 20 | 3軸加速度計 | センサーの生の読み取り値を返します。 |
PS4.getSensor(aX) PS4.getSensor(aY) PS4.getSensor(aZ) |
| 21 | LED | LEDを点滅させます。 (ON時間,OFF時間) 0-255(2.5秒) |
PS4.setLedFlash(10, 10) |
| “Blue”,”RED”,”Green”,”White”,”Yellow” “Lightblue”,”Purple”に対応 |
PS4.setLed(White) | ||
| RGB値での色指定も可能 | PS4.setLed(153,255,255) | ||
| 22 | 振動モーター | 大きな振動 | PS4.setRumbleOn(RumbleHigh) |
| 小さな振動 | PS4.setRumbleOn(RumbleLow) | ||
| アナログ値で強さを指定(0-255) (大きな振動値,小さな振動値) |
PS4.setRumbleOn(255,255) | ||
| 23 |
オールオフ |
振動、LED両方をOFFにします。 | PS4.setAllOff() |
| 24 | 接続状態 | コントローラ接続状態を0/1で返します。 | PS4.connected() |
| コントローラの接続を解除します。 | PS4.disconnect() | ||
| 25 | バッテリ残量 | コントローラのバッテリ残量を返します。(0-15) | PS4.getBatteryLevel() |
| 26 | USB状態 | USBケーブルが接続されているかどうかを0/1で返します。 | PS4.getUsbStatus() |
| 27 | オーディオ状態 | オーディオケーブルが接続されているかどうかを0/1で返します。 | PS4.getAudioStatus() |
| 28 | マイク状態 | マイクが接続されているかどうかを0/1で返します。 | PS4.getMicStatus() |
| 29 | スピーカー | 未対応 |
※ボタンには「Click」と「Press」の関数が用意されていて、Click:押したとき1度のみON、Press:押している間ONとなっています。
スピーカーは未対応だそうです。
まとめ
さすがに高いだけあって高機能ですね。夢が広がります。

