Communication Class and Controller Class (ControllerForMbed Class)

Dependencies:   SoftPWM

Committer:
kikuchi8810
Date:
Thu Dec 23 08:56:26 2021 +0000
Revision:
2:fd0c21600586
Parent:
0:a33375289d79
modified

Who changed what in which revision?

UserRevisionLine numberNew contents of line
kikuchi8810 0:a33375289d79 1 #ifndef DEFINE_H
kikuchi8810 0:a33375289d79 2 #define DEFINE_H
kikuchi8810 0:a33375289d79 3
kikuchi8810 2:fd0c21600586 4 #include "platform/mbed_thread.h"
kikuchi8810 2:fd0c21600586 5
kikuchi8810 0:a33375289d79 6 struct ControllerData{
kikuchi8810 0:a33375289d79 7 unsigned int ButtonState;
kikuchi8810 0:a33375289d79 8 uint8_t RJoyX, RJoyY, LJoyX, LJoyY;
kikuchi8810 0:a33375289d79 9 };
kikuchi8810 0:a33375289d79 10
kikuchi8810 0:a33375289d79 11 // >>> Controllerまわりで使用>>>>>>>>>>>>>>>>>>>>>
kikuchi8810 0:a33375289d79 12 #define CON_ADACHI (0)
kikuchi8810 0:a33375289d79 13 #define CON_ELECOM (1)
kikuchi8810 0:a33375289d79 14 #define CON_DS4 (2)
kikuchi8810 0:a33375289d79 15
kikuchi8810 0:a33375289d79 16 #define CON_TYPE (CON_DS4)
kikuchi8810 0:a33375289d79 17
kikuchi8810 0:a33375289d79 18 #if CON_TYPE == CON_ADACHI
kikuchi8810 0:a33375289d79 19 #define MASK_BUTTON_UP 0x01
kikuchi8810 0:a33375289d79 20 #define MASK_BUTTON_RIGHT 0x02
kikuchi8810 0:a33375289d79 21 #define MASK_BUTTON_DOWN 0x04
kikuchi8810 0:a33375289d79 22 #define MASK_BUTTON_LEFT 0x08
kikuchi8810 0:a33375289d79 23 #define MASK_BUTTON_R1 0x10
kikuchi8810 0:a33375289d79 24 #define MASK_BUTTON_R2 0x20
kikuchi8810 0:a33375289d79 25 #define MASK_BUTTON_L1 0x40
kikuchi8810 0:a33375289d79 26 #define MASK_BUTTON_L2 0x80
kikuchi8810 0:a33375289d79 27
kikuchi8810 0:a33375289d79 28 #define BUTTON_UP 1
kikuchi8810 0:a33375289d79 29 #define BUTTON_RIGHT 2
kikuchi8810 0:a33375289d79 30 #define BUTTON_DOWN 3
kikuchi8810 0:a33375289d79 31 #define BUTTON_LEFT 4
kikuchi8810 0:a33375289d79 32 #define BUTTON_R1 5
kikuchi8810 0:a33375289d79 33 #define BUTTON_R2 6
kikuchi8810 0:a33375289d79 34 #define BUTTON_L1 7
kikuchi8810 0:a33375289d79 35 #define BUTTON_L2 8
kikuchi8810 0:a33375289d79 36
kikuchi8810 0:a33375289d79 37 #elif CON_TYPE == CON_ELECOM || CON_TYPE == CON_DS4
kikuchi8810 0:a33375289d79 38 #define MASK_BUTTON_X 0x0001
kikuchi8810 0:a33375289d79 39 #define MASK_BUTTON_Y 0x0002
kikuchi8810 0:a33375289d79 40 #define MASK_BUTTON_A 0x0004
kikuchi8810 0:a33375289d79 41 #define MASK_BUTTON_B 0x0008
kikuchi8810 0:a33375289d79 42
kikuchi8810 0:a33375289d79 43 #define MASK_BUTTON_SHIKAKU 0x0001
kikuchi8810 0:a33375289d79 44 #define MASK_BUTTON_SANKAKU 0x0002
kikuchi8810 0:a33375289d79 45 #define MASK_BUTTON_BATU 0x0004
kikuchi8810 0:a33375289d79 46 #define MASK_BUTTON_MARU 0x0008
kikuchi8810 0:a33375289d79 47
kikuchi8810 0:a33375289d79 48 #define MASK_BUTTON_L1 0x0010
kikuchi8810 0:a33375289d79 49 #define MASK_BUTTON_R1 0x0020
kikuchi8810 0:a33375289d79 50 #define MASK_BUTTON_L2 0x0040
kikuchi8810 0:a33375289d79 51 #define MASK_BUTTON_R2 0x0080
kikuchi8810 0:a33375289d79 52
kikuchi8810 0:a33375289d79 53 #define MASK_BUTTON_PS 0x0200 // PS4のときはPSボタン
kikuchi8810 0:a33375289d79 54 #define MASK_BUTTON_PAD 0x0100 // PS4のときはパッド
kikuchi8810 0:a33375289d79 55 #define MASK_BUTTON_JOY_L 0x0100
kikuchi8810 0:a33375289d79 56 #define MASK_BUTTON_JOY_R 0x0200
kikuchi8810 0:a33375289d79 57 #define MASK_BUTTON_BACK 0x0400
kikuchi8810 0:a33375289d79 58 #define MASK_BUTTON_START 0x0800
kikuchi8810 0:a33375289d79 59 #define MASK_BUTTON_SHARE 0x0400
kikuchi8810 0:a33375289d79 60 #define MASK_BUTTON_OPTION 0x0800
kikuchi8810 0:a33375289d79 61
kikuchi8810 0:a33375289d79 62 #define MASK_BUTTON_UP 0x1000
kikuchi8810 0:a33375289d79 63 #define MASK_BUTTON_RIGHT 0x2000
kikuchi8810 0:a33375289d79 64 #define MASK_BUTTON_DOWN 0x4000
kikuchi8810 0:a33375289d79 65 #define MASK_BUTTON_LEFT 0x8000
kikuchi8810 0:a33375289d79 66
kikuchi8810 0:a33375289d79 67 #define BUTTON_UP 12
kikuchi8810 0:a33375289d79 68 #define BUTTON_RIGHT 13
kikuchi8810 0:a33375289d79 69 #define BUTTON_DOWN 14
kikuchi8810 0:a33375289d79 70 #define BUTTON_LEFT 15
kikuchi8810 0:a33375289d79 71 #define BUTTON_R1 5
kikuchi8810 0:a33375289d79 72 #define BUTTON_R2 7
kikuchi8810 0:a33375289d79 73 #define BUTTON_L1 4
kikuchi8810 0:a33375289d79 74 #define BUTTON_L2 6
kikuchi8810 0:a33375289d79 75
kikuchi8810 0:a33375289d79 76 #endif
kikuchi8810 0:a33375289d79 77 // <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
kikuchi8810 0:a33375289d79 78
kikuchi8810 0:a33375289d79 79 #endif