Test.java 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. package com.serotonin.modbus4j.test;
  2. import java.io.IOException;
  3. import java.io.InputStream;
  4. import java.net.ServerSocket;
  5. import java.net.Socket;
  6. import com.serotonin.modbus4j.sero.io.StreamUtils;
  7. public class Test {
  8. public static void main(String[] args) throws Exception {
  9. ServerSocket ss = new ServerSocket(502);
  10. while (true)
  11. new SocketThread(ss.accept());
  12. }
  13. static class SocketThread extends Thread {
  14. Socket s;
  15. InputStream in;
  16. SocketThread(Socket s) {
  17. System.out.println("Socket opened");
  18. try {
  19. this.s = s;
  20. this.in = s.getInputStream();
  21. start();
  22. }
  23. catch (IOException e) {
  24. e.printStackTrace();
  25. }
  26. }
  27. @Override
  28. public void run() {
  29. byte[] b = new byte[1024];
  30. int readcount;
  31. try {
  32. while (true) {
  33. readcount = in.read(b);
  34. if (readcount == -1)
  35. break;
  36. System.out.println(StreamUtils.dumpMessage(b, 0, readcount));
  37. }
  38. }
  39. catch (IOException e) {
  40. System.out.println(e.getMessage());
  41. }
  42. try {
  43. if (s != null)
  44. s.close();
  45. }
  46. catch (IOException e) {}
  47. System.out.println("Socket closed");
  48. }
  49. }
  50. // public static void main(String[] args) throws Exception {
  51. // SerialParameters serialParameters = new SerialParameters();
  52. // serialParameters.setCommPortId("COM1");
  53. // serialParameters.setPortOwnerName("Numb nuts");
  54. // serialParameters.setBaudRate(9600);
  55. //
  56. // ModbusFactory modbusFactory = new ModbusFactory();
  57. //
  58. // ModbusMaster master = modbusFactory.createRtuMaster(serialParameters, false);
  59. // System.out.println("init 1");
  60. // master.init();
  61. // System.out.println("destroy 1");
  62. // master.destroy();
  63. //
  64. // master = modbusFactory.createRtuMaster(serialParameters, false);
  65. // System.out.println("init 2");
  66. // master.init();
  67. // System.out.println("destroy 2");
  68. // master.destroy();
  69. // }
  70. }