DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Fonctions WLangage / Fonctions standard / Fonctions de gestion de Windows / Fonctions Ports série et parallèle
  • Détection des événements et threads
  • Gestion d'événements très rapprochés
  • Débranchement d'un ou de plusieurs événements
  • Fermeture du port
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Branche un événement sur un port série.
WEBDEV - Code Serveur Cette fonction renvoie les informations concernant le poste serveur.
Exemple
// Détection de caractères sur le port COM1
sEvénement(1, sEveCaractèreReçu, "LectureCaractère")
// -- Procédure LectureCaractère
PROCÉDURE LectureCaractère(NumPort, NumEvénement)
Trace(sLit(1, sDansFileEntrée(1)))
Syntaxe
<Résultat> = sEvénement(<Numéro de port> , <Événement géré> , <Procédure WLangage>)
<Résultat> : Booléen
  • Vrai si la fonction a été exécutée,
  • Faux dans le cas contraire. Si le port n'a pas été préalablement ouvert en mode "Gestion des événements" (avec la fonction sOuvre), la fonction sEvénement n'a aucun effet.
<Numéro de port> : Entier
  • Numéro de port série concerné (1, 2, 3, ...32 pour COM1, COM2, COM3, ... COM32).
  • Numéro de port renvoyé par la fonction sOuvre (si cette fonction a été appelée avec un nom de port).
<Événement géré> : Constante ou combinaison de constantes de type Entier
Evénement à repérer sur le port :
sEveBreak
(valeur : 64)
Réception d'un événement "Break line"
sEveCaractèreReçu
(valeur : 1)
Réception d'un caractère
sEveCTS
(valeur : 8)
Changement d'état CTS
sEveDSR
(valeur : 16)
Changement d'état DSR
sEveEnvoiTerminé
(valeur : 4)
Le buffer de sortie est vide
sEveErreur
(valeur : 128)
Détection d'une erreur sur la ligne
sEveErreurImprimante
(valeur : 512)
Erreur d'imprimante détectée
sEveFileEntrée80
(valeur : 1024)
Le buffer d'entrée est plein à 80%
sEveRing
(valeur : 256)
Détection du signal "Ring" (sonnerie)
sEveRLSD
(valeur : 32)
Changement d'état RLSD
<Procédure WLangage> : Nom de procédure
Nom de la procédure WLangage appelée chaque fois que l'événement spécifié est détecté. Cette procédure est de la forme :
PROCEDURE <Nom de la procédure>(<Numéro de port>, <Numéro de l'événement>)
où <Numéro de port> correspond au port où l'événement est survenu
où <Numéro de l'événement> correspond à une des constantes événement.
Remarques

Détection des événements et threads

La détection des événements est réalisée dans un thread spécifique du WLangage. L'appel de la procédure WLangage est réalisé dans ce thread. Cette procédure est donc soumise aux limitations sur les threads (notamment au niveau de l'affichage).
Pour plus de détails sur la gestion des threads, consultez Gestion des threads.

Gestion d'événements très rapprochés

Si au cours de la procédure déclenchée par l'événement, un autre événement se déclenche, ce dernier événement ne sera pas détecté.
Si des événements très proches sont susceptibles de se déclencher, il est conseillé :
  • de lire uniquement les données de l'événement (avec la fonction sLit) dans la procédure déclenchée par la fonction sEvénement,
  • d'effectuer la suite du traitement dans un autre thread.

Débranchement d'un ou de plusieurs événements

Pour débrancher la gestion d'un ou de plusieurs événements, utilisez la fonction sFinEvénement.

Fermeture du port

Lors de la fermeture du port, tous les événements gérés sur ce port sont débranchés. Lors de la ré-ouverture du port, il est donc nécessaire de ré-exécuter la fonction sEvénement pour définir les événements gérés sur ce port.
Classification Métier / UI : Code métier
Composante : wd290com.dll
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 25/05/2022

Signaler une erreur ou faire une suggestion | Aide en ligne locale