恭喜,你发布的帖子
发布于 2022-09-30 12:32:22
7楼
谢谢y版的细心描述并且一步步引导。非常感谢!
也就是说,两个客户端分别采用两个连接ID 去读取同一个IP的服务器,并且服务器端又分开502与503端口分别对应两个客户端的读写,也就是MB CLIENT 1 连接ID1 读取MB服务器端口502的数据 ,MB CLIENT 2 连接ID2写入到MB服务器端口503的数据 那么在这个过程中两个MB_CLIENT 的REQ直接直接TRUE即可是这样吧。我可以理解为这个REQ只是触发ID连接的作用吗?也就是数据的读写在连接成功以后MB_CLIENT在内部是自动进行工作的与REQ的触发频率无关是这样吗?
是的。
最早的MB_CLIENT功能块是把 IP v4、ID写在了端口上。那是很容易发生错误的。
现在的都是在背景数据块中设置。此外,它保留了运行期间的接口参数的SAVED。确保在通讯期间,“不理会”接口参数的变化。不会发生错误。
REQ的功能仅为,上升沿,按照背景块数据,建立新的连接。
在这里要注意的就是连接ID,1200的连接资源是很少的。(全系列都一样。这就是为啥我喜欢用多个1211C的原因。)MB通讯占用开放式通讯的资源和动态分配的资源。
双向全双工读写,会占用2个连接资源。所以,资源紧张时,就用半双工,分时读写。(这不是轮询。)
如果资源紧张。要访问多个服务器时,就需要轮询。一个地址通讯完成后,(断开连接,)改变背景数据块(IP/端口号)。重新REQ。
请填写推广理由:
分享
只看
楼主