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