Bonjour
J'ai une question dont la solution est sans doute très simple, mais je sèche depuis plusieurs jours dessus, du coup je vous pose la question...
Je souhaiterais renseigner l'état d'un bang par 1 et 0.
Quand un bang est actif, j'ai 1, quand un bang est inactif, j'ai 0.
Alors, des idées ?
Je pensais inverser la valeur du bang, et raccorder tout ça sur des message 0 et 1.
Comme ça, quand le bang est actif, relié au message 1 il renvoie la valeur 1, et quand il est inactif, un second bang s'active et raccordé à un message 0, il renvoie 0.
Mais je ne sais pas comment m'y prendre...
Merci par avance
Hors ligne
Je ne suis pas sûr de comprendre...
Le GUI "Bang" délivre des impulsions...
On ne peut pas vraiment dire s'il est actif ou inactif...
En fait, il est inactif tout le temps... et, de temps en temps, il produit un "bang"...
Si tu "n'entends" pas de bang, c'est qu'il n'en produit pas...
Pour les états on/off, il y a le Toggle...
Hors ligne
Justement, je voudrais traduire le fait qu'il y ai une impulsion par "1", et le fait qu'il n'y ai pas d'impulsion par "0".
En gros, du moment qu'il n'y ai pas de bang, j'ai "0", et si j'ai un bang j'ai "1" mais la valeur repasse à 0 dès que je n'ai plus de bang.
Si j'utilise un toggle relié à un bang, la toggle va passer de 0 à 1 en recevant une impulsion, puis de 1 à 0 en recevant une seconde impulsion.
Pour faire une analogie en électricité, le toggle se comporte comme un interrupteur, moi je voudrais quelque chose qui se comporte comme un bouton poussoir.
Une solution par exemple serait d'utiliser un delay pour renvoyer une seconde impulsion.
Par exemple :
[bng]
|\
| \
| \
| [delay 50]
| /
|/
[toggle]
Mais je ne trouve pas ça super fiable... je me demandais si il n'existait pas une autre solution...
Hors ligne
Comme le dit Olivier, l’impulsion du bang ne dure pas.
A la limite un truc du genre :
[bng]
|
[t b b]
| |
[0( [1(
| /
| /
|/
Mais ça ne dure pas très longtemps.
Hors ligne
Plus simple encore, je te suggère ceci :
[bng] | [1, 0( |
Là encore, c'est quasiment instantané. ;-)
Sinon, une autre solution un peu plus longue mais plus fine... (le message au début représente le délai * 2)
[bng] | [1, 0 500( | [line] | [+ 0.5] | [int] |
Dernière modification par Valentin Leroux (2015-05-17 18:41:39)
Hors ligne
Merci, c'est cette dernière solution (de Valentin Leroux) qui fonctionne comme je veux.
Merci Beaucoup Valentin
Hors ligne
Pages: 1