another
Dependencies: mbed KondoServoLibrary Encoder
User.cpp@17:348c660ea6f6, 2019-09-11 (annotated)
- Committer:
- o2132613
- Date:
- Wed Sep 11 07:33:59 2019 +0000
- Revision:
- 17:348c660ea6f6
- Parent:
- 16:6837647755fe
- Child:
- 18:f7c587f0f8b8
test
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
hirokimineshita | 0:736c76a75def | 1 | #include "Utils.h" |
hirokimineshita | 0:736c76a75def | 2 | #include "USBHost.h" |
hirokimineshita | 0:736c76a75def | 3 | #include "hci.h" |
hirokimineshita | 0:736c76a75def | 4 | #include "ps3.h" |
hirokimineshita | 0:736c76a75def | 5 | #include "User.h" |
hirokimineshita | 0:736c76a75def | 6 | |
hirokimineshita | 0:736c76a75def | 7 | #include "mbed.h" |
hirokimineshita | 0:736c76a75def | 8 | |
hirokimineshita | 0:736c76a75def | 9 | int RSX,RSY,LSX,LSY,BSU,BSL; |
hirokimineshita | 9:e5437ba3e920 | 10 | //これより下に関数外に書く要素を記入する |
o2132613 | 17:348c660ea6f6 | 11 | PwmOut servo(p21); //check survo pin |
o2132613 | 17:348c660ea6f6 | 12 | SPI spi(p5,p6,p7); |
o2132613 | 17:348c660ea6f6 | 13 | DigitalOut cs(p8); |
o2132613 | 17:348c660ea6f6 | 14 | int Speed_Mode = 2 ; |
o2132613 | 17:348c660ea6f6 | 15 | int send; |
o2132613 | 17:348c660ea6f6 | 16 | |
baba2357 | 11:86d717718dbf | 17 | |
o2132613 | 17:348c660ea6f6 | 18 | void UserLoopSetting() |
o2132613 | 17:348c660ea6f6 | 19 | { |
o2132613 | 17:348c660ea6f6 | 20 | spi.format(8,3); |
o2132613 | 17:348c660ea6f6 | 21 | spi.frequency(1000000); |
o2132613 | 17:348c660ea6f6 | 22 | servo.pulsewidth_us(1450); |
hirokimineshita | 0:736c76a75def | 23 | } |
o2132613 | 17:348c660ea6f6 | 24 | void UserLoop(char n,const u8* data) |
o2132613 | 17:348c660ea6f6 | 25 | { |
o2132613 | 17:348c660ea6f6 | 26 | printf("start"); |
hirokimineshita | 0:736c76a75def | 27 | u16 ButtonState; |
o2132613 | 17:348c660ea6f6 | 28 | if(n==0) { //有線Ps3USB.cpp |
hirokimineshita | 0:736c76a75def | 29 | RSX = ((ps3report*)data)->RightStickX; |
hirokimineshita | 0:736c76a75def | 30 | RSY = ((ps3report*)data)->RightStickY; |
hirokimineshita | 0:736c76a75def | 31 | LSX = ((ps3report*)data)->LeftStickX; |
hirokimineshita | 0:736c76a75def | 32 | LSY = ((ps3report*)data)->LeftStickY; |
hirokimineshita | 0:736c76a75def | 33 | BSU = (u8)(((ps3report*)data)->ButtonState & 0x00ff); |
hirokimineshita | 0:736c76a75def | 34 | BSL = (u8)(((ps3report*)data)->ButtonState >> 8); |
hirokimineshita | 0:736c76a75def | 35 | //ボタンの処理 |
hirokimineshita | 0:736c76a75def | 36 | ButtonState = ((ps3report*)data)->ButtonState; |
o2132613 | 17:348c660ea6f6 | 37 | } else {//無線TestShell.cpp |
hirokimineshita | 0:736c76a75def | 38 | RSX = ((ps3report*)(data + 1))->RightStickX; |
hirokimineshita | 0:736c76a75def | 39 | RSY = ((ps3report*)(data + 1))->RightStickY; |
hirokimineshita | 0:736c76a75def | 40 | LSX = ((ps3report*)(data + 1))->LeftStickX; |
hirokimineshita | 0:736c76a75def | 41 | LSY = ((ps3report*)(data + 1))->LeftStickY; |
hirokimineshita | 0:736c76a75def | 42 | BSU = (u8)(((ps3report*)(data + 1))->ButtonState & 0x00ff); |
hirokimineshita | 0:736c76a75def | 43 | BSL = (u8)(((ps3report*)(data + 1))->ButtonState >> 8); |
hirokimineshita | 0:736c76a75def | 44 | //ボタンの処理 |
hirokimineshita | 0:736c76a75def | 45 | ButtonState = ((ps3report*)(data + 1))->ButtonState; |
hirokimineshita | 0:736c76a75def | 46 | } |
hirokimineshita | 0:736c76a75def | 47 | //ここより下にプログラムを書く |
o2132613 | 17:348c660ea6f6 | 48 | //spi通信用プログラム |
o2132613 | 17:348c660ea6f6 | 49 | send = 0; |
o2132613 | 17:348c660ea6f6 | 50 | if((ButtonState >> BUTTONUP)&1 == 1&&(ButtonState >> BUTTONL1)&1 == 1)//UPL1 |
o2132613 | 17:348c660ea6f6 | 51 | { |
o2132613 | 17:348c660ea6f6 | 52 | send = 84; |
o2132613 | 17:348c660ea6f6 | 53 | }else if ((ButtonState >> BUTTONDOWN)&1 == 1&&(ButtonState >> BUTTONR1)&1 == 1)//DownR1 |
o2132613 | 17:348c660ea6f6 | 54 | { |
o2132613 | 17:348c660ea6f6 | 55 | send = 168; |
o2132613 | 17:348c660ea6f6 | 56 | }else if ((ButtonState >> BUTTONUP)&1 == 1&&(ButtonState >> BUTTONR1)&1 == 1)//UPR1 |
o2132613 | 17:348c660ea6f6 | 57 | { |
o2132613 | 17:348c660ea6f6 | 58 | send = 148; |
o2132613 | 17:348c660ea6f6 | 59 | }else if ((ButtonState >> BUTTONDOWN)&1 == 1&&(ButtonState >> BUTTONL1)&1 == 1)//DownL1 |
o2132613 | 17:348c660ea6f6 | 60 | { |
o2132613 | 17:348c660ea6f6 | 61 | send = 104; |
o2132613 | 17:348c660ea6f6 | 62 | }else if((ButtonState >> BUTTONUP)&1 == 1) |
o2132613 | 17:348c660ea6f6 | 63 | {//対応するボタンを書く(今回上ボタン |
o2132613 | 17:348c660ea6f6 | 64 | send = 20; |
o2132613 | 17:348c660ea6f6 | 65 | }else if((ButtonState >> BUTTONDOWN)&1 == 1) |
o2132613 | 17:348c660ea6f6 | 66 | {//対応するボタンを書く(今回下ボタン |
o2132613 | 17:348c660ea6f6 | 67 | send = 40; |
o2132613 | 17:348c660ea6f6 | 68 | }else if((ButtonState >> BUTTONL1)&1 == 1) |
o2132613 | 17:348c660ea6f6 | 69 | {//対応するボタンを書く(今回L1ボタン |
o2132613 | 17:348c660ea6f6 | 70 | send = 100; |
o2132613 | 17:348c660ea6f6 | 71 | }else if((ButtonState >> BUTTONR1)&1 == 1) |
o2132613 | 17:348c660ea6f6 | 72 | {//対応するボタンを書く(今回R1ボタン |
o2132613 | 17:348c660ea6f6 | 73 | send = 152; |
abcdefgh | 13:3d7a8cb91eeb | 74 | }else{ |
o2132613 | 17:348c660ea6f6 | 75 | send = 0; |
o2132613 | 17:348c660ea6f6 | 76 | } |
o2132613 | 17:348c660ea6f6 | 77 | if((ButtonState >> BUTTONL2)&1 == 1&&Speed_Mode>1) {//対応するボタンを書く(今回L2ボタン |
o2132613 | 17:348c660ea6f6 | 78 | Speed_Mode-=1; |
o2132613 | 17:348c660ea6f6 | 79 | wait(0.1); |
o2132613 | 17:348c660ea6f6 | 80 | }else if((ButtonState >> BUTTONR2)&1 == 1&&Speed_Mode<3) {//対応するボタンを書く(今回R2ボタン |
o2132613 | 17:348c660ea6f6 | 81 | Speed_Mode+=1; |
o2132613 | 17:348c660ea6f6 | 82 | wait(0.1); |
o2132613 | 17:348c660ea6f6 | 83 | }else{ |
o2132613 | 17:348c660ea6f6 | 84 | break; |
o2132613 | 17:348c660ea6f6 | 85 | } |
o2132613 | 17:348c660ea6f6 | 86 | if((ButtonState >> BUTTONTRIANGEL)&1 == 1) {//対応するボタンを書く(今回△ボタン |
o2132613 | 17:348c660ea6f6 | 87 | servo.pulsewidth_us(1450); |
o2132613 | 17:348c660ea6f6 | 88 | } else if((ButtonState >> BUTTONCROSS)&1 == 1) {//対応するボタンを書く(今回×ボタン |
o2132613 | 17:348c660ea6f6 | 89 | servo.pulsewidth_us(2400); |
o2132613 | 17:348c660ea6f6 | 90 | } |
o2132613 | 17:348c660ea6f6 | 91 | send += Speed_Mode; |
o2132613 | 17:348c660ea6f6 | 92 | spi. write(send); |
o2132613 | 17:348c660ea6f6 | 93 | printf("%a\r\n",send); |
hirokimineshita | 0:736c76a75def | 94 | } |