原S7-200(CPU 226)的PORT1已经连接了威纶通触摸屏,采用的是PPI协议。因项目需要将S7-200(CPU 226)连接到另外一个HMI上,做MODBUS从站,使用PROT0,使用MODBUS指令库对PORT0进行设置,设置如下:



设置后并运行通过HMI软件可以读取到CPU 226数据,但触摸屏向PLC写入一个值时马上就置零了,去掉MBUS_INIT,MBUS_SLAVE程序段后,触摸屏向PLC写入值功能就有效。以为是地址冲突问题,用STEP 7检查PLC程序的交叉引用后发现并不存在地址重复。根据网上一些说法,对MBUS_INIT中的Maxhold和HoldStart值都改成50、&VB1200也试过,都存在同样的问题。
现场另有一台CPU 226做同样的功能使用,按照截图的设置就一点儿问题没有。
有那位高手知道这是什么原因?