ももいくん

Dependencies:   mbed

Fork of 2016_Sp_momoi_taka by 新部内対抗5班

Revision:
12:d811e29e469a
Child:
13:9e04b53e875a
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/momoi_taka.cpp	Thu Jun 09 11:58:32 2016 +0000
@@ -0,0 +1,204 @@
+#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);
+*/
+
+
+
+
+
+
+
+
+//momoi
+
+//MD1 right
+
+PwmOut motorRightOne (p23);
+PwmOut motorRightTwo (p24);
+
+//MD2 left
+PwmOut motorLeftOne (p21);
+PwmOut motorLeftTwo (p22);
+
+//MD3 Arm1
+PwmOut armOneJun(p26);
+DigitalOut chocolateOne (p30);
+DigitalOut chocolateTwo (p29);
+
+//MD4 Arm2
+PwmOut armTwoTaka(p25);
+DigitalOut brownieOne (p6);
+DigitalOut brownieTwo (p5);
+
+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(LSY>140 && ((ButtonState >> BUTTONLANALOG)&1) == 1) {
+         motorRightOne = 0.8;
+        motorRightTwo = 0;
+        motorLeftOne = 0.9;
+        motorLeftTwo = 0;
+    } else if(LSY<110 && ((ButtonState >> BUTTONLANALOG)&1) == 1) {
+         motorRightOne = 0;
+        motorRightTwo = 0.8;
+        motorLeftOne = 0;
+        motorLeftTwo = 0.9;        
+    
+     
+    } else if(LSY>140 && ((ButtonState >> BUTTONL1)&1) == 0 && ((ButtonState >> BUTTONR1)&1) == 0) {//forward
+        motorRightOne = 0.4;
+        motorRightTwo = 0;
+        motorLeftOne = 0.5;
+        motorLeftTwo = 0;
+    } else if(LSY>140 && ((ButtonState >> BUTTONL1)&1) == 1 && ((ButtonState >> BUTTONR1)&1) == 0) {//turn right
+        motorRightOne = 0;
+        motorRightTwo = 0.4;
+        motorLeftOne = 0.5;
+        motorLeftTwo = 0;
+    } else if(LSY>140 && ((ButtonState >> BUTTONL1)&1) == 0 && ((ButtonState >> BUTTONR1)&1) == 1) {//turn left
+        motorRightOne = 0.4;
+        motorRightTwo = 0;
+        motorLeftOne = 0;
+        motorLeftTwo = 0.5;
+    }else if(LSY>140 && ((ButtonState >> BUTTONL1)&1) == 1 && ((ButtonState >> BUTTONR1)&1) == 1) {//forward
+        motorRightOne = 0.4;
+        motorRightTwo = 0;
+        motorLeftOne = 0.5;
+        motorLeftTwo = 0;
+    } else if(LSY<110 && ((ButtonState >> BUTTONL1)&1) == 0 && ((ButtonState >> BUTTONR1)&1) == 0) { //back
+        motorRightOne = 0;
+        motorRightTwo = 0.4;
+        motorLeftOne = 0;
+        motorLeftTwo = 0.5;
+    } else if (LSY<110 && ((ButtonState >> BUTTONL1)&1) == 1 && ((ButtonState >> BUTTONR1)&1) == 0) { //turn right
+        motorRightOne = 0;
+        motorRightTwo = 0.4;
+        motorLeftOne = 0.5;
+        motorLeftTwo = 0;
+    } else if(LSY<110 && ((ButtonState >> BUTTONL1)&1) == 0 && ((ButtonState >> BUTTONR1)&1) == 1) {//turn left
+        motorRightOne = 0.4;
+        motorRightTwo = 0;
+        motorLeftOne = 0;
+        motorLeftTwo = 0.5;
+    }else if (LSY<110 && ((ButtonState >> BUTTONL1)&1) == 1 && ((ButtonState >> BUTTONR1)&1) == 1) {//back
+        motorRightOne = 0;
+        motorRightTwo = 0.4;
+        motorLeftOne = 0;
+        motorLeftTwo = 0.5;
+    } else if(LSY>=110 && RSY<= 140 && ((ButtonState >> BUTTONL1)&1) == 0 && ((ButtonState >> BUTTONR1)&1) == 0) {//stop
+        motorRightOne = 0;
+        motorRightTwo = 0;
+        motorLeftOne = 0;
+        motorLeftTwo = 0;
+    } else if(LSY>=110 && RSY<= 140 && ((ButtonState >> BUTTONL1)&1) ==1  && ((ButtonState >> BUTTONR1)&1) == 0) { //turn right
+        motorRightOne = 0;
+        motorRightTwo = 0.4;
+        motorLeftOne = 0.5;
+        motorLeftTwo = 0;
+    } else if(LSY>=110 && RSY<= 140 && ((ButtonState >> BUTTONL1)&1) ==0  && ((ButtonState >> BUTTONR1)&1) == 1) { //turn left
+        motorRightOne = 0.4;
+        motorRightTwo = 0;
+        motorLeftOne = 0;
+        motorLeftTwo = 0.5;
+    } else if(LSY>=110 && RSY<= 140 && ((ButtonState >> BUTTONL1)&1) == 1 && ((ButtonState >> BUTTONR1)&1) == 1) { //stop
+        motorRightOne = 0;
+        motorRightTwo = 0;
+        motorLeftOne = 0;
+        motorLeftTwo = 0;
+    }else{
+        motorRightOne = 0;
+        motorRightTwo = 0;
+        motorLeftOne = 0;
+        motorLeftTwo = 0;
+        }
+
+    if(((ButtonState >> BUTTONDOWN)&1) == 1 && ((ButtonState >> BUTTONUP)&1) == 0) { 
+        armOneJun = 0.8;
+        chocolateOne = 1;
+        chocolateTwo = 0;
+    } else if (((ButtonState >> BUTTONDOWN)&1) == 0 && ((ButtonState >> BUTTONUP)&1) == 1) {
+        armOneJun = 0.8;
+        chocolateOne = 0;
+        chocolateTwo = 1;
+    } else {
+        armOneJun = 0;
+        chocolateOne = 0;
+        chocolateTwo = 0;
+    }
+    
+    
+    if( ((ButtonState >> BUTTONSQUARE)&1) == 1 && ((ButtonState >> BUTTONCIRCLE)&1) == 0 ) { //つかむか放す
+        armTwoTaka = 0.4;
+        brownieOne = 1;
+        brownieTwo = 0;
+    } else if ( ((ButtonState >> BUTTONSQUARE)&1) == 0 && ((ButtonState >> BUTTONCIRCLE)&1) == 1 ) {
+        armTwoTaka = 0.4;
+        brownieOne = 0;
+        brownieTwo = 1;
+    } else {
+        armTwoTaka = 0;
+        brownieOne = 0;
+        brownieTwo = 0;
+    }
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    //データ取得例
+    
+    if((ButtonState >> BUTTONCIRCLE)&1) {
+        //○が押されたとき
+    }
+   
+        
+
+   //値の取得はps3.hを参照
+        
+}
\ No newline at end of file