Java me JavaME RaspBerryPi UART can';t从RS485接收数据

Java me JavaME RaspBerryPi UART can';t从RS485接收数据,java-me,raspberry-pi,raspbian,uart,Java Me,Raspberry Pi,Raspbian,Uart,我尝试将我的raspberry pi(带raspbian weezy)与条形LED模块连接。为此,我使用RBPi的UART连接与RS485条连接进行通信 我的问题是:我可以(是的,我可以)发送数据,但我没有收到ACK或其他任何东西。但是,我的条形LED模块将数据帧发送到RBPi(我可以在示波器上看到) 编辑: 我认为这是由于程序打开UART连接时出现的以下错误造成的否:以下错误是由非用户权限引起的 [错误][DAAPI]iso=-1:无法打开/dev/mem 好吧,但我没有收到消息 结束编辑 为

我尝试将我的raspberry pi(带raspbian weezy)与条形LED模块连接。为此,我使用RBPi的UART连接与RS485条连接进行通信

我的问题是:我可以(是的,我可以)发送数据,但我没有收到ACK或其他任何东西。但是,我的条形LED模块将数据帧发送到RBPi(我可以在示波器上看到)

编辑:

我认为这是由于程序打开UART连接时出现的以下错误造成的否:以下错误是由非用户权限引起的

[错误][DAAPI]iso=-1:无法打开/dev/mem

好吧,但我没有收到消息

结束编辑

为此,我编写了以下javaME代码:

UARTConfig config = new UARTConfig((int)Integer.valueOf(this.getPortCom()),(int)Integer.valueOf(this.getPortCom()), this.getBaudrate(),
                                                this.getBitsperchar(), this.getUARTParity(), getStopBits(), UARTConfig.FLOWCONTROL_NONE);

this.uart = (UART)DeviceManager.open(config);

InputStream serialInputStream = Channels.newInputStream(uart);
BufferedReader serialBufferedReader = new BufferedReader(new InputStreamReader(serialInputStream));

 this.tSerialOutput = new Thread( new SerialWriter( Channels.newOutputStream(uart) ) );
 this.tSerialOutput.start();
 this.tSerialInput = new Thread( new SerialReader( serialBufferedReader ));
 this.tSerialInput.start();
“这是我的班级管理串行通信

错误消息出现在“DeviceManager.open”之后 我已按照以下门票的推荐:

但这并不是我问题的答案(我想…)


我不知道。。。。因此,请首先帮助我,您必须确保Linux控制台尚未使用串行端口。以下是如何禁用此功能:

编辑
/etc/inittab
并通过在其前面添加
#
字符来禁用以下行

T0:23:respawn:/sbin/getty -L ttyAMA0 115200 vt100
然后重新启动

如果这仍然不起作用,那么您可以尝试以提升的权限执行JavaME运行时:

sudo ./runSuite.sh <yourapp>
sudo./runSuite.sh
如果这样做有效,则在某个地方存在权限问题

最后,您应该尝试获取JavaME的最新版本(目前是8.1)