Classes et code de la partie pompe du Robot 2021
Dependencies: mbed ident_crac
main.cpp
- Committer:
- goldmas
- Date:
- 2021-01-18
- Revision:
- 4:4bae30d48662
- Parent:
- 3:ac32a4abb2cc
- Child:
- 5:88ab89ab12ad
- Child:
- 6:b06c430a7e14
File content as of revision 4:4bae30d48662:
#include "bloc_8_pompe.h" #include "ident_crac.h" //initialisations relatives au Bus CAN CAN bus_CAN(PB_8, PB_9, 1000000) ; CANMessage commande_carte ; int flag_reception_CAN = 0 ; void interruption_reception(void) ; void gestion_Message_CAN(void) ; void Envoi_msg_test(void); //Fin de jeu char end_game = 0; bloc_8_pompe::bloc_8_pompe classe_pompe (PC_9, PA_8, PB_0, //bloc 1 PA_9, PA_10, PB_1, //bloc 2 PA_11, PA_15, PC_1, //bloc 3 PB_7, PB_6, PC_0, //bloc 4 PC_7, PC_8, PC_5, //bloc 5 PB_10, PB_2, PC_4, //bloc 6 PA_6, PA_5, PA_7, //bloc 7 PA_0, PA_1, PA_4); //bloc 8 int main() { bus_CAN.attach(&interruption_reception) ; while(1) { bus_CAN(envoie); //if(flag_reception_CAN) // { // gestion_Message_CAN() ; // } // // if(end_game) // { // for (int i=0 ; i<8 ; i++) // { // classe_pompe.stop_pompe(i); // wait_ms(10) ; // } // } //for(int i=1 ; i<9 ; i++) // { classe_pompe.aspirer(2) ; wait(1) ; classe_pompe.relacher(2) ; wait_ms(100) ; //detrompeur_possession = classe_pompe.possession(2) ; //detrompeur_possession = classe_pompe.possession(2) ; wait_ms(1000) ; // } } } void interruption_reception(void) { if (bus_CAN.read(commande_carte)) flag_reception_CAN = 1 ; } void gestion_Message_CAN(void) { int identifiant = commande_carte.id ; char num_groupe = 1 ; switch (identifiant) { case VENT_AT: num_groupe = commande_carte.data[0]; classe_pompe.aspirer(num_groupe) ; break; case VENT_RE: num_groupe = commande_carte.data[0]; classe_pompe.relacher(num_groupe) ; break; case VENT_ETAT: classe_pompe.etat_actuel(num_groupe) ; break; case GLOBAL_GAME_END: end_game = 1; break; /* case TEST_VENT_1_ON: classe_pompe[AV_DROIT]->action(1); classe_pompe[AV_CENTRE]->action(1); classe_pompe[AV_GAUCHE]->action(1); classe_pompe[AR_DROIT]->action(1); classe_pompe[AR_CENTRE]->action(1); classe_pompe[AR_GAUCHE]->action(1); break; case TEST_VENT_1_OFF: classe_pompe[AV_CENTRE]->action(0); classe_pompe[AV_GAUCHE]->action(0); classe_pompe[AR_DROIT]->action(0); classe_pompe[AR_CENTRE]->action(0); classe_pompe[AR_GAUCHE]->action(0); classe_pompe[AV_DROIT]->action(0); break;*/ default: break; } } void Envoi_msg_test(void) { CANMessage etat_ventouses; etat_ventouses.len=2; etat_ventouses.format=CANStandard; etat_ventouses.type=CANData; etat_ventouses.data[0]=0; etat_ventouses.data[1]=1; can.write(etat_ventouses); }