显控PLC SEND REV指令详解:通信与配置

需积分: 9 1 下载量 192 浏览量 更新于2024-08-31 收藏 484KB PDF 举报
"显控PLC的SEND和REV指令用于实现PLC与外部设备的通信。SEND指令用于发送数据,而REV指令用于接收数据。SEND指令的参数包括选择通信口(COM0或COM1),设置起始地址(D数据寄存器),以及设定数据长度。通信数据缓冲位可以是8位或16位,影响数据的发送顺序。通信状态通过特定的寄存器(如M_8176和M_8180)进行监控,包括正在发送和发送完成的标志位。使用这些指令前,需将COM口设置为自由口通讯模式,并注意不要影响程序下载、数据监视和Modbus通讯。参数修改后需下载到PLC中才能生效,且发送数据长度受限于PLC的数据缓存大小。通信是半双工模式,SEND和REV不能同时执行。" SEND指令详细说明: 1. COM_ID参数允许选择COM0(RS-232)或COM1(RS-485)通信接口。 2. Addr参数指定从哪个D数据寄存器开始发送数据,数据区只能从D寄存器选择。 3. Len参数定义要发送的数据长度,可选择字节单位(K/H/D),最大长度受PLC型号限制。 4. 配置信息的修改,如波特率和校验位,必须在自由口通信模式下进行,并确保数据缓冲位数设置正确。 通信数据缓冲位细节: - 8位模式下,D寄存器的低8位用于发送和接收,高8位无效。 - 16位模式下,D寄存器的低8位先发送,接着是高8位。长度Len始终以字节计算,8位模式下一个D寄存器等于1字节,16位模式下等于2字节。 通信状态标志: - M_8176和M_8177分别表示COM0(232)的正在发送和发送完成状态。 - M_8180和M_8181分别表示COM1(485)的正在发送和发送完成状态。 注意事项: 1. 自由口模式设置对下载和Modbus通讯有影响,应谨慎操作。 2. COM0通常保留用于编程和数据监视,COM1用于通信。 3. 修改参数后,必须下载至PLC,否则更改无效。 4. 发送数据长度不能超过PLC的最大缓存限制,16或32点PLC为256Byte,64点PLC为512Byte。 5. 半双工特性意味着SEND和REV不能并行执行,需要交替使用。 REV指令虽然未在提供的部分内容中详细描述,但通常它用于接收通过通信接口传来的数据,同样需要指定起始地址和接收长度。在半双工模式下,必须等待SEND指令完成才能执行REV指令,以避免数据冲突。