现在的位置: 首页 > 综合 > 正文

GPS数据接收 串口调试感受

2012年02月24日 ⁄ 综合 ⁄ 共 958字 ⁄ 字号 评论关闭
 注册这个账户也有一段日子了,不知不觉已经研2了,时间过的好快,研3的学长已经答辩完,马上要离开学校去工作了,在南京,一份不错的工作。这学期已经过去一个月了,没忙出个什么东西来。还在继续我们的割草机,导师是个追求完美的人,所以我也在一点点的完成着自己的事,今天就记录下将GPS添加到车子上的一点琐事吧。

  首先熟悉了一下板子,板子是顾老师(注:顾老师其实也是我们导师的学生,大我3界,后来研究生毕业留校做学生工作)做的,已经做过好几个版本了,至今还算挺稳定,以前傻乎乎的,以为做硬件不要写代码,其实不是,做硬件比想象中的要难,要做好一个硬件,要将一个完整的硬件接口提供给其他同学,我现在的工作就是调通它们,然后才可以考虑如何将他们集成起来。先前板子上预留的接口不多,这次所做的是将原先调试用的串口改造成GPS数据接收的通道。顾老师考虑的也挺周到,一个串口留了2个接口,一个是TTL电平的,一个是RS232电平的(我也是最近才知道的,以前接触硬件少啊。- -!)。

  再说说GPS吧,为了实现割草机无边界割草,我们决定加入GPS模块,最终预想是GPS的数据误差在1M以内,这部分实验也在由另一同学进行着,我要做的是考虑怎样将其连接到车子上,GPS模块是在网上买的成品,后来问了下,居然没有什么资料。没办法,只得再找了卖家,咨询得知,它是TTL电平,波特率是9600,无奇偶校验,1个停止位,3个引脚:一个地,一个数据发送,一个电压5V。有了这些信息后就能动手了。

  再说说板子的事吧,先前TTL那只能提供3.3V的电压,所以要跳一下线。简单了事之后,下面就是编写中断函数,这个网上有,用的是NIOS的API,其实这些工作量不是很大,1天的时间,但有个小小的问题,花费了我不少时间,主要原因是它的软件初始化没完成好,并不是软件写的不好,造成它的原因是我们购买的GPS模块是不可控制的,只要一供电就会发数据,这样在做软件初始化的时候,数据中断会打断,这个问题困扰了不少的时间,后来软件初始化做了小调整,就是在初始化开始就先使用disable函数,防止数据的中断。按道理是不应该的,最起码是要到register完后中断才有效,这点想的还不是很透彻。

  中断函数有效后,下面就是要对GPS的数据进行分析了,这是正在做的事了。。。

抱歉!评论已关闭.