Pages: [1]   Go Down
Author Topic: Executer 2 fonction en mm tps ds mn prog principal  (Read 774 times)
0 Members and 1 Guest are viewing this topic.
0
Offline Offline
Newbie
*
Karma: 0
Posts: 9
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Voilà le problème qui se pose à moi. J'ai dans mon programme deux fonction qu'il faut que j'effectue en même temps. Un me permettant de récupérer les valeurs donner par un accéléromètre et l'autre qui doit détecter une valeur critique. Le problème c'est que c'est deux fonctions sont donc en continue et que lorsque je l'ai appel dans mon programme principale et bien il y en a un qui va marcher mais pas l'autre puisque elle font des "loop" boucles sans fin.

Alors comment puis je faire pour que mes deux fonctions marche simultanément?? (Je programme avec arduino sur un ATmega 168 en langage C) Y ya t'il des "Interruption" ou quelque chose comme ça.

Merci de m'aider
Cordialement,
Fayne
Logged

France
Online Online
Faraday Member
**
Karma: 38
Posts: 3538
There is an Arduino for that
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

A moins d'avoir un processeur bicore tu ne peux pas matériellement exécuter deux fonctions en même temps.

Par contre tu peux enchainer l'exécution de deux fonctions dans la boucle principale de ton programme.

Code:
void loop(void){
        ma_fonction_qui-lit_mes_senseurs();
        ma_fonction_qui_teste_les_valeurs();
}
Logged

Sophia-Antipolis (06)
Offline Offline
God Member
*****
Karma: 4
Posts: 618
Rejoignez le club !
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Cette solution ne lui conviendra pas puisqu'il a des boucles infinies dans ses deux programmes. D'ailleurs ça doit déjà être ce qu'il utilise ("ces deux fonctions sont donc en continu").

Il faut juste les réécrire pour ne pas faire des boucles infinies.

Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 9
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Merci Luj06 j'essaye de faire ceci mais c'est pas éviddent je vais essayer d' utiliser les port 2 et 3 que tu m'a dit pour faire des interruptions.
Logged

Pages: [1]   Go Up
Jump to: