bool debut(bool entree)
{
static bool entreePrecedente = false;
bool resultat = entreePrecedente & !entree;
entreePrecedente = entree;
return resultat;
}
Olivman a dit:En fait, je crois qu'il y a vraiment plus simple et plus ergonomique, et surtout plus souple : on conserve le système avec les AND Gates, mais juste après le bouton, on met une porte logique de début.
Petite explication : la porte logique de début est une porte dont la sortie est vraie quand l'entrée vient d'être activée. Dans un code, ça se traduit généralement par AND Gate dont les entrées sont l'entrée de la porte de début, et un NOT Gate dont l'entrée est la précédente entrée de début.
Exemple C++ :
Code:bool debut(bool entree) { static bool entreePrecedente = false; bool resultat = entreePrecedente & !entree; entreePrecedente = entree; return resultat; }
Petit exemple, peut être amélioré car mon logiciel ne gérait pas les délayeurs. Je n'ai pas tout mis, mais l'idée générale est là.
![]()
, franchement bien joué 
Hatrix a dit:Beaucoup de recherche pour rien. Comme je l'ai dit (mais personne n'a regardé...) il suffit de faire un T Flip Flop, ou bascule T en français :
![]()
Le T représente le bouton et Q la sortie. Q barre étant l'inverse de Q.
Quand on appuie sur le bouton, Q prend la valeur de 1 (allumé) puis lorsqu'on rappuie, cette même sortie prend 0 (éteint). C'est exactement le contraire pour Q barre.
Pourquoi se compliquer la vie alors qu'avec une simple bascule on arrive à nos fins ?.

, au faite, je n'es pas réellement essayé de faire un schéma petit, bien au contraire, le but était qu'il prenne le plus de place pour qu'on voie bien les éléments, et que ça puisse me permettre une meilleure explication. SInon, j'ai déjà réussi à le caser sans prendre trop de place ^^