Suga Koubou 製 PS_PADライブラリ https://developer.mbed.org/users/okini3939/code/PS_PAD/ を改造したもの。単に__rbitが使えなかったので置き換えただけ。

Dependents:   pscontroller project_beta

Fork of PS_PAD by Suga koubou

Committer:
Nyakkey from Desktop
Date:
Mon Nov 20 03:58:33 2017 +0900
Revision:
3:f5eee5325eed
Parent:
2:14f34d92a797
update to mbed-os-5

Who changed what in which revision?

UserRevisionLine numberNew contents of line
okini3939 0:6eeefcf5a37a 1 /*
okini3939 0:6eeefcf5a37a 2 * PlayStation Controller library
okini3939 0:6eeefcf5a37a 3 * Copyright (c) 2013 Hiroshi Suga
okini3939 0:6eeefcf5a37a 4 */
okini3939 0:6eeefcf5a37a 5
okini3939 0:6eeefcf5a37a 6 #include "mbed.h"
okini3939 0:6eeefcf5a37a 7
okini3939 0:6eeefcf5a37a 8 class PS_PAD {
okini3939 0:6eeefcf5a37a 9 public:
okini3939 0:6eeefcf5a37a 10 enum TYPE {
okini3939 0:6eeefcf5a37a 11 PAD_LEFT,
okini3939 0:6eeefcf5a37a 12 PAD_BOTTOM,
okini3939 0:6eeefcf5a37a 13 PAD_RIGHT,
okini3939 0:6eeefcf5a37a 14 PAD_TOP,
okini3939 0:6eeefcf5a37a 15 PAD_START,
okini3939 0:6eeefcf5a37a 16 ANALOG_LEFT,
okini3939 0:6eeefcf5a37a 17 ANALOG_RIGHT,
okini3939 0:6eeefcf5a37a 18 PAD_SELECT,
okini3939 0:6eeefcf5a37a 19 PAD_SQUARE,
okini3939 0:6eeefcf5a37a 20 PAD_X,
okini3939 0:6eeefcf5a37a 21 PAD_CIRCLE,
okini3939 0:6eeefcf5a37a 22 PAD_TRIANGLE,
okini3939 0:6eeefcf5a37a 23 PAD_R1,
okini3939 0:6eeefcf5a37a 24 PAD_L1,
okini3939 0:6eeefcf5a37a 25 PAD_R2,
okini3939 0:6eeefcf5a37a 26 PAD_L2,
okini3939 1:840370e1dcce 27 BUTTONS,
okini3939 0:6eeefcf5a37a 28 ANALOG_RX,
okini3939 0:6eeefcf5a37a 29 ANALOG_RY,
okini3939 0:6eeefcf5a37a 30 ANALOG_LX,
okini3939 0:6eeefcf5a37a 31 ANALOG_LY,
okini3939 0:6eeefcf5a37a 32 };
okini3939 0:6eeefcf5a37a 33
Nyakkey from Desktop 3:f5eee5325eed 34 //PS_PAD (PinName mosi, PinName miso, PinName sck, PinName cs);
Nyakkey from Desktop 3:f5eee5325eed 35 PS_PAD (SPI *spi, PinName cs);
okini3939 0:6eeefcf5a37a 36
okini3939 0:6eeefcf5a37a 37 int init ();
okini3939 0:6eeefcf5a37a 38 int poll ();
okini3939 0:6eeefcf5a37a 39 int read (TYPE t);
okini3939 0:6eeefcf5a37a 40 int vibration (int v1, int v2);
okini3939 0:6eeefcf5a37a 41
okini3939 0:6eeefcf5a37a 42 private:
Nyakkey from Desktop 3:f5eee5325eed 43 SPI *_spi;
okini3939 0:6eeefcf5a37a 44 DigitalOut _cs;
okini3939 1:840370e1dcce 45 uint8_t _pad[6];
okini3939 0:6eeefcf5a37a 46 int _vib1, _vib2;
okini3939 1:840370e1dcce 47 bool _connected;
okini3939 0:6eeefcf5a37a 48
okini3939 0:6eeefcf5a37a 49 int send (const char *cmd, int len, char *dat);
Nyakkey from Desktop 3:f5eee5325eed 50 uint32_t bitflip32(uint32_t val);
okini3939 0:6eeefcf5a37a 51 };