作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个 GPS 接收器,它向我发送 NMEA 帧。我的代码检索这些内容,但形式非常奇怪:
我正在使用PuTTY查看我的接收器收到的 NMEA 帧,没有问题。
编辑 - 这是我正在使用的代码:
public class GPSFrame extends Observable implements Runnable
{
static Thread myThread=null;
static BufferedReader br;
static BufferedWriter wr;
static PrintWriter out;
static InputStreamReader isr;
static OutputStreamWriter osw;
static java.io.RandomAccessFile port;
/** CONSTRUCTOR **/
public GPSFrame()
{
myThread=new Thread(this);
}
public void start()
{
try
{
port=new java.io.RandomAccessFile("COM5","rwd");
port.writeBytes("\r\n");
port.writeBytes("c,31,0,0,5\r\n");
port.writeBytes("T,1000,1\r\n");
}
catch (Exception e){ System.out.println("start "+e.toString()); }
// The thread start automatically run() method
myThread.start();
}
/**********************************************************************************************
*************************** RETRIEVE GPS FRAMES AND SEND TO SERVEUR **************************
**********************************************************************************************/
public void run()
{
System.out.println("lecture COM...");
// INFINIT LOOP - GPSFrame is always listening for the GPS receptor
for(;;)
{
String st = null;
try
{
st=port.readLine();
String[]gpsframe=st.split(",");
/* IMPORTANT - DON'T FORGET SETCHANGED() or GPSFrame'll never
* notify UPDATE() ServerBoard method - We'll never see any changes */
setChanged();
notifyObservers(st);
}
catch (IOException e){ System.out.println(e.getMessage()); }
// Show in console
System.out.println(st);
}
}
}
编辑:
当我第一次阅读 GPS 帧时 PuTTY 然后启动我的应用程序,我可以在控制台中看到正确的 GPS 帧。但是当我尝试首先使用我的应用程序读取 GPS 帧时,我已经对帧进行了编码。
我不知道为什么我无法检索这种形式的帧。有人可以指导我解决这个问题吗?
提前感谢您!
问候,
bean 腐
最佳答案
正如我在评论中所说,您没有正确从 COM 端口读取数据。我找到了一个库,可以帮助您了解如何从 com 端口读取数据。代码很旧,但我认为它仍然有帮助: http://javanmea.sourceforge.net/
查看这些类:NMEAReader和 CustomReader 。
还有一个类似的 C++ 线程可能会有所帮助。 Receive NMEA0183 data from COM PORT C++
如果您找到解决方案,请发布。看到它会很有趣:)
关于JAVA - GPS 接收器在控制台中发送奇怪/编码的帧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20631411/
我是一名优秀的程序员,十分优秀!