SetSerialConf: cambiare la configurazione della linea seriale
SetSerialConf è utilizzato per modificare la configurazione della linea seriale.
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.
|
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. |
Ingresso |
Tipo |
Commento |
---|---|---|
Link |
LinkNumber è il numero della porta di comunicazione. |
|
PointerToSerialConf |
PUNTATORE A SERIAL_CONF |
PointerToSerialConf è l'indirizzo della struttura di configurazione (variabile di tipo SERIAL_CONF) in cui sono memorizzati i nuovi parametri della 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: o0: la nuova configurazione è impostata o255: la nuova configurazione è rifiutata perché: ola funzione è in corso oi parametri di ingresso non sono validi |
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));