你要先理解这个思路,代码你不能就是复制别人的就得了
1,先给GPRMC准备一个数组,一个长度大于GPRMC ASCII数据个数的数组
2,串口中断检测到"GNRMC"这几个字符之后,才会再开始保存接下来接收到的数据,也不一定是要完全得是GNRMC,因为在所有的数据中,只要用G R C就可以区分于其它数据了
3,接收到GNRMC所有数据,或者是接收的数据个数大于设定的个数之后,就不再接收了,因为GPS模块是会一直发送数据的
4,接收到有数据,保存在数组中,然后就去读取数组中的数据就行了,可以用 ......[56]这种的直接读取,不用像我代码中那样++的,那是我当时为了测试才用的,因为没有问题,所以就没有去优化了
5,可以用串口助手发送自己类似于"$GNRMC,111111.222,A,3333.4444,N,11408.4790,E,0.53,292.44,141216,,,A*7
5"这样的,自己设定有数据,再显示出来,自己就可以从中查找出问题来 |