论坛风格切换切换到宽版
  • 67539阅读
  • 338回复

GPS OEM板+单片机+液晶显示 [复制链接]

上一主题 下一主题
离线ba1ka
发帖
1044
只看该作者 180楼 发表于: 2007-01-27
bd8te:你的gps 输出很可能不是$gprmc格式。你可以把gps 输出经max202
变换成232 电平送进pc机串口看一下。
离线bd8te
发帖
4255
只看该作者 181楼 发表于: 2007-01-27
'
bd8te:你的gps 输出很可能不是$gprmc格式。你可以把gps 输出经max202
变换成232 电平送进pc机串口看一下。
'
谢谢 现在好了,中午我是用gn74连接没显示,现在用gr87就好了
在线BG4UVR
发帖
11287
只看该作者 182楼 发表于: 2007-01-27
'
我用gr87连接就只显示经纬度
'

原来写这个程序的时候,考虑到时间在非定位状态下,要不停走才好,所以时间使用了$gpzda语句进行解码。但似乎$gpzda语句只有带实时时钟的gps模块才输出这种语句。所以造成了有些模块不能显示时间。

后来我测试的时候,发现我的两种不同的模块,其实gprmc语句的时间,只要定位过后,就也是准确的了,哪怕再次不定位。但现在不太确定是不是所有的模块都是这样,如果都是这样,那么可以使用rmc语句进行时间的解码,就不会有这个问题了。

补充:gprmc语句里只有时间信息,而没有日期信息。如果使用rmc语句进行时间解码,取消日期的显示,那么可以取消有关闰年计算的一大段程序,目标代码有望控制在2kb内,就是说使用2051芯片来完成。明天我试一下看。
在线BG4UVR
发帖
11287
只看该作者 183楼 发表于: 2007-01-28
更正,gprmc里有日期信息。但无世纪信息。
离线bd8te
发帖
4255
只看该作者 184楼 发表于: 2007-01-28
ba1ka现在可以用了,但有个问题就是刷新太快,能否改一改 谢谢
在线BG4UVR
发帖
11287
只看该作者 185楼 发表于: 2007-01-28
新写的2051+1602的gps解码程序,此版本的特点:

1、可以用跳线来设置gps速率,4800或9600。
2、可以用跳线来设置显示的速度单位,海里/小时 或 公里/小时。
3、使用一个按键来选择显示的页面,不再自动切换。
4、时间解码使用gprmc语句解码,不再会发生某些不带rtc的模块无法显示时间的问题。时间显示为bjt。
5、1602使用4bit模式。

程序在s52上经过测试。编译成2051的版本后未经测试,如果发现有问题请回帖通知。

详细的说明、图纸、hex烧录文件,都在附件的pdf中。

btw:电路图第3次更正,请下载过pdf的重新下载
附件: 89C2051解码NEMA0183格式GPS数据.pdf (0 K) 下载次数:2038
离线ba1ka
发帖
1044
只看该作者 186楼 发表于: 2007-01-28
可以,不过每秒刷新一次不快呀.
'
ba1ka现在可以用了,但有个问题就是刷新太快,能否改一改 谢谢
'

离线Titan
发帖
2908
只看该作者 187楼 发表于: 2007-01-29
'
新写的2051+1602的gps解码程序,此版本的特点:
1、可以用跳线来设置gps速率,4800或9600。
2、可以用跳线来设置显示的速度单位,海里/小时 或 公里/小时。
3、使用一个按键来选择显示的页面,不再自动切换。
4、时间解码使用gprmc语句解码,不再会发生某些不带rtc的模块无法显示时间的问题。时间显示为bjt。
5、1602使用4bit模式。
程序在s52上经过测试。编译成2051的版本后未经测试,如果发现有问题请回帖通知。
详细的说明、图纸、hex烧录文件,都在附件的pdf中。
'
我靠,对老大的仰慕之情,有如滔滔江水,连绵不绝啊,又如黄河泛滥,一发不可收拾。
晚上我回去试验去,哈哈。
在线BG4UVR
发帖
11287
只看该作者 188楼 发表于: 2007-02-01
我对不起党,对不起人民……

下载过184楼pdf文件的朋友,请重新下载。原电路图中,1602的引脚有一处错误,现已更正。
离线bd8te
发帖
4255
只看该作者 189楼 发表于: 2007-02-02
bg4uvr现在以可以工作了,要是有高度就更好了
在线BG4UVR
发帖
11287
只看该作者 190楼 发表于: 2007-02-02
'
bg4uvr现在以可以工作了,要是有高度就更好了
'

主要是受了2051程序空间的限制。高度在写的时候是写了的,不过高度数据输出的格式,比较麻烦,它不是固定位数,处理起来,用了不少代码空间,后来为了能装在2051中,给删除了。

