
code avec modifs, programme mit dans les robots pour les derniers matchs
Dependencies: mbed SerialHalfDuplex SDFileSystem liaison_Bluetooth ident_crac DISCO-F469NI_portrait
Revision 12:227c15c7ebe6, committed 2020-03-07
- Comitter:
- maximilienlv
- Date:
- Sat Mar 07 17:36:26 2020 +0000
- Parent:
- 11:848ea39838bf
- Child:
- 13:6b94eee81751
- Commit message:
- communication entre strategie et robot fonctionnelle;
Changed in this revision
--- a/Debug/debug.cpp Wed Mar 04 12:38:22 2020 +0000 +++ b/Debug/debug.cpp Sat Mar 07 17:36:26 2020 +0000 @@ -6,7 +6,7 @@ data[0]=0x01; data[1]=repertoire; data[2]=track; - SendMsgCan(SOMO, data,3); + //SendMsgCan(SOMO, data,3); } //azezaea
--- a/Globals/global.h Wed Mar 04 12:38:22 2020 +0000 +++ b/Globals/global.h Sat Mar 07 17:36:26 2020 +0000 @@ -26,6 +26,7 @@ #include "LiaisonBluetooth.h" #include "Evitement.h" +#define ROBOT_SMALL 0 //#include "peripheriques.h" extern Serial pc; extern Serial rn42_Tx;
--- a/Globals/ident_crac.lib Wed Mar 04 12:38:22 2020 +0000 +++ b/Globals/ident_crac.lib Sat Mar 07 17:36:26 2020 +0000 @@ -1,1 +1,1 @@ -https://os.mbed.com/teams/CRAC-Team/code/ident_crac/#b3e08bf1288d +https://os.mbed.com/teams/CRAC-Team/code/ident_crac/#38346e001569
--- a/Robots/Strategie_small.cpp Wed Mar 04 12:38:22 2020 +0000 +++ b/Robots/Strategie_small.cpp Sat Mar 07 17:36:26 2020 +0000 @@ -33,12 +33,13 @@ msgTx.format=CANStandard; msgTx.type=CANData; //SendMsgCan(0x5BB, &id,1); - switch(id) { - case 101: //bras gabarit - SendRawId(GABARIT_PETIT_ROBOT); + switch(id) + { + case 101: //bras avant droit + SendRawId(TEST_BRAS_1_AT); break; - case 102: //attraper presentoir avant - SendRawId(PRESENTOIR_AVANT); + case 102: //bras avant millieu + SendRawId(TEST_BRAS_2_AT); break; case 103: //attraper presentoir arriere SendRawId(PRESENTOIR_ARRIERE); @@ -77,6 +78,23 @@ break; case 110: //sol avant SendRawId(SOL_AVANT); + case 130: //sol avant + SendRawId(TEST_BRAS_1_RE); + break; + case 131: //sol avant + SendRawId(TEST_BRAS_2_RE); + break; + case 132: //sol avant + SendRawId(TEST_BRAS_3_RE); + break; + case 133: //sol avant + SendRawId(TEST_BRAS_4_RE); + break; + case 134: //sol avant + SendRawId(TEST_BRAS_5_RE); + break; + case 135: //sol avant + SendRawId(TEST_BRAS_6_RE); break; case 111: //sol arriere SendRawId(SOL_ARRIERE); @@ -91,11 +109,14 @@ SendRawId(AVANT_RELACHE); break; - case 115://relache les 3 ventouses arrieres - SendRawId(ARRIERE_RELACHE); + case 115://bras avant gauche attraper + SendRawId(TEST_BRAS_3_AT); break; - - case 116://relache une pompe + + case 116://bras arreiere droit + SendRawId(TEST_BRAS_6_AT); + break; + /* case 116://relache une pompe unsigned char arg_tempo; if(InversStrat == 1) { switch(arg1) { @@ -120,12 +141,12 @@ SendMsgCan(HACHEUR_RELEASE_ATOM, &arg_tempo,1); waitingAckFrom = 0; waitingAckID =0; + break;*/ + case 117://bras arriere millieu + SendRawId(TEST_BRAS_5_AT); break; - case 117: - SendRawId(RECROQUEVILLER); - break; - case 118: - SendRawId(VENTOUSE_AV_CENTRE_BALANCE); + case 118://bras arriere gauche + SendRawId(TEST_BRAS_4_AT); break; case 119: SendRawId(VENTOUSE_AR_CENTRE_BALANCE); @@ -203,7 +224,68 @@ waitingAckFrom = 0; waitingAckID = 0; break; - + //pompe 1 à 6 ON + case 202 : + SendRawId(TEST_VENT_1_ON); + waitingAckFrom = 0; + waitingAckID =0; + break; + case 203 : + SendRawId(TEST_VENT_2_ON); + waitingAckFrom = 0; + waitingAckID =0; + break; + case 204 : + SendRawId(TEST_VENT_3_ON); + waitingAckFrom = 0; + waitingAckID =0; + break; + case 205 : + SendRawId(TEST_VENT_4_ON); + waitingAckFrom = 0; + waitingAckID =0; + break; + case 206 : + SendRawId(TEST_VENT_5_ON); + waitingAckFrom = 0; + waitingAckID =0; + break; + case 207 : + SendRawId(TEST_VENT_6_ON); + waitingAckFrom = 0; + waitingAckID =0; + break; + case 208 : + SendRawId(TEST_VENT_1_OFF); + waitingAckFrom = 0; + waitingAckID =0; + break; + case 209 : + SendRawId(TEST_VENT_2_OFF); + waitingAckFrom = 0; + waitingAckID =0; + break; + case 210 : + SendRawId(TEST_VENT_3_OFF); + waitingAckFrom = 0; + waitingAckID =0; + break; + case 211 : + SendRawId(TEST_VENT_4_OFF); + waitingAckFrom = 0; + waitingAckID =0; + break; + case 212 : + SendRawId(TEST_VENT_5_OFF); + waitingAckFrom = 0; + waitingAckID =0; + break; + case 213 : + SendRawId(TEST_VENT_6_OFF); + waitingAckFrom = 0; + waitingAckID =0; + break; + default: retour = 0;//L'action n'existe pas, il faut utiliser le CAN
--- a/Strategie/Strategie.cpp Wed Mar 04 12:38:22 2020 +0000 +++ b/Strategie/Strategie.cpp Sat Mar 07 17:36:26 2020 +0000 @@ -464,22 +464,22 @@ TEST_NUM.Draw(BLEU, BLANC); switch(maximilien){ case 1: - SendRawId(TEST_VENT_1); + SendRawId(TEST_VENT_1_ON); break; case 2: - SendRawId(TEST_VENT_2); + SendRawId(TEST_VENT_2_ON); break; case 3: - SendRawId(TEST_VENT_3); + SendRawId(TEST_VENT_3_ON); break; case 4: - SendRawId(TEST_VENT_4); + SendRawId(TEST_VENT_4_ON); break; case 5: - SendRawId(TEST_VENT_5); + SendRawId(TEST_VENT_5_ON); break; case 6: - SendRawId(TEST_VENT_6); + SendRawId(TEST_VENT_6_ON); break; } } else if(TEST_PLUS.Touched()) { @@ -1485,9 +1485,9 @@ int tempo = 0; waitingAckID= ACK_ACTION; //On veut un ack de type action waitingAckFrom = ACKNOWLEDGE_HERKULEX; //de la part des herkulex - //tempo = doAction(instruction.arg1,instruction.arg2,instruction.arg3); - // unsigned char test=(unsigned char) tempo; - // SendMsgCan(0x5BD, &test,1); + tempo = doAction(instruction.arg1,instruction.arg2,instruction.arg3); + unsigned char test=(unsigned char) tempo; + if(tempo == 1) { //L'action est spécifique if((waitingAckFrom == 0 && waitingAckID == 0) && instruction.nextActionType == ENCHAINEMENT) { @@ -1948,8 +1948,8 @@ } break; - case SOMO: - break; + /*case SOMO: + break;*/ default: break; /*
--- a/main.cpp Wed Mar 04 12:38:22 2020 +0000 +++ b/main.cpp Sat Mar 07 17:36:26 2020 +0000 @@ -69,7 +69,7 @@ lcd.DisplayStringAt(0, 0,(uint8_t *)"Initialisation", LEFT_MODE); led1 = 1; bluetooth_init(); - //lecture_fichier(); //bloquant si pas de carte SD + lecture_fichier(); //bloquant si pas de carte SD led1 = 0; wait_ms(2000);//Attente pour que toutes les cartes se lancent et surtout le CANBlue while(true) {