sim808 gps 定位数据解析

  1. AT+CGNSPWR=1 //打开GPS电源

正常返回“OK

AT+CGNSPWR=0 //关闭GPS电源

 

2AT+CGNSSEQ="RMC"//定义NMEA解析

返回:

OK

 

3AT+CGNSINF //获取GPS定位信息

返回:

AT+CGPSINF

+CGNSINF:1,1,20151031073440.000,22.275393,113.507882,5.200,0.02,351.3,1,,1.2,1.9,1.5,,12,9,,,46,,

OK

数据内容定义,请查阅“SIM800 Series_GNSS_Application Note V1.00

  1. AT+CGNSURC=1//间隔1S输出定位信息

返回:

+UGNSINF:1,1,20151031073659.000,22.275405,113.507875,4.700,0.04,250.6,1,,1.2,1.9,1.5,,12,9,,,48,,

之后串口就会不断的输出NMEA信息

 

详细的配置和信息的解析,请查看“SIM800 Series_GNSS_ApplicationNote V1.00”。


定位不成功:

+UGNSINF:1,0,20161105064849.104,,,,0.00,0.0,0,,,,,,4,0,,,38,,

+UGNSINF:1,0,20161105064945.303,,,,726.95,234.9,0,,,,,,7,3,,,45,,


定位成功:

+UGNSINF:1,1,20161105065046.000,22.827863,113.61953,38.100,0.00,242.5,1,,1.3,1.6,0.9,,9,6,,,46,,

+UGNSINF: 1,1,20161105073116.000,22.858005,113.263150,40.900,7.56,166.2,1,,0.9,1.2,0.8,,10,9,,,42,,


{
    if((p1 = (char*)strstr((const char*)Uart2_Buf, "+UGNSINF: 1,1,")), (p1 != NULL)) //寻找开始符
    {
        if((p2 = (char*)strstr((const char*)p1, "\x0d\x0a")), (p2 != NULL)) //寻找结束符
        {
            *p2 = 0;//添加结束符
            p2 = strtok((p1), ",");
            p2 = (char*)strtok(NULL, ",");
            p2 = (char*)strtok(NULL, ",");
            UART1_SendString("时间:");
            UART1_SendString((char *)p2);
            UART1_SendLR();
            p2 = (char*)strtok(NULL, ",");
            UART1_SendString("纬度:");
            UART1_SendString((char *)p2);
            UART1_SendLR();
            p2 = (char*)strtok(NULL, ",");
            UART1_SendString("经度:");
            UART1_SendString((char *)p2);
            UART1_SendLR();
            p2 = (char*)strtok(NULL, ",");
            UART1_SendString("海拔:");
            UART1_SendString((char *)p2);
            UART1_SendLR();
            UART1_SendLR();
            CLR_Buf2();
        }
    }
}

  • 2
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值