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.
Arduino_PRO.txt@1:b7d47b40707d, 2019-03-01 (annotated)
- Committer:
- kitta5687
- Date:
- Fri Mar 01 08:33:43 2019 +0000
- Revision:
- 1:b7d47b40707d
- Child:
- 2:422d5d7602cc
20190301 Kita
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| kitta5687 | 1:b7d47b40707d | 1 | #include <PS3BT.h> |
| kitta5687 | 1:b7d47b40707d | 2 | #include <usbhub.h> |
| kitta5687 | 1:b7d47b40707d | 3 | |
| kitta5687 | 1:b7d47b40707d | 4 | #ifdef dobogusinclude |
| kitta5687 | 1:b7d47b40707d | 5 | #include <spi4teensy3.h> |
| kitta5687 | 1:b7d47b40707d | 6 | #endif |
| kitta5687 | 1:b7d47b40707d | 7 | #include <SPI.h> |
| kitta5687 | 1:b7d47b40707d | 8 | |
| kitta5687 | 1:b7d47b40707d | 9 | USB Usb; |
| kitta5687 | 1:b7d47b40707d | 10 | BTD Btd(&Usb); // You have to create the Bluetooth Dongle instance like so |
| kitta5687 | 1:b7d47b40707d | 11 | PS3BT PS3(&Btd); // This will just create the instance |
| kitta5687 | 1:b7d47b40707d | 12 | //PS3BT PS3(&Btd, 0x00, 0x15, 0x83, 0x3D, 0x0A, 0x57); // This will also store the bluetooth address - this can be obtained from the dongle when running the sketch |
| kitta5687 | 1:b7d47b40707d | 13 | |
| kitta5687 | 1:b7d47b40707d | 14 | unsigned long botton_val = 0; |
| kitta5687 | 1:b7d47b40707d | 15 | |
| kitta5687 | 1:b7d47b40707d | 16 | int sthick[6] = { 0, 0, 0, 0, 0, 0 };//アナログ値格納用:左スティック,右スティック,L2,R2 |
| kitta5687 | 1:b7d47b40707d | 17 | int check = 0; |
| kitta5687 | 1:b7d47b40707d | 18 | uint8_t str[9] = { 0, 0, 0, 0, 0, 0, 0, 0, 0 };//送信データ格納用 |
| kitta5687 | 1:b7d47b40707d | 19 | |
| kitta5687 | 1:b7d47b40707d | 20 | void setup() { |
| kitta5687 | 1:b7d47b40707d | 21 | Serial.begin(57600); |
| kitta5687 | 1:b7d47b40707d | 22 | //Serial.begin(115200); |
| kitta5687 | 1:b7d47b40707d | 23 | #if !defined(__MIPSEL__) |
| kitta5687 | 1:b7d47b40707d | 24 | while (!Serial); // Wait for serial port to connect - used on Leonardo, Teensy and other boards with built-in USB CDC serial connection |
| kitta5687 | 1:b7d47b40707d | 25 | #endif |
| kitta5687 | 1:b7d47b40707d | 26 | if (Usb.Init() == -1) { |
| kitta5687 | 1:b7d47b40707d | 27 | while (1); //halt |
| kitta5687 | 1:b7d47b40707d | 28 | } |
| kitta5687 | 1:b7d47b40707d | 29 | } |
| kitta5687 | 1:b7d47b40707d | 30 | void loop() { |
| kitta5687 | 1:b7d47b40707d | 31 | Usb.Task(); |
| kitta5687 | 1:b7d47b40707d | 32 | if (PS3.PS3Connected || PS3.PS3NavigationConnected) { |
| kitta5687 | 1:b7d47b40707d | 33 | sthick[0] = PS3.getAnalogHat(LeftHatX); |
| kitta5687 | 1:b7d47b40707d | 34 | sthick[1] = PS3.getAnalogHat(LeftHatY); |
| kitta5687 | 1:b7d47b40707d | 35 | sthick[2] = PS3.getAnalogHat(RightHatX); |
| kitta5687 | 1:b7d47b40707d | 36 | sthick[3] = PS3.getAnalogHat(RightHatY); |
| kitta5687 | 1:b7d47b40707d | 37 | sthick[4] = PS3.getAnalogButton(L2); |
| kitta5687 | 1:b7d47b40707d | 38 | sthick[5] = PS3.getAnalogButton(R2); |
| kitta5687 | 1:b7d47b40707d | 39 | |
| kitta5687 | 1:b7d47b40707d | 40 | if (PS3.getButtonClick(PS)) bitSet(botton_val, 0); //PS3.disconnect(); |
| kitta5687 | 1:b7d47b40707d | 41 | if (PS3.getButtonClick(TRIANGLE)) bitSet(botton_val, 1); |
| kitta5687 | 1:b7d47b40707d | 42 | if (PS3.getButtonClick(CIRCLE)) bitSet(botton_val, 2); |
| kitta5687 | 1:b7d47b40707d | 43 | if (PS3.getButtonClick(CROSS)) bitSet(botton_val, 3); |
| kitta5687 | 1:b7d47b40707d | 44 | if (PS3.getButtonClick(SQUARE)) bitSet(botton_val, 4); |
| kitta5687 | 1:b7d47b40707d | 45 | |
| kitta5687 | 1:b7d47b40707d | 46 | if (PS3.getButtonClick(UP)) bitSet(botton_val, 5); |
| kitta5687 | 1:b7d47b40707d | 47 | if (PS3.getButtonClick(RIGHT)) bitSet(botton_val, 6); |
| kitta5687 | 1:b7d47b40707d | 48 | if (PS3.getButtonClick(DOWN)) bitSet(botton_val, 7); |
| kitta5687 | 1:b7d47b40707d | 49 | if (PS3.getButtonClick(LEFT)) bitSet(botton_val, 8); |
| kitta5687 | 1:b7d47b40707d | 50 | |
| kitta5687 | 1:b7d47b40707d | 51 | if (PS3.getButtonClick(L1)) bitSet(botton_val, 9); |
| kitta5687 | 1:b7d47b40707d | 52 | if (PS3.getButtonClick(L3)) bitSet(botton_val, 10); |
| kitta5687 | 1:b7d47b40707d | 53 | if (PS3.getButtonClick(R1)) bitSet(botton_val, 11); |
| kitta5687 | 1:b7d47b40707d | 54 | if (PS3.getButtonClick(R3)) bitSet(botton_val, 12); |
| kitta5687 | 1:b7d47b40707d | 55 | |
| kitta5687 | 1:b7d47b40707d | 56 | if (PS3.getButtonClick(SELECT)) bitSet(botton_val, 13); |
| kitta5687 | 1:b7d47b40707d | 57 | if (PS3.getButtonClick(START)) bitSet(botton_val, 14); |
| kitta5687 | 1:b7d47b40707d | 58 | |
| kitta5687 | 1:b7d47b40707d | 59 | /***********************************************/ |
| kitta5687 | 1:b7d47b40707d | 60 | str[0] = botton_val & 0x00ff; |
| kitta5687 | 1:b7d47b40707d | 61 | str[1] = botton_val >> 8; |
| kitta5687 | 1:b7d47b40707d | 62 | botton_val = 0; |
| kitta5687 | 1:b7d47b40707d | 63 | |
| kitta5687 | 1:b7d47b40707d | 64 | for (int i = 2; i < 8; i++) { |
| kitta5687 | 1:b7d47b40707d | 65 | str[i] = sthick[i - 2]; |
| kitta5687 | 1:b7d47b40707d | 66 | } |
| kitta5687 | 1:b7d47b40707d | 67 | |
| kitta5687 | 1:b7d47b40707d | 68 | //str[8] = 0; |
| kitta5687 | 1:b7d47b40707d | 69 | str[8] = PS3.PS3Connected;//コントローラが接続されているか確認 |
| kitta5687 | 1:b7d47b40707d | 70 | /***********************************************/ |
| kitta5687 | 1:b7d47b40707d | 71 | check = Serial.read();//nucleoからの受信データ確認 |
| kitta5687 | 1:b7d47b40707d | 72 | |
| kitta5687 | 1:b7d47b40707d | 73 | if (check == 1) Serial.write(str, 9); |
| kitta5687 | 1:b7d47b40707d | 74 | else{} |
| kitta5687 | 1:b7d47b40707d | 75 | |
| kitta5687 | 1:b7d47b40707d | 76 | Serial.flush(); |
| kitta5687 | 1:b7d47b40707d | 77 | check = 0; |
| kitta5687 | 1:b7d47b40707d | 78 | } |
| kitta5687 | 1:b7d47b40707d | 79 | } |