比如有时候,高度1米,它输出成“00001”,但有的时候,就会输出成“1”,另外还会有负值。如果直接拿来显示,因为位不正确,显示出来的结果会是错误的。所以要想正确显示高度,必须先进行高度数据的有效位数判断才行。

另外bd5fna提出,缺少了日期的显示。如果不做utc-bjt的转换,加上日期显示是极其简单的,可因为进行时区转换,这样要判断日期加1(或减1)的情况,要按月份判断,并且2月要根据年份的不同(闰年 ),来进行不同的变换。这段带日期的utc-bjt程序,目标代码又是好几百字节。

现在的版本,差不多快用光2051的程序空间了。所以如果加上上面两个功能,最少也需要51的单片机了。现在工作比较忙,看一下,如果春节回老家,那在老家时也许会写一个在功能上尽量丰富的版本
离线Titan
发帖
2908
只看该作者 191楼 发表于: 2007-02-02
呵呵,我昨天晚上已经把新版本的调试通过拉,效果很好,呵呵,准备做好装在外壳里面拉,
离线Titan
发帖
2908
只看该作者 192楼 发表于: 2007-02-02
对了,还是给一点建议。
昨天还有一个小bug,就是速度显示km/h的时候,有时在0.2和km/h之间,有两个字符是乱码,不知道为什么?
还有就是我觉得好象不把jump 2短路的时候,有时它也是显示成海里单位,多复位几次就好了,不知道为什么?
最后一个建议,如果增加高度,可否考虑把显示分成三屏,一屏是经纬度和卫星数量 二屏是日期时间和高度 三屏是速度和方向,这个方向表示如果可以图形化一点就更好,
如果2051实现这个功能有困难,那就还是用c51,呵呵,可以考虑把目前这个版本作为简化版,再出一个功能强大的c51作为全功能板
以上纯属吹毛求疵的行为,我对这一版的软件已经非常满意了,呵呵,现在我就差外壳了打空了,其它和gps板子都连接好了
在线BG4UVR
发帖
11287
只看该作者 193楼 发表于: 2007-02-02
'
对了,还是给一点建议。
昨天还有一个小bug,就是速度显示km/h的时候,有时在0.2和km/h之间,有两个字符是乱码,不知道为什么?
还有就是我觉得好象不把jump 2短路的时候,有时它也是显示成海里单位,多复位几次就好了,不知道为什么?
最后一个建议,如果增加高度,可否考虑把显示分成三屏,一屏是经纬度和卫星数量 二屏是日期时间和高度 三屏是速度和方向,这个方向表示如果可以图形化一点就更好,
如果2051实现这个功能有困难,那就还是用c51,呵呵,可以考虑把目前这个版本作为简化版,再出一个功能强大的c51作为全功能板
以上纯属吹毛求疵的行为,我对这一版的软件已经非常满意了,呵呵,现在我就差外壳了打空了,其它和gps板子都连接好了
'

速度的显示乱码原因,我估计是速度数据输出的位数变化造成的,因为我测试时,都是静止状态,没有注意到这个问题。

显示单位的问题,我这里测试没有发现过。不过看了我的电路图后,发现一个问题,就是复位电路的电阻上,需要再反向并联一个二极管。如果没有这个二极管,断电后再快速上电,可能会发生复位不良(我的板上已经接有这个二极管,所以没有注意到此问题)。二极管是给电容放电提供一个通路。

谢谢你的建议,在写下一个版本时,我会充分考虑

2007.2.3补充:显示单位不稳定的问题,后来经朋友提醒,应该是2051芯片的p1.0、p1.1端口,没有内部上拉电阻的原因,现原理图中已更正。
离线Titan
发帖
2908
只看该作者 194楼 发表于: 2007-02-04
已经按照最新的接法改好了,呵呵,现在稳定多了
离线hampig
发帖
33480
只看该作者 195楼 发表于: 2007-02-07
支持
另外
titan把你的作品的照片放上来
我看看
好玩的话
我也做一个
离线Titan
发帖
2908
只看该作者 196楼 发表于: 2007-02-08
嘿嘿,我晚上回去把外壳做好,就是成品了
离线bd7rf
发帖
10148
只看该作者 197楼 发表于: 2007-02-09
终于看到fna的gps,谢谢.
离线BD5FNA
发帖
2159
只看该作者 198楼 发表于: 2007-02-10
现在才到啊,邮政要这么长的时间.
离线bd7rf
发帖
10148
只看该作者 199楼 发表于: 2007-02-10
'
现在才到啊,邮政要这么长的时间.
'
不是.早收到了,刚回家