0

Android で動作する Beaglebone Black で jamod (ModBus api) を使用しています。ModBus TCP Slave アプリに使用しました。それは魅力のように機能しました。今、Modbus シリアル スレーブ アプリに使用しようとしています。しかし、私はエラーが発生しています。問題はポート名だと思います。ポート名として何を使用すればよいかよくわかりません。これが私が試したコードです:

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 をプロジェクトにインポートする方法はありますか??

4

1 に答える 1

0

私にとっては、プロジェクトのlibフォルダーに「 comm.jar」「RXTXcomm.jar 」をドラッグするのに役立ちました。

この jar ファイルは、 sourceforgeの jamod.zip にあります。

于 2014-05-13T14:23:13.953 に答える