Alexandre Salconi-Denis
/
ProjetOctopode
Programme de contrôle de l'octopode 4DOF, Theraphosa-Salconi.
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@27:ea60d12dccdf, 2015-05-14 (annotated)
- Committer:
- salco
- Date:
- Thu May 14 21:40:23 2015 +0000
- Revision:
- 27:ea60d12dccdf
- Parent:
- 19:0ac80045ba4c
- Child:
- 28:ac5c6350ed9a
Toute fonctione reste plus qua integrer les donner au projet.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
salco | 3:e0d6e081a9d3 | 1 | |
salco | 7:dcfd81d7f93f | 2 | #include "TTaskCritique.h" |
salco | 3:e0d6e081a9d3 | 3 | |
salco | 7:dcfd81d7f93f | 4 | TTaskCritique::TTaskCritique(int priority):TTask(priority) |
salco | 3:e0d6e081a9d3 | 5 | { |
salco | 19:0ac80045ba4c | 6 | //m_CtrlBridge = m_CtrlBridge->getInstance(); |
salco | 15:91b3c572d9df | 7 | |
salco | 15:91b3c572d9df | 8 | m_CtrlBridge->initCom(); |
salco | 15:91b3c572d9df | 9 | m_ListDesModules = m_CtrlBridge->findModule(0,0,0,0); //get all modules |
salco | 15:91b3c572d9df | 10 | tymy=true; |
salco | 3:e0d6e081a9d3 | 11 | } |
salco | 3:e0d6e081a9d3 | 12 | |
salco | 7:dcfd81d7f93f | 13 | TTaskCritique::~TTaskCritique() |
salco | 3:e0d6e081a9d3 | 14 | { |
salco | 15:91b3c572d9df | 15 | |
salco | 15:91b3c572d9df | 16 | // return; |
salco | 3:e0d6e081a9d3 | 17 | } |
salco | 15:91b3c572d9df | 18 | |
salco | 15:91b3c572d9df | 19 | void TTaskCritique::forceShutDown(bool offON) |
salco | 15:91b3c572d9df | 20 | { |
salco | 15:91b3c572d9df | 21 | DigitalOut pinA(PA_13); |
salco | 15:91b3c572d9df | 22 | DigitalOut pinB(PA_14); |
salco | 15:91b3c572d9df | 23 | |
salco | 15:91b3c572d9df | 24 | if(offON) { |
salco | 15:91b3c572d9df | 25 | pinA=1; |
salco | 15:91b3c572d9df | 26 | pinB=0; |
salco | 15:91b3c572d9df | 27 | } else { |
salco | 15:91b3c572d9df | 28 | pinA=0; |
salco | 15:91b3c572d9df | 29 | pinB=1; |
salco | 15:91b3c572d9df | 30 | } |
salco | 15:91b3c572d9df | 31 | } |
salco | 15:91b3c572d9df | 32 | |
salco | 15:91b3c572d9df | 33 | void TTaskCritique::criticalTreatment(char adresse) |
salco | 15:91b3c572d9df | 34 | { |
salco | 15:91b3c572d9df | 35 | //ici on debug et on traite le problemme// |
salco | 15:91b3c572d9df | 36 | forceShutDown(tymy); |
salco | 15:91b3c572d9df | 37 | tymy = !tymy; |
salco | 15:91b3c572d9df | 38 | } |
salco | 15:91b3c572d9df | 39 | |
salco | 7:dcfd81d7f93f | 40 | void TTaskCritique::task(void) |
salco | 3:e0d6e081a9d3 | 41 | { |
salco | 17:095f670f9c14 | 42 | debug("\n\rPeanut"); |
salco | 15:91b3c572d9df | 43 | //pas sur que c'Est tout ce qui doit etre ici mais je vois pas quoi d'autre pour le moment. |
salco | 15:91b3c572d9df | 44 | string flag,data; |
salco | 11:496453b45e25 | 45 | |
salco | 16:5ea4337d785f | 46 | flag.append(1,0);//0x02); |
salco | 15:91b3c572d9df | 47 | for(int i=0; i<m_ListDesModules.length(); ++i) |
salco | 15:91b3c572d9df | 48 | { |
salco | 27:ea60d12dccdf | 49 | wait_us(300); |
salco | 18:3f113f8441b2 | 50 | flag.clear(); |
salco | 27:ea60d12dccdf | 51 | flag.append(1,7); |
salco | 18:3f113f8441b2 | 52 | data.clear(); |
salco | 16:5ea4337d785f | 53 | debug("\n\r result: %d",m_CtrlBridge->send(m_ListDesModules.at(i),flag,data)); |
salco | 15:91b3c572d9df | 54 | if(flag[0]== 0x02) |
salco | 18:3f113f8441b2 | 55 | criticalTreatment(m_ListDesModules.at(i)); |
salco | 15:91b3c572d9df | 56 | } |
salco | 15:91b3c572d9df | 57 | |
salco | 3:e0d6e081a9d3 | 58 | } |