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

Dependencies:   mbed

Fork of F3RC_syudou_master by F3RC1班

User.cpp

Committer:
abcdefgh
Date:
2017-04-29
Revision:
15:c5258a4dee75
Parent:
14:5c92c3c78290
Child:
16:b232fd9ee9c2

File content as of revision 15:c5258a4dee75:

#include "Utils.h"
#include "USBHost.h"
#include "hci.h"
#include "ps3.h"
#include "User.h"

#include "mbed.h"

int RSX,RSY,LSX,LSY,BSU,BSL;
//これより下に関数外に書く要素を記入する
PwmOut led1(LED1);
PwmOut led2(LED2);
DigitalOut led3(LED3);
DigitalOut led4(LED4);

void UserLoopSetting(){
    //一度だけ行いたい初期設定をここに書く
    led1.period_ms(20);
}

void UserLoop(char n,const u8* data){
    u16 ButtonState;
    if(n==0){//有線Ps3USB.cpp
        RSX = ((ps3report*)data)->RightStickX;
        RSY = ((ps3report*)data)->RightStickY;
        LSX = ((ps3report*)data)->LeftStickX;
        LSY = ((ps3report*)data)->LeftStickY;
        BSU = (u8)(((ps3report*)data)->ButtonState & 0x00ff);
        BSL = (u8)(((ps3report*)data)->ButtonState >> 8);
        //ボタンの処理
        ButtonState =  ((ps3report*)data)->ButtonState;
    }else {//無線TestShell.cpp
        RSX = ((ps3report*)(data + 1))->RightStickX;
        RSY = ((ps3report*)(data + 1))->RightStickY;
        LSX = ((ps3report*)(data + 1))->LeftStickX;
        LSY = ((ps3report*)(data + 1))->LeftStickY;
        BSU = (u8)(((ps3report*)(data + 1))->ButtonState & 0x00ff);
        BSL = (u8)(((ps3report*)(data + 1))->ButtonState >> 8);
        //ボタンの処理
        ButtonState =  ((ps3report*)(data + 1))->ButtonState;
    }
    //ここより下にプログラムを書く
    
    
    //データ取得例
    if((ButtonState >> BUTTONCIRCLE)&1 == 1) {
        led1 = 1;
        //○が押されたとき
    }else{
        led1 = 0;
        //○を押してないとき
        }
        
    led1=LSX/256.0f;
    led2=LSY/256.0f;
    led3=ButtonState & 0x0400;  //L1の状態
    led4=ButtonState & 0x0800;  //R1の状態
    //値の取得はps3.hを参照
    //ここまでプログラム例    実機に乗せるときは消して大丈夫です
    
    
        
}