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:
Tue Jan 31 13:15:42 2017 +0000
Revision:
41:0b5c14dda54a
Parent:
31:ed23647fd16e
Tentative de modifier les commit inutile sur debug.h

Who changed what in which revision?

UserRevisionLine numberNew contents of line
salco 2:4c5b0f6d0a6b 1 /**
salco 2:4c5b0f6d0a6b 2 * @file TTask.h
salco 2:4c5b0f6d0a6b 3 * @brief Cette classe est le modele des 3 taches de controle.
salco 2:4c5b0f6d0a6b 4 * @author Salco
salco 2:4c5b0f6d0a6b 5 * @version 2.00
salco 2:4c5b0f6d0a6b 6 * @date 11 mars 2015
salco 2:4c5b0f6d0a6b 7 */
salco 2:4c5b0f6d0a6b 8 #ifndef TTASK_H
salco 2:4c5b0f6d0a6b 9 #define TTASK_H
salco 2:4c5b0f6d0a6b 10
salco 31:ed23647fd16e 11 #include "AnsiGraphicalConsole.h"//pt une bonne ider
salco 31:ed23647fd16e 12 #include "settingDebug.h"
salco 31:ed23647fd16e 13
salco 2:4c5b0f6d0a6b 14 #include "mouvement.h"
salco 14:ca1a9230ba7f 15 #include "OSNAPprotocoleDefine.h"
salco 7:dcfd81d7f93f 16 #include "CtrlBridge.h"
salco 2:4c5b0f6d0a6b 17
salco 2:4c5b0f6d0a6b 18 class TTask
salco 2:4c5b0f6d0a6b 19 {
salco 11:496453b45e25 20 private:
salco 2:4c5b0f6d0a6b 21 int m_priorityCount;//m_countCycle;
salco 2:4c5b0f6d0a6b 22 int m_priority;//m_cycleSet;
salco 2:4c5b0f6d0a6b 23 //bool startSignal;
salco 11:496453b45e25 24
salco 11:496453b45e25 25
salco 11:496453b45e25 26 protected:
salco 2:4c5b0f6d0a6b 27 static TTask *ptrThis;
salco 19:0ac80045ba4c 28 string m_ListDesModules;
salco 19:0ac80045ba4c 29 CtrlBridge* m_CtrlBridge;
salco 11:496453b45e25 30
salco 11:496453b45e25 31 public:
salco 11:496453b45e25 32 TTask(int priority=0) {
salco 11:496453b45e25 33 m_priority=priority;
salco 11:496453b45e25 34 m_priorityCount=0;
salco 19:0ac80045ba4c 35 m_CtrlBridge = m_CtrlBridge->getInstance();
salco 19:0ac80045ba4c 36
salco 11:496453b45e25 37 }
salco 11:496453b45e25 38 virtual ~TTask() {
salco 11:496453b45e25 39 }
salco 11:496453b45e25 40
salco 11:496453b45e25 41 virtual void exec(void) {
salco 11:496453b45e25 42 if(m_priorityCount >= m_priority) {
salco 2:4c5b0f6d0a6b 43 m_priorityCount=0;
salco 2:4c5b0f6d0a6b 44 this->task();
salco 11:496453b45e25 45 } else
salco 11:496453b45e25 46 m_priorityCount++;
salco 11:496453b45e25 47 }
salco 11:496453b45e25 48
salco 2:4c5b0f6d0a6b 49 //virtual void signalStart(void);
salco 2:4c5b0f6d0a6b 50 virtual void task(void) = 0;
salco 11:496453b45e25 51
salco 11:496453b45e25 52 void setPriority(int value) {
salco 11:496453b45e25 53 m_priority = value;
salco 11:496453b45e25 54 }
salco 11:496453b45e25 55 int getPriority() {
salco 11:496453b45e25 56 return m_priority;
salco 11:496453b45e25 57 }
salco 11:496453b45e25 58
salco 2:4c5b0f6d0a6b 59 };
salco 2:4c5b0f6d0a6b 60 #endif // TTASK_H