java - Jamod(modbus,Java)大师编程,为什么会重复事务?

标签 java netbeans modbus

我正在进行一个项目,涉及使用串行连接(因此是 Jamod)和我遇到的编码

//7. Execute the transaction repeat times
//repeat =10 defined in point 1. (go to the source to read the code)
int k = 0;
do {
  trans.execute();
  res = (ReadInputRegistersResponse) trans.getResponse();
  for (int n = 0; n < res.getWordCount(); n++) {
    System.out.println("Word " + n + "=" + res.getRegisterValue(n));
  }
  k++;
} while (k < repeat);

[来源:http://jamod.sourceforge.net/kb/serial_master_howto.html ,要真正理解这个问题,我认为你们可能需要阅读整个示例]

我的问题是为什么它会重复交易? 这对我来说没有任何意义,因为重复变量是从放置在 ma​​in 中的参数中获取的,并且正如教程所说,它是可选的。 总而言之,为什么会重复出现?

任何帮助将不胜感激!

最佳答案

因为重复是可选的,所以默认情况下它可能是 0。如果你给出它,循环将执行精确的“重复”次数。使用默认值,代码可能只会执行一次(因为重复将为 0)

do-while 结构确保您无需在 for 循环的保护中执行任何魔法即可至少执行一次。

关于java - Jamod(modbus,Java)大师编程,为什么会重复事务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8259130/

相关文章:

java - 在消息资源文件中查找未使用的值

java - Android ListView-为每个项目打开新 Activity

java - 在 Netbeans 8.0.2 和 Java 8 中使用 Apache Tika 1.9 会生成巨大的可执行文件。怎么做才能缩小尺寸?

java - 数组排序

java - 是否有使用 Mina 2.x 的 modbus 实现?

java - apache ignite 是否在启动时创建 cassandra 表还是我们需要运行任何命令?

java - 清理未修剪的字符串空白

java - NetBeans 制作的 jar 文件不起作用

putty - 使用 Putty 进行 modbus 消息传递

python - pymodbus读取仪表寄存器