最近在调试一个项目,S7-1200通过ModbusRTU控制松下A6伺服。在读取线圈时,使用ModbusMaster指令,模式0,从地址000001开始读320个线圈。我在DATA_LEN里设置320,发现接收数据全为0。后来我一个一个试,发现读取线圈数只要大于224,接收数据就会全为0,小于224接收数据才会正常。现在我只有通过两条ModbusMaster分开读这320个线圈。我用第一条Master指令的“Done”触发第二条Master指令的“REQ”,又会出现“16#8200(接口处于连续请求)”错误。有两条疑问希望各位前辈能解答:
1、ModbusMaster读线圈为何一次只能读224个,是否我程序或硬件配置有误;
2、按照我目前程序的写法,为何会出现“16#8200”错误。
望前辈们能帮我解答,谢谢!

