Linux运维小菜 2023-03-24 11:06 采纳率: 46.7%
浏览 19
已结题

Android与Java

下面代码是我用Android向plc传数据,但为什么传输失败呢?
求告知。



```java
   public static void  writeRegister2(String slaveId,String offset,String sdata1)
    {
        try { int offest1=Integer.parseInt(offset);
            int state=Integer.parseInt(sdata1);
            TcpParameters tcpParameters = new TcpParameters();
            // 设置TCP的ip地址
            InetAddress adress = InetAddress.getByName(ip);
            // TCP参数设置ip地址4b3d196202.zicp.vip
            //tcpParameters.setHost(InetAddress.getLocalHost());
            tcpParameters.setHost(adress);
            // TCP设置长连接
            tcpParameters.setKeepAlive(true);
            // TCP设置端口,这里设置是默认端口502
            tcpParameters.setPort(502);
            // 创建一个主机

            ModbusMaster master = ModbusMasterFactory.createModbusMasterTCP(tcpParameters);
            Modbus.setAutoIncrementTransactionId(true);
            try {
              master.writeSingleRegister(Integer.parseInt(slaveId),offest1,state);
            }catch (Exception e){
                System.out.println("plc失败11");
            }
        }catch (Exception e){
            System.out.println("plc失败1");
        }
    }

```

  • 写回答

2条回答 默认 最新

  • 於黾 2023-03-24 11:47
    关注

    错误信息呢,到底是外层try报错还是内层try报错,把e一起打印出来,不要把原始错误隐藏起来

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 4月1日
  • 已采纳回答 3月24日
  • 创建了问题 3月24日