SetSerialConf: Modifica della configurazione della linea seriale

Descrizione della funzione

SetSerialConf consente di modificare la configurazione della linea seriale.

Rappresentazione grafica

NOTA: La modifica della configurazione delle porte delle linee seriali durante l'esecuzione della programmazione può interrompere le comunicazioni in corso con altri dispositivi collegati.
 AVVERTIMENTO
PERDITA DEL CONTROLLO A CAUSA DELLA MODIFICA DELLA CONFIGURAZIONE
Convalidare e provare tutti i parametri della funzione SetSerialConf prima di mettere il programma in funzione.
Il mancato rispetto di queste istruzioni può provocare morte, gravi infortuni o danni alle apparecchiature.

Descrizione dei parametri

Ingresso

Tipo

Commento

Link

LinkNumber(vedere EcoStruxure Machine Expert, Funzioni di lettura/scrittura Modbus e ASCII, Guida della libreria PLCCommunication)

LinkNumber è il numero della porta di comunicazione.

PointerToSerialConf

PointerToSerialConf

PointerToSerialConf è l'indirizzo della struttura di configurazione (variabile di tipo SERIAL_CONF) in cui sono memorizzati i nuovi parametri di configurazione. La funzione standard ADR deve essere utilizzata per definire il puntatore associato. Vedere l'esempio che segue. Se 0, imposta a linea seriale la configurazione predefinita dell'applicazione.

Uscita

Tipo

Commento

SetSerialConf

WORD

Questa funzione restituisce:

  • 0: La nuova configurazione è impostata

  • 255: La nuova configurazione è rifiutata perché:

    • la funzione è in corso

    • i parametri di ingresso non sono validi

Esempio

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));