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:
Mon Mar 23 22:41:31 2015 +0000
Revision:
14:ca1a9230ba7f
Parent:
11:496453b45e25
Child:
18:3f113f8441b2
Je crois que jai fini tout ce que j'ai besoin pour faire utilisation des modules, reste un peut de pofinage mais pour le moment sa compile.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
salco 6:a7777c2a7e1e 1 /**
salco 7:dcfd81d7f93f 2 * @file MemRegistre.h
salco 6:a7777c2a7e1e 3 * @brief Cette classe est le modele des 3 taches de controle.
salco 6:a7777c2a7e1e 4 * @author Salco
salco 6:a7777c2a7e1e 5 * @version 2.00
salco 6:a7777c2a7e1e 6 * @date 11 mars 2015
salco 6:a7777c2a7e1e 7 */
salco 6:a7777c2a7e1e 8 #ifndef MEMREG_H
salco 6:a7777c2a7e1e 9 #define MEMREG_H
salco 6:a7777c2a7e1e 10
salco 9:7295385f02b2 11 #include <list>
salco 9:7295385f02b2 12 #include "Module.h"
salco 9:7295385f02b2 13 //#include "ListChainer.h"
salco 6:a7777c2a7e1e 14
salco 9:7295385f02b2 15 using namespace std;// Or using std::list;
salco 6:a7777c2a7e1e 16
salco 7:dcfd81d7f93f 17 class MemRegistre
salco 6:a7777c2a7e1e 18 {
salco 9:7295385f02b2 19 list<Module> m_moduleActioneur;//ListChainer m_moduleActioneur;
salco 9:7295385f02b2 20 list<Module>::iterator m_positionActioneur;//int m_positionActioneur;
salco 10:7e6aeaebe1a2 21
salco 9:7295385f02b2 22 list<Module> m_moduleCapteur;//ListChainer m_moduleCapteur;
salco 9:7295385f02b2 23 list<Module>::iterator m_positionCapteur;//int m_positionCapteur;
salco 10:7e6aeaebe1a2 24
salco 9:7295385f02b2 25 list<Module> m_moduleMemoire;//ListChainer m_moduleMemoire;
salco 9:7295385f02b2 26 list<Module>::iterator m_positionMemoire;//int m_positionMemoire;
salco 6:a7777c2a7e1e 27
salco 6:a7777c2a7e1e 28
salco 6:a7777c2a7e1e 29 public:
salco 9:7295385f02b2 30 // pt metre des inline pour les fonction dans le h
salco 6:a7777c2a7e1e 31
salco 9:7295385f02b2 32 MemRegistre();
salco 9:7295385f02b2 33 virtual ~MemRegistre();
salco 14:ca1a9230ba7f 34 unsigned char getAdressDispo(const unsigned char &startValue);
salco 14:ca1a9230ba7f 35 bool isAdresseValide(const char &adresse);
salco 14:ca1a9230ba7f 36 bool isAdresseValide(const char &adresse, Module &m );
salco 9:7295385f02b2 37
salco 6:a7777c2a7e1e 38
salco 14:ca1a9230ba7f 39 //actioneur//
salco 9:7295385f02b2 40 bool remAllActioneur(void) {
salco 9:7295385f02b2 41 m_moduleActioneur.clear();
salco 9:7295385f02b2 42 return 1;
salco 9:7295385f02b2 43 }
salco 10:7e6aeaebe1a2 44 inline bool remActioneur(int position) {
salco 10:7e6aeaebe1a2 45 list<Module>::iterator it1=m_moduleActioneur.begin();
salco 10:7e6aeaebe1a2 46 for(char i=position; i>1; i--) it1++;
salco 10:7e6aeaebe1a2 47 m_moduleActioneur.erase(it1);
salco 10:7e6aeaebe1a2 48 return 1;
salco 10:7e6aeaebe1a2 49 }
salco 9:7295385f02b2 50 bool addActioneur(Module module) {
salco 9:7295385f02b2 51 m_moduleActioneur.push_back(module);
salco 9:7295385f02b2 52 return 1;
salco 9:7295385f02b2 53 }
salco 9:7295385f02b2 54 Module firstActioneur(void);
salco 9:7295385f02b2 55 Module nextActioneur(void);
salco 9:7295385f02b2 56 int getSizeActioneur(void) {
salco 9:7295385f02b2 57 return m_moduleActioneur.size();
salco 9:7295385f02b2 58 }
salco 14:ca1a9230ba7f 59 //capteur//
salco 9:7295385f02b2 60 bool remAllCapteur(void) {
salco 9:7295385f02b2 61 m_moduleCapteur.clear();
salco 9:7295385f02b2 62 return 1;
salco 9:7295385f02b2 63 }
salco 9:7295385f02b2 64 bool remCapteur(int position) {
salco 10:7e6aeaebe1a2 65 list<Module>::iterator it1=m_moduleCapteur.begin();
salco 10:7e6aeaebe1a2 66 for(char i=position; i>1; i--) it1++;
salco 9:7295385f02b2 67 m_moduleCapteur.erase(it1);
salco 9:7295385f02b2 68 return 1;
salco 9:7295385f02b2 69 }
salco 9:7295385f02b2 70 bool addCapteur(Module module) {
salco 9:7295385f02b2 71 m_moduleCapteur.push_back(module);
salco 9:7295385f02b2 72 return 1;
salco 9:7295385f02b2 73 }
salco 9:7295385f02b2 74 Module firstCapteur(void);
salco 9:7295385f02b2 75 Module nextCapteur(void);
salco 9:7295385f02b2 76 int getSizeCapteur(void) {
salco 9:7295385f02b2 77 return m_moduleCapteur.size();
salco 9:7295385f02b2 78 }
salco 14:ca1a9230ba7f 79 //memoire//
salco 9:7295385f02b2 80 bool remAllMemoire(void) {
salco 9:7295385f02b2 81 m_moduleMemoire.clear();
salco 9:7295385f02b2 82 return 1;
salco 9:7295385f02b2 83 }
salco 9:7295385f02b2 84 bool remMemoire(int position) {
salco 10:7e6aeaebe1a2 85 list<Module>::iterator it1=m_moduleMemoire.begin();
salco 10:7e6aeaebe1a2 86 for(char i=position; i>1; i--) it1++;
salco 9:7295385f02b2 87 m_moduleMemoire.erase(it1);
salco 9:7295385f02b2 88 return 1;
salco 9:7295385f02b2 89 }
salco 9:7295385f02b2 90 bool addMemoire(Module module) {
salco 9:7295385f02b2 91 m_moduleMemoire.push_back(module);
salco 9:7295385f02b2 92 return 1;
salco 9:7295385f02b2 93 }
salco 9:7295385f02b2 94 Module firstMemoire(void);
salco 9:7295385f02b2 95 Module nextMemoire(void);
salco 9:7295385f02b2 96 int getSizeMemoire(void) {
salco 9:7295385f02b2 97 return m_moduleMemoire.size();
salco 9:7295385f02b2 98 }
salco 6:a7777c2a7e1e 99
salco 6:a7777c2a7e1e 100 };
salco 6:a7777c2a7e1e 101 #endif // MEMREG_H //
salco 6:a7777c2a7e1e 102
salco 6:a7777c2a7e1e 103
salco 6:a7777c2a7e1e 104