你这个程序是错误的。ADDR是从站写数据的内存地址,即将PLC DataPtr的数据写到从站1的内存地址Addr中,你需要确定先确定这个地址。你用的SIEMENS SMART PLC吧,没记错的话,写数据需要把RW改为1,ADDR应该为10进制数据,
参数地址 (Addr) 是起始 Modbus 地址。 允许的取值范围如下:
对于离散量输出(线圈),为 00001 至 09999
对于离散量输入(触点),为 10001 至 19999
对于输入寄存器,为 30001 至 39999
对于保持寄存器,为 40001 至 49999 和 400001 至 465535
你把地址改为10进制(具体些地址你查变频器手册,地址以3开头)、RW改为1试试,MBUC_CTRL块要先调用,保证一直工作。