带有Modbus串行从站的jamod

时间:2014-03-18 12:04:20

标签: android serial-port modbus beagleboneblack slave

我正在使用在Android上运行的Beaglebone Black的jamod(ModBus api)。我成功地将它用于ModBus TCP Slave应用程序。它就像一个魅力。现在我正在尝试将它用于Modbus串行从属应用程序。但我有一个错误。我认为问题是portname。我不确定要用什么作为端口名称。这是我试过的代码:

ModbusSerialListener listener = null;
SimpleProcessImage spi = null;
spi = new SimpleProcessImage();
spi.addRegister(new SimpleRegister(45));
spi.addRegister(new SimpleRegister(56));
spi.addDigitalOut(new SimpleDigitalOut(false));
spi.addDigitalOut(new SimpleDigitalOut(false));
ModbusCoupler.getReference().setProcessImage(spi);
ModbusCoupler.getReference().setMaster(false);
ModbusCoupler.getReference().setUnitID(1);
SerialParameters params = new SerialParameters();
params.setPortName("/dev/ttyO0");
params.setBaudRate(9600);
params.setDatabits(8);
params.setParity("None");
params.setStopbits(1);
params.setEncoding("ascii");
params.setEcho(false);
listener = new ModbusSerialListener(params);
listener.setListening(true);

错误:java.lang.NoClassDefFoundError:net.wimpi.modbus.net.SerialConnection。 而我在“listener = new ModbusSerialListener(params);”一部分。

----------------------编辑----------------------

我找到了导致问题的原因。 jamod试图使用javax.comm api。由于Android上没有,应用程序崩溃。有没有办法将javax.comm导入项目?

1 个答案:

答案 0 :(得分:0)

对我来说,它有助于在项目的 lib 文件夹中拖动“comm.jar”“RXTXcomm.jar”。 / p>

此jar文件位于sourceforge

的jamod.zip中