SetSerialConf 用于更改串行线路配置。
注意: 在执行编程时更改串行线路端口的配置,可能会中断与其他连接的设备正在进行的通讯。
|
因配置更改导致失去控制 |
将程序投入使用前,请验证并测试 SetSerialConf 功能的所有参数。 |
不遵循上述说明可能导致人员伤亡或设备损坏。 |
输入 |
类型 |
注释 |
---|---|---|
Link |
LinkNumber 是通讯端口号。 |
|
PointerToSerialConf |
指向 SERIAL_CONF 的指针 |
PointerToSerialConf 是配置结构的地址(SERIAL_CONF 类型的变量),新的配置参数存储在该地址中。ADR 标准功能必须用于定义关联指针。(请参见下面的示例。)如果为 0,请将应用程序缺省配置设置为串行线路。 |
输出 |
类型 |
注释 |
---|---|---|
SetSerialConf |
WORD |
此功能返回: o0:新配置已设置 o255:拒绝新配置,原因是: o该功能正在使用中 o输入参数无效 |
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));