GPS一般默认输出规范为NMEA0183报文.
串口编程读取$GPxxx开始,回车换行结束;
按照0183报文解析所需数据即可
使用串口助手调试读取。
编程读取命令读取。
使用串口助手读取。
理解通信协议,读取指令。
用SerialPort类的时候,在接收数据的serialPort1_DataReceived事件里要用委托。示例:
private void serialPort1_DataReceived(object sender, SerialDataReceivedEventArgs e)
{
string tmpstr = ""
for (int i = 0i <serialPort1.BytesToReadi++)
{
tmpstr += Convert.ToString(serialPort1.ReadByte(), 16)+ " "
}
tmpstr= tmpstr.ToUpper()
safeAddtrText(tmpstr)
}
//由于本人比较懒,委托就从网上直接Copy了。
public delegate void _SafeAddtrTextCall(string text)
private void safeAddtrText(string text)
{
if (this.InvokeRequired)
{
_SafeAddtrTextCall call =
delegate(string s)
{
txtBoxRecive.Text += s
}
this.Invoke(call, text)
}
else
{
txtBoxRecive.Text += text
}
}
权威《unix网络编程》。做这个事情大概分这么几步。
一:gps设备先通过某种手段上网(可以是拨号上网,wifi。。。。)
二:gps设备向服务器(就是你运行程序的机器)申请连接。可以用域名或者IP找到你的服务器。
三:服务器接受连接。
四:你跟这个gps设备提前预定好。你们的通信形式。
常用的大概也就是,一问一答。你可以通过tcp连接发请求指令给设备,设备收到以后给你回复。然后你只要分析回复指令就就行了。
具体怎么监听连接,怎么收发。书上说的很清楚。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)