资讯详情


R系列串口模块RJ71C24双向协议说明


作者:

迷茫的超级兵

来源:

原创

发布时间:

2022-12-09

【RJ71C24双向协议】使用介绍

功能:该数据通信的特点是数据接收侧将通信是否正常完成的响应报文返回至发送侧。

场合:应在希望确认数据通信是否正常完成的情况下使用。

注意:CPU模块侧,需要数据发送接收用的程序

 

接收条件:ENQ代码

接收读取请求:X3/XA

接收指令:BIDIN

发送指令:BIDOUT

接收区域:Un\G1536~2047(CH1侧)、Un\G2560~3071(CH2侧)中

 

RJ71C24双向协议参数设置

 

接收程序样例

【串口助手发送代码】

发送时高低字节需要调换位置,否则模块无法接收数据且会报错
ENQ+字节/字数+数      据+和校验

05 05   00 11 22 33 44 55 04 01

如果是RJ71C24模块间走双向协议,则不需要加ENQ以及和校验,模块会自动添加这些数据。

线路跟踪图(通讯线路正常):串口助手发送数据后RJ71C24模块接收成功后会反馈【06】即ACK代码;

【发送数据长短不影响数据接收】

实际对方发送的数据量跟G.BIDIN指令设置的接收字节数没有任何关系,对方发送的任意长度的无错误数据都会先存到Un\G2560往后的缓存中,G.BIDIN只是根据接收字节数接收对应长度的数据;

 

线路跟踪图(通讯线路正常):串口助手发送错误数据导致RJ71C24模块接收不到数据,然后模块会反馈【15+错误代码】即NAK+错误代码;

RJ71C24à向串口助手发送数据,串口助手收到数据后要主动发送一个06代码,否则模块在定时器1时间内收不到ACK反馈会认为从站掉线,导致模块报“超时错误”;

 

发送程序样例

由于没有两块RJ71C24模块做双向协议,下图是模块发送完数据后通过串口手动发送06代码的线路跟踪图,只要模块收到06代码就不会报超时错误;