关于 SIM868 模块双串口功能
方式 1:GPS 的串口和 MCU 的串口直接连接,独立获取 GPS 信息。GPS 部分波特率需要
根据客户端需求而提供不同的版本,如 115200,9600 等
方式 2:GPS 串口和模块 UART2 直接连接,然后通过模块 UART1 获取 GPS 信息。GPS
部分波特率对客户没有任何关系
功能使用上也基本控制 AT 命令就可以了(以下只是演示,没有连接 GPS 天线),暂时参
考附件文档,后续在慢慢完善。
at+gsv
SIMCOM_Ltd
SIMCOM_SIM868
Revision:1418B02SIM868M32 // 该版本还在研发
阶段,没有正式归档
OK
at+cgnspwr=1 // 打开 GPS 供电电
源
OK
at+cgnstst=1 // 获取 NMEA 信息
(默认 GPS+GNSS)
OK
$GNGGA,000314.800,,,,,0,0,,,M,,M,,*58
$GPGSA,A,1,,,,,,,,,,,,,,,*1E
$GLGSA,A,1,,,,,,,,,,,,,,,*02
$GPGSV,1,1,00*79
$GLGSV,1,1,00*65
$GNRMC,000314.800,V,,,,,0.00,0.00,060180,,,N*52
$GNVTG,0.00,T,,M,0.00,N,0.00,K,N*2C
……
at+cgnstst=0 // 停止 NMEA 信息
输出
OK
at+cgnsinf
+CGNSINF: 0,,,,,,,,,,,,,,,,,,,, // 获取经纬度信息
OK
at+cgnsseq=?
+CGNSSEQ: (GGA,GSA,RMC,GSV)
OK
at+cgnsseq=”GGA” // 设置输出 GGA
信息
OK
at+cgnstst=1 // 开启获取 NMEA,
只有 GGA 信息 GGA,GSA,RMC,GSV
OK
$GNGGA,000424.800,,,,,0,0,,,M,,M,,*5C
$GPGSA,A,1,,,,,,,,,,,,,,,*1E
$GLGSA,A,1,,,,,,,,,,,,,,,*02
……
at+cgnstst=0
OK
AT+CGNSCMD=0,"$PMTK353,0,0,0,0,1*2A" // 设置输出北斗信息
OK
at+cgnstst=1 // 开启获取北斗信
息
OK
$BDGGA,000000.800,,,,,0,0,,,M,,M,,*51
$BDGSA,A,1,,,,,,,,,,,,,,,*0F
……
at+cgnstst=0 // 关闭获取北斗信
息
OK
备注:方式 1 情况下,向 GPS 内部发送信息,采用$PMTK 的方式来控制,切换客户所需
要的 GPS 或 beidou 模式,以及 GPS+北斗混合模式。
G+B 和 G+L 可以互相切换成功,更多切换测试如下(有天线,能正常定位条件下实测):
>>默认在 G+B。
>>发送切换到 G+L:$PMTK353,1,1,0,0,0*2B
返回:
$PMTK011,MTKGPS*08[0D][0A]
$PMTK010,001*2E[0D][0A]
$PMTK011,MTKGPS*08[0D][0A]
$PMTK010,002*2D[0D][0A]
接着输出 NMEA,只有 GP、GL、GN 语句,表示切换成功。
>>发送切回 G+B:$PMTK353,1,0,0,0,1*2B
返回:
$PMTK010,001*2E[0D][0A]
$PMTK011,MTKGPS*08[0D][0A]
$PMTK010,002*2D[0D][0A]
只有 GP、BD、GN 语句,表示切回成功。
>>发送切换到 G+L+B:$PMTK353,1,1,0,0,1*2A
返回:$PMTK001,353,2*34[0D][0A],表示有效命令,执行失败。
>>发送切换到 L+B:$PMTK353,0,1,0,0,1*2B
返回:$PMTK001,353,2*34[0D][0A],表示有效命令,执行失败。
>> 发送关闭所有星: $PMTK353,0,0,0,0,0*2B
$PMTK011,MTKGPS*08[0D][0A]
$PMTK010,001*2E[0D][0A]
$PMTK011,MTKGPS*08[0D][0A]
$PMTK010,002*2D[0D][0A]
接着输出 NMEA,无定位数据,所有星都不搜索,切换成功。
同理类似的如下单星也能切换成功:
>>切到单 G:$PMTK353,1,0,0,0,0*2A,成功。
>>切到单 L:$PMTK353,0,1,0,0,0*2A,成功。
>>切到单 B:$PMTK353,0,0,0,0,1*2A,成功。