Version_officielle
This commit is contained in:
parent
fe6d948857
commit
5368f14d9f
3 changed files with 13 additions and 1 deletions
|
@ -9,7 +9,7 @@
|
||||||
<url>tasks.cpp</url>
|
<url>tasks.cpp</url>
|
||||||
<bookmark id="1">
|
<bookmark id="1">
|
||||||
<name/>
|
<name/>
|
||||||
<line>471</line>
|
<line>447</line>
|
||||||
<key/>
|
<key/>
|
||||||
</bookmark>
|
</bookmark>
|
||||||
</file>
|
</file>
|
||||||
|
|
|
@ -76,6 +76,10 @@ void Tasks::Init() {
|
||||||
cerr << "Error mutex create: " << strerror(-err) << endl << flush;
|
cerr << "Error mutex create: " << strerror(-err) << endl << flush;
|
||||||
exit(EXIT_FAILURE);
|
exit(EXIT_FAILURE);
|
||||||
}
|
}
|
||||||
|
if (err = rt_mutex_create(&mutex_compteurGestionCom, NULL)) {
|
||||||
|
cerr << "Error mutex create: " << strerror(-err) << endl << flush;
|
||||||
|
exit(EXIT_FAILURE);
|
||||||
|
}
|
||||||
cout << "Mutexes created successfully" << endl << flush;
|
cout << "Mutexes created successfully" << endl << flush;
|
||||||
|
|
||||||
/**************************************************************************************/
|
/**************************************************************************************/
|
||||||
|
@ -364,6 +368,7 @@ void Tasks::OpenComRobot(void *arg) {
|
||||||
WriteInQueue(&q_messageToMon, msgSend); // msgSend will be deleted by sendToMon
|
WriteInQueue(&q_messageToMon, msgSend); // msgSend will be deleted by sendToMon
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Thread starting the communication with the robot.
|
* @brief Thread starting the communication with the robot.
|
||||||
*/
|
*/
|
||||||
|
@ -399,9 +404,13 @@ void Tasks::StartRobotTask(void *arg) {
|
||||||
if ((MessageID) cpStart == MESSAGE_ROBOT_START_WITH_WD) {
|
if ((MessageID) cpStart == MESSAGE_ROBOT_START_WITH_WD) {
|
||||||
rt_sem_v(&sem_startReloadWD);
|
rt_sem_v(&sem_startReloadWD);
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
WriteInQueue(&q_messageToMon, new Message(MESSAGE_ANSWER_ACK));
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
/**
|
/**
|
||||||
* @brief Thread managing the Robot's coms
|
* @brief Thread managing the Robot's coms
|
||||||
*/
|
*/
|
||||||
|
@ -478,7 +487,9 @@ void Tasks::MoveTask(void *arg) {
|
||||||
msgRcv = robot.Write(new Message((MessageID) cpMove));
|
msgRcv = robot.Write(new Message((MessageID) cpMove));
|
||||||
rt_mutex_release(&mutex_robot);
|
rt_mutex_release(&mutex_robot);
|
||||||
if (msgRcv->CompareID(MESSAGE_ANSWER_ACK)) {
|
if (msgRcv->CompareID(MESSAGE_ANSWER_ACK)) {
|
||||||
|
rt_mutex_acquire(&mutex_compteurGestionCom,TM_INFINITE);
|
||||||
compteur_gestionCom = 0;
|
compteur_gestionCom = 0;
|
||||||
|
rt_mutex_release (&mutex_compteurGestionCom);
|
||||||
} else {
|
} else {
|
||||||
compteur_gestionCom += 1;
|
compteur_gestionCom += 1;
|
||||||
|
|
||||||
|
|
|
@ -91,6 +91,7 @@ private:
|
||||||
RT_MUTEX mutex_robot;
|
RT_MUTEX mutex_robot;
|
||||||
RT_MUTEX mutex_robotStarted;
|
RT_MUTEX mutex_robotStarted;
|
||||||
RT_MUTEX mutex_move;
|
RT_MUTEX mutex_move;
|
||||||
|
RT_MUTEX mutex_compteurGestionCom;
|
||||||
|
|
||||||
/**********************************************************************/
|
/**********************************************************************/
|
||||||
/* Semaphores */
|
/* Semaphores */
|
||||||
|
|
Loading…
Reference in a new issue