TestMasterCoil.java 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. import lombok.extern.slf4j.Slf4j;
  2. import wei.yigulu.modbus.domain.FunctionCode;
  3. import wei.yigulu.modbus.domain.Obj4RequestCoil;
  4. import wei.yigulu.modbus.exceptiom.ModbusException;
  5. import wei.yigulu.modbus.netty.ModbusTcpMasterBuilder;
  6. import wei.yigulu.modbus.utils.ModbusRequestDataUtils;
  7. import java.util.ArrayList;
  8. import java.util.Collections;
  9. import java.util.List;
  10. import java.util.Map;
  11. /**
  12. * @author: xiuwei
  13. * @version:
  14. */
  15. @Slf4j
  16. public class TestMasterCoil {
  17. public static void main(String[] args) throws InterruptedException, ModbusException {
  18. ModbusTcpMasterBuilder master = new ModbusTcpMasterBuilder("127.0.0.1", 502);
  19. master.createByUnBlock();
  20. Thread.sleep(3000L);
  21. List<Integer> list = new ArrayList<>();
  22. for (int i = 0; i <= 7; i++) {
  23. list.add(i);
  24. }
  25. list.add(30);
  26. List<Obj4RequestCoil> ll = ModbusRequestDataUtils.splitModbusRequest(list, 1, FunctionCode.READ_COILS);
  27. for (; ; ) {
  28. try {
  29. Map<Integer, Boolean> map1 = ModbusRequestDataUtils.getCoilData(master, ll);
  30. ArrayList<Integer> lll = new ArrayList<Integer>(map1.keySet());
  31. Collections.sort(lll);
  32. for (Integer i : lll) {
  33. System.out.println(i + " ============ " + map1.get(i));
  34. }
  35. } catch (Exception e) {
  36. e.printStackTrace();
  37. }
  38. Thread.sleep(3000L);
  39. }
  40. }
  41. }