SetSerialConf: cambio de la configuración de línea serie

Descripción de la función

SetSerialConf se utiliza para cambiar la configuración de la línea serie.

Representación gráfica

NOTA: El cambio de la configuración de los puertos de línea serie durante la ejecución de la programación puede interrumpir las comunicaciones en curso con otros dispositivos conectados.
 ADVERTENCIA
PÉRDIDA DE CONTROL DEBIDA A UN CAMBIO DE CONFIGURACIÓN
Valide y pruebe todos los parámetros de la función SetSerialConf antes de poner el programa en funcionamiento.
Si no se siguen estas instrucciones, pueden producirse lesiones graves, muerte o daños en el equipo.

Descripción de parámetros

Entrada

Tipo

Comentario

Link

LinkNumber

LinkNumber es el número de puerto de comunicación.

PointerToSerialConf

PointerToSerialConf

PointerToSerialConf es la dirección de la estructura de configuración (variable de tipo SERIAL_CONF) en la que se almacenan los nuevos parámetros de configuración. La función estándar ADR debe utilizarse para definir el puntero asociado. Consulte el ejemplo siguiente. Si se especifica 0, la configuración predeterminada de la aplicación será la línea serie.

Salida

Tipo

Comentario

SetSerialConf

WORD

Esta función devuelve:

  • 0: se ha establecido la nueva configuración

  • 255: se rechaza la nueva configuración porque:

    • la función está en curso

    • los parámetros de entrada no son válidos

Ejemplo

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