1.UM220-Ⅲ GPS模块简介(图片自网络)
采用ARM9内核的高灵敏度,高性能,低功耗的BDS+GPS双模式定位模块,简单来说就是一个串口GPS模块
可以输出经度,纬度,时间,实现GPS定位等的一个模块,它通过串口发送数据,波特率9600,一位停止位,无校验位
2.你不可不知道的NMEA-0183协议
这是GPS数据的通用协议,也可理解为数据格式。详情见度娘,我就不讨论了,总之它规定了GPS模块该则怎么给你发,
以及发哪些数据。举个例子,其中一条$GNRMC,134645.000,A,2603.964436,N,11912.410232,E,0.000,15.744,030718,,E,A*0B,
$GNRMC 是语句,就是说这个数据里包含了什么,后面跟的就是这些数据,这个其他地方有详细解释,我就不罗嗦了
3.处理思路
再来看这个语句:我们把它拆分一下:
$ //判断$,
GNRMC //判断命令类型,见上面说的那个协议
,
134645.000 //第一个数据
,
A
,
2603.964436 //以此类推
,
N
拆完之后,其实处理方法也就出来了:判断命令字类型-得到需要的数据字段-处理数据-显示
4.中断处理程序
5.本程序已开源在Github:https://github.com/MyWorkFor/UM220-IIIGPS,这里放不下
6.附上调试结果(不是最新)
|