SetSerialConf : modifier la configuration de la ligne série
La fonction SetSerialConf permet de modifier la configuration de la ligne série.
NOTE : La modification de la configuration du ou des ports de ligne(s) série pendant l'exécution du programme peut interrompre les communications avec d'autres équipements connectés.
|
PERTE DE CONTRÔLE DUE À UNE MODIFICATION DE LA CONFIGURATION |
Validez et testez tous les paramètres de la fonction SetSerialConf avant de mettre votre programme en service. |
Le non-respect de ces instructions peut provoquer la mort, des blessures graves ou des dommages matériels. |
Entrées |
Type |
Commentaire |
---|---|---|
Link |
LinkNumber est le numéro du port de communication. |
|
PointerToSerialConf |
POINTER TO SERIAL_CONF |
PointerToSerialConf est l'adresse de la structure de configuration (variable de type SERIAL_CONF) dans laquelle les nouveaux paramètres de configuration sont stockés. La définition du pointeur associé nécessite l'utilisation de la fonction standard ADR. (Voir l'exemple ci-dessous.) Si la valeur est 0, définissez la ligne série comme configuration par défaut de l'application. |
Sortie |
Type |
Commentaire |
---|---|---|
SetSerialConf |
WORD |
Cette fonction renvoie : o0 : la nouvelle configuration est définie. o255 : la nouvelle configuration est refusée car : ola fonction est en cours d'exécution ; oles paramètres saisis ne sont pas valides. |
VAR
MySerialConf: SERIAL_CONF
result: WORD;
END_VAR
(*Get current configuration of serial line 1*)
GetSerialConf(1, ADR(MySerialConf));
(*Change to modbus RTU slave address 9*)
MySerialConf.Protocol := 0; (*Modbus RTU/Machine Expert protocol (in this case CodesysCompliant selects the protocol)*)
MySerialConf.CodesysCompliant := 0; (*Modbus RTU*)
MySerialConf.address := 9; (*Set modbus address to 9*)
(*Reconfigure the serial line 1*)
result := SetSerialConf(1, ADR(MySerialConf));