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

source/Task/TTaskCritique.cpp

Committer:
salco
Date:
2015-04-27
Revision:
19:0ac80045ba4c
Parent:
18:3f113f8441b2
Child:
27:ea60d12dccdf

File content as of revision 19:0ac80045ba4c:


#include "TTaskCritique.h"

TTaskCritique::TTaskCritique(int priority):TTask(priority)
{
    //m_CtrlBridge = m_CtrlBridge->getInstance();

    m_CtrlBridge->initCom();
    m_ListDesModules = m_CtrlBridge->findModule(0,0,0,0); //get all modules

    tymy=true;
}

TTaskCritique::~TTaskCritique()
{

//    return;
}

void TTaskCritique::forceShutDown(bool offON)
{
    DigitalOut pinA(PA_13);
    DigitalOut pinB(PA_14);

    if(offON) {
        pinA=1;
        pinB=0;
    } else {
        pinA=0;
        pinB=1;
    }
}

void TTaskCritique::criticalTreatment(char adresse)
{
    //ici on debug et on traite le problemme//
        forceShutDown(tymy);
    tymy = !tymy;
}

void TTaskCritique::task(void)
{
    debug("\n\rPeanut");
    //pas sur que c'Est tout ce qui doit etre ici mais je vois pas quoi d'autre pour le moment.
    string flag,data;

    flag.append(1,0);//0x02);
    for(int i=0; i<m_ListDesModules.length(); ++i)
    {
     flag.clear();
     flag.append(1,6);  
     data.clear(); 
    debug("\n\r result: %d",m_CtrlBridge->send(m_ListDesModules.at(i),flag,data));
    if(flag[0]== 0x02)
     criticalTreatment(m_ListDesModules.at(i));
    }

}