GPS NMEA协议解析之MTK专用语句
文章目录
前言
NMEA是GPS的标准协议,它是National Marine Electronics Association 的缩写,是美国国家海洋电子协会的简称。
一、NMEA协议简介
NMEA是一套标准的GPS协议,其中主要包括数据和指令,分别有对应的格式。
二、NMEA数据格式
GPS指令是MTK专用语句,包括一系列语句。专用语句是参考移远L26-LB模组和移柯N10B模组,以下仅仅是其中一部分指令。
1.PMTK_CMD_STANDBY_MODE(161)
此语句用于使模块进入待机(Standby)模式以降低功耗
格式:
$PMTK161,<1><2><3>
示例:
$PMTK161,028 //输入
$PMTK001,161,3*36 //输出(应答语句)
MTK 定义的 NMEA 专用语句。
<1>“0”=待机(Standby)模式
<2>校验和,格式:十六进制
<3>每条 NMEA 语句以回车换行符“”结束
2.PMTK_SET_POS_FIX(220)
此语句用于设置定位时间间隔,也可用于设置 NMEA 通用语句的输出频率。
格式:
$PMTK220,<1><2><3>
示例:
$PMTK220,10001F //输入
$PMTK001,220,3*30 //输出(应答语句)
PMTK220:MTK 定义的 NMEA 专用语句。
<1>定位时间间隔(100~10000),单位:毫秒。
<2>校验和,格式:十六进制
<3>每条 NMEA 语句以回车换行符“”结束
3.PMTK_API_SET_MIN_SNR(306)
此语句用于设置在用卫星的最低信噪比。如果设置了最低信噪比的阈值,模块将不使用信噪比低于此
阈值的卫星。
格式:
$PMTK306,<1><2><3>
示例:
$PMTK306,151F //输入
$PMTK001,306,3,15*1D //输出(应答语句)
PMTK306:MTK 定义的 NMEA 专用语句。
<1>在用卫星最小信噪比阈值:范围:9~37
<2>校验和,格式:十六进制
<3>每条 NMEA 语句以回车换行符“”结束
4. PMTK_API_SET_NMEA_OUTPUT(314)
此语句用于设置单个或多个 NMEA 通用语句的输出频率。共有 22 个数据字段可用于配置所支持 NMEA
通用语句的输出频率。
格式:
$PMTK314,<1>,<2>,<3>,<4>,<5>,<6>,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0*<7><8>
示例:
模块每一次定位时仅输出一次 RMC 语句。
$PMTK314,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,035 //输入
$PMTK001,314,336 //输出(应答语句)
PMTK314:MTK 定义的 NMEA 专用语句。
<1> GLL数据频次: “0”:禁用的或不支持的语句“n”:每“n”次定位,输出一次;“n”的范围:1~5
<2> RMC数据频次: “0”:禁用的或不支持的语句“n”:每“n”次定位,输出一次;“n”的范围:1~5
<3> VTG数据频次: “0”:禁用的或不支持的语句“n”:每“n”次定位,输出一次;“n”的范围:1~5
<4> GGA数据频次: “0”:禁用的或不支持的语句“n”:每“n”次定位,输出一次;“n”的范围:1~5
<5> GSA数据频次: “0”:禁用的或不支持的语句“n”:每“n”次定位,输出一次;“n”的范围:1~5
<6> GSV数据频次: “0”:禁用的或不支持的语句“n”:每“n”次定位,输出一次;“n”的范围:1~5
<7>校验和,格式:十六进制
<8>每条 NMEA 语句以回车换行符“”结束