Programme de contrôle de l'octopode 4DOF, Theraphosa-Salconi.

Dependencies:   debug mbed

CtrlBridge

  • fonction quelquonque pour communiquer avec les module
  • fonction quelquonque pour faire des recherche dans les module dispo
  • autre fonction pour jouer avec MemRegistre

Version 1.2.0

  • Ajout d'un mode de simulation pour tester le code avec seulement un contrôleur stm32
Committer:
salco
Date:
Fri May 08 19:57:25 2015 +0000
Revision:
22:a2c875629f2d
Parent:
21:5c17b7836733
Child:
23:7b296b6d8285
turn + recalibrement is donne

Who changed what in which revision?

UserRevisionLine numberNew contents of line
salco 2:4c5b0f6d0a6b 1
salco 2:4c5b0f6d0a6b 2 #include "directive.h"
salco 2:4c5b0f6d0a6b 3
salco 2:4c5b0f6d0a6b 4 Directive::Directive():TTask(0)//on veux que cette tache sois exec toute les fois que TTaskGen sexecute.
salco 2:4c5b0f6d0a6b 5 {
salco 3:e0d6e081a9d3 6 c=0;
salco 21:5c17b7836733 7 ssc32 = new /*Serial*/RawSerial(PA_9, PA_10);
salco 21:5c17b7836733 8 //ctrDesPattes = new Faculter_motrice(ssc32/*pc*/);
salco 19:0ac80045ba4c 9 //m_CtrlBridge = m_CtrlBridge->getInstance();
salco 19:0ac80045ba4c 10 //a enlever de commentaire//m_ListDesModules = m_CtrlBridge->findModule(0,1,0,0);
salco 21:5c17b7836733 11
salco 21:5c17b7836733 12 // Serial pc(USBTX, USBRX);
salco 21:5c17b7836733 13
salco 21:5c17b7836733 14 //ssc32->set_flow_control(0);
salco 21:5c17b7836733 15 ssc32->putc('G');//printf("Hello World\n");
salco 2:4c5b0f6d0a6b 16 }
salco 2:4c5b0f6d0a6b 17 Directive::~Directive()
salco 2:4c5b0f6d0a6b 18 {
salco 11:496453b45e25 19
salco 3:e0d6e081a9d3 20 if(ctrDesPattes)
salco 3:e0d6e081a9d3 21 delete ctrDesPattes;
salco 19:0ac80045ba4c 22 if(ssc32)
salco 19:0ac80045ba4c 23 delete ssc32;
salco 2:4c5b0f6d0a6b 24 }
salco 3:e0d6e081a9d3 25 void Directive::task(void)//ALL CODE HERE//
salco 2:4c5b0f6d0a6b 26 {
salco 19:0ac80045ba4c 27 debug(DEBUG_DIRECTIVE_TEST,"\n\rIn task directive");
salco 19:0ac80045ba4c 28 //pas sur que c'Est tout ce qui doit etre ici mais je vois pas quoi d'autre pour le moment.
salco 19:0ac80045ba4c 29 string flag,data,savedData;
salco 19:0ac80045ba4c 30 DigitalOut myled(LED1);
salco 19:0ac80045ba4c 31 DigitalIn mybutton(USER_BUTTON);
salco 3:e0d6e081a9d3 32
salco 19:0ac80045ba4c 33
salco 19:0ac80045ba4c 34 //wait(1);// a enlever plus tard pour gain de vitesse//
salco 3:e0d6e081a9d3 35 ////////////////
salco 3:e0d6e081a9d3 36 // Inspection //
salco 3:e0d6e081a9d3 37 ////////////////
salco 3:e0d6e081a9d3 38
salco 19:0ac80045ba4c 39 savedData.clear();
salco 19:0ac80045ba4c 40
salco 19:0ac80045ba4c 41 /* for(int i=0; i<m_ListDesModules.length(); ++i) {
salco 19:0ac80045ba4c 42 flag.clear();
salco 19:0ac80045ba4c 43 data.clear();
salco 19:0ac80045ba4c 44 debug("\n\r result: %d",m_CtrlBridge->send(m_ListDesModules.at(i),flag,data));
salco 19:0ac80045ba4c 45 if(data[0]!= 0x00)
salco 19:0ac80045ba4c 46 savedData.append(data);
salco 11:496453b45e25 47 }*/
salco 19:0ac80045ba4c 48 int buttonCount;
salco 19:0ac80045ba4c 49 for(buttonCount =0; mybutton == 0; buttonCount++){
salco 19:0ac80045ba4c 50 debug(DEBUG_DIRECTIVE_TEST,"\n\r %02i",buttonCount+1);
salco 19:0ac80045ba4c 51 wait(1);
salco 19:0ac80045ba4c 52 myled = 1;
salco 19:0ac80045ba4c 53 wait_ms(500);
salco 19:0ac80045ba4c 54 myled = 0;
salco 19:0ac80045ba4c 55 }
salco 19:0ac80045ba4c 56 debug(DEBUG_DIRECTIVE_TEST,"\n\rResult : %02i",buttonCount);
salco 3:e0d6e081a9d3 57
salco 3:e0d6e081a9d3 58 //////////////////////////////
salco 3:e0d6e081a9d3 59 // Traitement du Labyrinthe //
salco 3:e0d6e081a9d3 60 //////////////////////////////
salco 19:0ac80045ba4c 61
salco 19:0ac80045ba4c 62 switch(buttonCount){
salco 19:0ac80045ba4c 63 case 2:
salco 22:a2c875629f2d 64 ctrDesPattes->calibre(1);
salco 19:0ac80045ba4c 65 ctrDesPattes->exec();
salco 19:0ac80045ba4c 66 break;
salco 19:0ac80045ba4c 67
salco 19:0ac80045ba4c 68 case 6:
salco 19:0ac80045ba4c 69 ctrDesPattes->stop();
salco 19:0ac80045ba4c 70 ctrDesPattes->exec();
salco 19:0ac80045ba4c 71 ctrDesPattes->resume();
salco 19:0ac80045ba4c 72 break;
salco 19:0ac80045ba4c 73
salco 19:0ac80045ba4c 74 case 3:
salco 19:0ac80045ba4c 75 ctrDesPattes->moveUp();
salco 19:0ac80045ba4c 76 ctrDesPattes->exec();
salco 19:0ac80045ba4c 77 break;
salco 19:0ac80045ba4c 78
salco 19:0ac80045ba4c 79 case 4:
salco 19:0ac80045ba4c 80 ctrDesPattes->moveDown();
salco 19:0ac80045ba4c 81 ctrDesPattes->exec();
salco 19:0ac80045ba4c 82 break;
salco 19:0ac80045ba4c 83
salco 19:0ac80045ba4c 84 case 5:
salco 19:0ac80045ba4c 85 //ctrDesPattes->stop();
salco 19:0ac80045ba4c 86 //ctrDesPattes->exec();
salco 19:0ac80045ba4c 87 ctrDesPattes->resume();
salco 19:0ac80045ba4c 88 break;
salco 19:0ac80045ba4c 89
salco 19:0ac80045ba4c 90 case 1:
salco 19:0ac80045ba4c 91 //ctrDesPattes->stop();
salco 19:0ac80045ba4c 92 ctrDesPattes->exec();
salco 19:0ac80045ba4c 93 //ctrDesPattes->resume();
salco 19:0ac80045ba4c 94 break;
salco 21:5c17b7836733 95
salco 21:5c17b7836733 96 case 7:
salco 21:5c17b7836733 97 ctrDesPattes->moveLeft();
salco 21:5c17b7836733 98 ctrDesPattes->exec();
salco 19:0ac80045ba4c 99 default:
salco 19:0ac80045ba4c 100 break;
salco 19:0ac80045ba4c 101 }
salco 19:0ac80045ba4c 102
salco 19:0ac80045ba4c 103 /* if(savedData.size() != 0)
salco 19:0ac80045ba4c 104 {
salco 19:0ac80045ba4c 105 ctrDesPattes->exec();
salco 11:496453b45e25 106 }*/
salco 19:0ac80045ba4c 107 /* if (c == 'g') {
salco 19:0ac80045ba4c 108 ctrDesPattes->calibre();
salco 19:0ac80045ba4c 109 c=0;
salco 19:0ac80045ba4c 110 }
salco 19:0ac80045ba4c 111 if(c == 'h') {
salco 19:0ac80045ba4c 112 pc->printf(" ID seq: %i \n\r",ctrDesPattes->get_idSeq());
salco 19:0ac80045ba4c 113 c=0;
salco 19:0ac80045ba4c 114 }*/
salco 3:e0d6e081a9d3 115 ///////////////
salco 3:e0d6e081a9d3 116 // Mouvement //
salco 3:e0d6e081a9d3 117 ///////////////
salco 3:e0d6e081a9d3 118 // ctrDesPattes.exec();
salco 3:e0d6e081a9d3 119 ////////////////////
salco 3:e0d6e081a9d3 120 // Update memoire //
salco 3:e0d6e081a9d3 121 ////////////////////
salco 3:e0d6e081a9d3 122
salco 3:e0d6e081a9d3 123 ////////////
salco 3:e0d6e081a9d3 124 // Autre? //
salco 3:e0d6e081a9d3 125 ////////////
salco 3:e0d6e081a9d3 126
salco 19:0ac80045ba4c 127 debug(DEBUG_DIRECTIVE_TEST,"\n\rOut task directive");
salco 3:e0d6e081a9d3 128
salco 2:4c5b0f6d0a6b 129 }