Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
pspad.h
00001 /*------------------------ 00002 *-----2013/10/1------- 00003 *・通信失敗時はアナログパッドはホームポジションを返すように変更 00004 *・前回のボタンの値を表す変数を追加 00005 *・振動機能を追加(VIBRATE=1)で振動 00006 * 00007 *-----2014/4/3-------- 00008 *・PsCommのクロック操作と読み取りの順番を訂正 サンキューM田氏 00009 *---------------------------*/ 00010 00011 #ifndef PSPAD_H_ 00012 #define PSPAD_H_ 00013 00014 /*--------PSPADのアクセスの構造体------- 00015 PS--.PsRead() 00016 |---.right_x 00017 |---.right_y 00018 |---.left_x 00019 |---.left_y; 00020 |---.VIBRATE; 00021 |---.ANALOG_MODE; 00022 |---.BUTTON .WORD 00023 | |---.BIT.L2 00024 | |-.R2 00025 | |-.L1 00026 | |-.R1 00027 | |-.SANKAKU 00028 | |-.MARU 00029 | |-.BATU 00030 | |-.SIKAKU 00031 | |-.SELECT 00032 | |-.L3 00033 | |-.R3 00034 | |-.START 00035 | |-.UP 00036 | |-.RIGHT 00037 | |-.DOWN 00038 | --.LEFT 00039 ----.PERV--.right_x 00040 |---.right_y 00041 |---.left_x 00042 |---.left_y; 00043 ----.BUTTON .WORD 00044 |---.BIT.L2 00045 |-.R2 00046 |-.L1 00047 |-.R1 00048 |-.SANKAKU 00049 |-.MARU 00050 |-.BATU 00051 |-.SIKAKU 00052 |-.SELECT 00053 |-.L3 00054 |-.R3 00055 |-.START 00056 |-.UP 00057 |-.RIGHT 00058 |-.DOWN 00059 --.LEFT 00060 ---------------------------------------*/ 00061 00062 //------------------------------------------------------------------------- 00063 // Class 00064 //------------------------------------------------------------------------- 00065 class Pspad 00066 { 00067 public: 00068 Pspad(PinName dat, PinName cmd, PinName sel, PinName clk); 00069 void PsRead(void); 00070 00071 union { 00072 uint32_t WORD; 00073 struct { 00074 unsigned char L2 :1; 00075 unsigned char R2 :1; 00076 unsigned char L1 :1; 00077 unsigned char R1 :1; 00078 00079 unsigned char SANKAKU :1; 00080 unsigned char MARU :1; 00081 unsigned char BATU :1; 00082 unsigned char SIKAKU :1; 00083 00084 unsigned char SELECT :1; 00085 unsigned char L3 :1; 00086 unsigned char R3 :1; 00087 unsigned char START :1; 00088 00089 unsigned char UP :1; 00090 unsigned char RIGHT :1; 00091 unsigned char DOWN :1; 00092 unsigned char LEFT :1; 00093 } BIT; 00094 } BUTTON; 00095 int8_t right_x, right_y, left_x, left_y; 00096 unsigned char VIBRATE; 00097 unsigned char ANALOG_MODE; 00098 struct { 00099 union { 00100 uint32_t WORD; 00101 struct { 00102 unsigned char L2 :1; 00103 unsigned char R2 :1; 00104 unsigned char L1 :1; 00105 unsigned char R1 :1; 00106 00107 unsigned char SANKAKU :1; 00108 unsigned char MARU :1; 00109 unsigned char BATU :1; 00110 unsigned char SIKAKU :1; 00111 00112 unsigned char SELECT :1; 00113 unsigned char L3 :1; 00114 unsigned char R3 :1; 00115 unsigned char START :1; 00116 00117 unsigned char UP :1; 00118 unsigned char RIGHT :1; 00119 unsigned char DOWN :1; 00120 unsigned char LEFT :1; 00121 } BIT; 00122 } BUTTON; 00123 int8_t right_x, right_y, left_x, left_y; 00124 } PREV; 00125 00126 private: 00127 uint8_t PsComm(uint8_t send_data); 00128 Timer tm; 00129 DigitalIn datpin; 00130 DigitalOut cmdpin; 00131 DigitalOut selpin; 00132 DigitalOut clkpin; 00133 }; 00134 00135 #endif /* PSPAD_H_ */
Generated on Thu Jul 28 2022 12:36:35 by
