Le deal à ne pas rater :
LEGO Icons 10331 – Le martin-pêcheur
35 €
Voir le deal

bouton ON/OFF

2 participants

Aller en bas

bouton ON/OFF Empty bouton ON/OFF

Message  gilles974 Ven 5 Mai 2023 - 16:55

bonjour

je pose un bouton sur une page avec machscreen et je voudrais savoir comment lui donner une fonction ON/OFF

++
gilles
gilles974
gilles974
acharné du forum
acharné du forum

Messages : 446
Points : 669
Date d'inscription : 31/10/2011
Age : 65
Localisation : La Réunion

Revenir en haut Aller en bas

bouton ON/OFF Empty Re: bouton ON/OFF

Message  dh42 Ven 5 Mai 2023 - 19:48

salut,

Pour mettre quoi en ON/OFF ?  une sortie ?

Il n'y a pas de bouton "bascule" (toggle) pouvant prendre 2 états différents dans Mach3, le principe général est donc d'utiliser le bouton pour changer l'état d'autre chose.

Cet "autre chose" peut être une variable, une LED, une sortie ...

Le code du bouton doit donc contenir un test if/then/else qui va tester une LED par exemple ; si la LED est éteinte, on l'allume, si elle est allumée, on l'éteint.

Dans le programme qui aura besoin de savoir si on est ON ou OFF, on testera simplement l'état de la LED.

Si le but est d'activer une sortie, on peut se passer de LED puisque l'on peut directement changer et tester l'état d'une sortie. (de plus les sorties ont des LED attitrées qui seront automatiquement allumées/éteintes en fonction de l'état de la sortie)

Un exemple avec l'activation/désactivation d'une sortie, code à mettre dans le bouton pour activer/désactiver la sortie n°5

Code:
If IsOutputActive(OUTPUT5) Then
   DeactivateSignal(OUTPUT5)
Else
   ActivateSignal(OUTPUT5)
End If  

Un autre en utilisant une "UserLED" (n°1000 dans l'exemple)

Code:
If GetUserLED(1000) = 1 Then 'si allumée
   setUserLED(1000,0) 'éteindre
Else
   setUserLED(1000,1) 'allumer
End If   

Dans le reste du code, pour savoir si la LED est allumée, tu devras utiliser GetUserLED(), qui retourne 0 si éteinte et 1 si allumée. Les "user LED" sont crées par l'utilisateur et peuvent avoir un n° allant de 1000 à 2254 (mais pas en dessoous de 1000, sinon on tombe dans les OEMLED, c.a.d. les LED déjà configurées par Mach3 pour une fonction spécifique)

Par exemple:

Code:
If GetUserLED(1000) = 0 then
   msgbox("OFF")
else
   msgbox("ON")
End If

++
David

_________________
Traduction Française de CamBam et de sa documentation.
dh42
dh42
Admin
Admin

Messages : 25655
Points : 38364
Date d'inscription : 21/06/2009
Age : 60
Localisation : Près de St Etienne (42)

http://dh42.free.fr/

Revenir en haut Aller en bas

bouton ON/OFF Empty Re: bouton ON/OFF

Message  gilles974 Sam 6 Mai 2023 - 13:05

merci David pour l'info

donc je crée un bouton avec une led
et je teste si la led est allumée ou eteinte pour lancer mes fonctions

++
gilles
gilles974
gilles974
acharné du forum
acharné du forum

Messages : 446
Points : 669
Date d'inscription : 31/10/2011
Age : 65
Localisation : La Réunion

Revenir en haut Aller en bas

bouton ON/OFF Empty Re: bouton ON/OFF

Message  dh42 Dim 7 Mai 2023 - 0:20

Salut,

Oui, c'est ça, le bouton et la LED sont 2 objets distincts, le bouton commande l'état de la LED à l'aide de sa programmation.

Sur ce bouton Jog ON/OFF, il y a un bouton superposé sur une LED un peu plus grande que lui, ce qui donne l'effet d'un bouton avec un contour lumineux.

bouton ON/OFF Sans_374

++
David

_________________
Traduction Française de CamBam et de sa documentation.
dh42
dh42
Admin
Admin

Messages : 25655
Points : 38364
Date d'inscription : 21/06/2009
Age : 60
Localisation : Près de St Etienne (42)

http://dh42.free.fr/

Revenir en haut Aller en bas

bouton ON/OFF Empty Re: bouton ON/OFF

Message  Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum