文号
t29616
阅读
9467
回复
24
收藏
18
手持GPS接收机
2010/10/01
IP:广东
DSCF4714.jpg



attachment icon NMEA.rar 2.54KB RAR 40次下载
NMEA解码库,内有NMEA协议说明。

NMEA.h
//NMEA解码库

#ifndef _NMEA_decode_H__
#define _NMEA_decode_H__

//函数声明
void NMEA_decode(uint8 *str);  //输入GPS语句,以$开头/r/n结束,输入前先校验,执行完成之后更新结果
BOOL NMEA_hash(uint8 *str); //对GPS语句进行校验,正确无误返回1

//输出结果
typedef struct {
uint8 date[7],time[7];
//yymmdd'\0',hhmmss'\0'
uint8 longitude[12],latitude[11];
//dddmm.mmmm[E/W]'\0',ddmm.mmmm[N/S]'\0'

//uint8 speed[10],direction[6];
//xxxx.yy(km/h),xxxyuv = xxx.y度 u偏v

BOOL signal;//GPS已经正常定位(有信号)
} NMEA_data;

extern NMEA_data NMEA_result;

#endif


调用例子

attachment icon GPS.rar 1.55KB RAR 34次下载
我的硬件在uart0上面接了个CD4052,让PC通讯和GPS复用。所以需要GPS_MODE_1 GPS_MODE_0两个宏。这个需要根据自己的硬件平台修改

串口驱动,使用时需要针对自己的硬件进行修改

attachment icon uart0.rar 1.97KB RAR 32次下载
+100
科创币
ehco
2010/10/11
解码函数有价值,省掉许多开发时间
16年3个月前IP:未同步
259865
1楼
我怎么看着像是手机改装的还有就是手机可以用这个软件吗(我对这东西一窍不通不要骂我)
引用
评论
16年3个月前IP:未同步
259880
2楼
臭猴子..山寨...

我看见NOKIA了...
引用
评论
16年3个月前IP:未同步
259887
3楼
有没有电路图?我想看看你是怎么接收到GPS信号的!
引用
评论
16年3个月前IP:未同步
259895
4楼
这个设计接收信号会不会有麻烦
引用
评论
16年3个月前IP:未同步
259902
5楼
战猴哥哥,我要看电路图啊!
引用
评论
warmonkey作者
16年3个月前IP:未同步
259912
6楼
电路很简单,单片机是ATmega128,接显示屏键盘等等。GPS模块接uart0。
刚刚发现键盘对接收信号有影响,这下子有麻烦了。
考虑把GPS模块放在扬声器下面,同时显示屏向下移动
引用
评论
16年3个月前IP:未同步
259937
7楼
不带差分算不上"手持".....  =.=
引用
评论
16年3个月前IP:未同步
259993
8楼
这个可以装在航模上
嘿嘿,到时可以像巡航导弹那样自己制定飞行线路
引用
评论
16年3个月前IP:未同步
260018
9楼
猴子可以去买个遥控飞机然后把这玩意装上去然后做点和谐的事。。。
引用
评论
warmonkey作者
16年3个月前IP:未同步
260055
10楼
刚才更新了下NMEA解码程序,原来那个有bug

ls说的东西嘛,我很快就会有的。。。

DSCF4723.jpg

7楼 发表于: 昨天 17:47
不带差分算不上"手持".....  =.=

吐槽无效,附近没有差分站。不过这个接收机支持差分功能,可以利用差分站辅助定位。

目前实测精度,无差分站,房间内,定位误差约30m
GPS误差.jpg
引用
评论
16年3个月前IP:未同步
260217
11楼
#ifndef GLONASS      ?!!!
GLONASS的接收机哪里能弄到.....
引用
评论
warmonkey作者
16年3个月前IP:未同步
260276
12楼
为以后用GL的模块做准备,NMEA0183要求必须支持的
引用
评论
16年3个月前IP:未同步
261288
13楼
GE的经纬度本来就不够准的,你用那个做参考,,,,杯具噢~
引用
评论
16年3个月前IP:未同步
261304
14楼
感谢分享!
打算将您的NMEA移植到51和STM32上,测试一下。
引用
评论
16年3个月前IP:未同步
261321
15楼
用GE做参考很无语啊。。。  估计没有你自己的准确 = =
引用
评论
16年3个月前IP:未同步
261503
16楼
相当的帅!NB
引用
评论
16年2个月前IP:未同步
265199
17楼
请问LZ你说的差分信号是怎么输入GPS的???
我很疑惑,我们公司的GPS产品做差分的时候,都是用电台或者GPRS接受差分信号的,你这样的还能接差分信号,还真没见过,LZ能不能给讲讲?
引用
评论
warmonkey作者
16年2个月前IP:未同步
265204
18楼
目前这个接收机没有差分定位能力,因为缺少配套差分站
但是它的软件支持差分定位,也就是说如果GPS模块自带差分功能,可以正确显示结果。
而且这个接收机背面有GPRS模块,只要软件上打开这个功能,就能够接收服务器发来的差分数据
引用
评论
16年2个月前IP:未同步
265536
19楼
回 18楼(warmonkey) 的帖子
哦,原来是这样啊,通过GPRS接收差分信号
嘿嘿,我们公司的差分数据服务器挺多的,UHF电台,GPRS的都有,有空了也弄个这种GPS模块玩玩
引用
评论
15年11个月前IP:未同步
276077
20楼
为啥没人做一个gprs通讯装置接到电脑上当网卡使就不用花钱了[s:243]
引用
评论
warmonkey作者
15年11个月前IP:未同步
276094
21楼
LS:你直接搞个MC39i,用USB转串口线接电脑就可以了。
LZ位的手持机就带有这个功能,背面放置的就是GPRS Modem
引用
评论
14年10个月前IP:未同步
371160
22楼
屏幕是nokia的          - -!!
         好像搞一個啊。
引用
评论
14年10个月前IP:未同步
371206
23楼
回 20楼(859457326) 的帖子
寒假在老家没有宽带,笔记本就是通过手机的GPRS上网的~~~不过要包好多的流量,呵呵
引用
评论
笔记
{{note.content}}
{{n.user.username}}
{{fromNow(n.toc)}} {{n.status === noteStatus.disabled ? "已屏蔽" : ""}} {{n.status === noteStatus.unknown ? "正在审核" : ""}} {{n.status === noteStatus.deleted ? '已删除' : ''}}
  • 编辑
  • 删除
  • {{n.status === 'disabled' ? "解除屏蔽" : "屏蔽" }}
我也是有底线的