主導機 mbed用のプログラムです

Dependencies:   mbed

Fork of PS3_BlueUSB_user_ver2 by 2017  部内対抗4班 ROBOSTEP

Committer:
hirokimineshita
Date:
Thu Apr 30 06:24:16 2015 +0000
Revision:
6:ef9eb4859743
Parent:
4:d7f5fb6fddeb
Child:
7:4bddbd4549a1
same as last one

Who changed what in which revision?

UserRevisionLine numberNew contents of line
hirokimineshita 6:ef9eb4859743 1 /** @file
hirokimineshita 6:ef9eb4859743 2 */
hirokimineshita 0:736c76a75def 3 #include "Utils.h"
hirokimineshita 0:736c76a75def 4 #include "USBHost.h"
hirokimineshita 0:736c76a75def 5 #include "hci.h"
hirokimineshita 0:736c76a75def 6 #include "ps3.h"
hirokimineshita 0:736c76a75def 7 #include "User.h"
hirokimineshita 0:736c76a75def 8
hirokimineshita 0:736c76a75def 9 #include "mbed.h"
hirokimineshita 0:736c76a75def 10
hirokimineshita 0:736c76a75def 11 //ここに関数外に書く要素を記入する
hirokimineshita 0:736c76a75def 12 int RSX,RSY,LSX,LSY,BSU,BSL;
hirokimineshita 0:736c76a75def 13 PwmOut led1(LED1);
hirokimineshita 0:736c76a75def 14 PwmOut led2(LED2);
hirokimineshita 0:736c76a75def 15 DigitalOut led3(LED3);
hirokimineshita 0:736c76a75def 16 DigitalOut led4(LED4);
hirokimineshita 0:736c76a75def 17
hirokimineshita 0:736c76a75def 18 void UserLoopSetting(){
hirokimineshita 0:736c76a75def 19 //一度だけ行いたい初期設定をここに書く
hirokimineshita 0:736c76a75def 20 led1.period_ms(20);
hirokimineshita 0:736c76a75def 21 }
hirokimineshita 0:736c76a75def 22
hirokimineshita 0:736c76a75def 23 void UserLoop(char n,const u8* data){
hirokimineshita 0:736c76a75def 24 u16 ButtonState;
hirokimineshita 0:736c76a75def 25 if(n==0){//有線Ps3USB.cpp
hirokimineshita 0:736c76a75def 26 RSX = ((ps3report*)data)->RightStickX;
hirokimineshita 0:736c76a75def 27 RSY = ((ps3report*)data)->RightStickY;
hirokimineshita 0:736c76a75def 28 LSX = ((ps3report*)data)->LeftStickX;
hirokimineshita 0:736c76a75def 29 LSY = ((ps3report*)data)->LeftStickY;
hirokimineshita 0:736c76a75def 30 BSU = (u8)(((ps3report*)data)->ButtonState & 0x00ff);
hirokimineshita 0:736c76a75def 31 BSL = (u8)(((ps3report*)data)->ButtonState >> 8);
hirokimineshita 0:736c76a75def 32 //ボタンの処理
hirokimineshita 0:736c76a75def 33 ButtonState = ((ps3report*)data)->ButtonState;
hirokimineshita 0:736c76a75def 34 }else {//無線TestShell.cpp
hirokimineshita 0:736c76a75def 35 RSX = ((ps3report*)(data + 1))->RightStickX;
hirokimineshita 0:736c76a75def 36 RSY = ((ps3report*)(data + 1))->RightStickY;
hirokimineshita 0:736c76a75def 37 LSX = ((ps3report*)(data + 1))->LeftStickX;
hirokimineshita 0:736c76a75def 38 LSY = ((ps3report*)(data + 1))->LeftStickY;
hirokimineshita 0:736c76a75def 39 BSU = (u8)(((ps3report*)(data + 1))->ButtonState & 0x00ff);
hirokimineshita 0:736c76a75def 40 BSL = (u8)(((ps3report*)(data + 1))->ButtonState >> 8);
hirokimineshita 0:736c76a75def 41 //ボタンの処理
hirokimineshita 0:736c76a75def 42 ButtonState = ((ps3report*)(data + 1))->ButtonState;
hirokimineshita 0:736c76a75def 43 }
hirokimineshita 0:736c76a75def 44 //ここより下にプログラムを書く
hirokimineshita 0:736c76a75def 45 //データ取得例
hirokimineshita 0:736c76a75def 46 if((ButtonState >> BUTTONCIRCLE)&1) {
hirokimineshita 0:736c76a75def 47 //○が押されたとき
hirokimineshita 0:736c76a75def 48 }
hirokimineshita 0:736c76a75def 49 led1=LSX/256.0f;
hirokimineshita 0:736c76a75def 50 led2=LSY/256.0f;
hirokimineshita 0:736c76a75def 51 led3=ButtonState & 0x0400; //L1の状態
hirokimineshita 0:736c76a75def 52 led4=ButtonState & 0x0800; //R1の状態
hirokimineshita 0:736c76a75def 53 //値の取得はps3.hを参照
hirokimineshita 0:736c76a75def 54 }