Bonsoir,

Je voudrais lancer une temporisation sur un front montant.
Donc pour expliquer d'avantage, je surveille l'état d'une entrée logique, donc dés qu'elle passe à 1, je lance une temporisation.

Le code que j'utilise actuellement est :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
void main ()
{
int Etat = 0;
int EtatPrecedent = 0;
 
securite ();
}
 
void securite ()
{
EtatPrecedent = Etat;
Etat = Entrees.Logiques.Etat.NA.E_PARK;
 
if (Etat != EtatPrecedent)
   {
   if (Etat == 1)
        {
         TemporisationLance(TpParking, TEMPS_ATTENTE_PARKING);
        }
   }
}
Le problème est que la temporisation ne se lance jamais, et donc il ne rentre jamais dans la boucle ( méme quand l'entrée logique passe de 0 à 1)

Je ne sais pas si ca viens de l'initialisation de "etat" et "etatprecedent" ou ...

Merci de me répondre car je n'arrive vrmnt pas a savoir d ou ca peut venir et ca fait un petit moment que je bloque dessus.

merci