应用笔记:SIM800C使用网络时间(NTP)同步功能
应用笔记:SIM800C使用网络时间(NTP)同步功能
- 介绍
1.1SIM800C
SIM800C模块可支持4频GSM/GPRS,工作的频段为:GSM850、EGSM900、DCS1800和PCS1900 MHz。模块的尺寸只有17.6*15.7*2.3 mm,几乎可以满足所有用户应用中的对空间尺寸的要求。模块的物理接口为42引脚的SMT焊盘,提供了模块的所有硬件接口。
-
两路串口(一路三线串口与一路全功能串口)
-
一路USB接口,便于用户调试、下载软件
-
一路音频接口,包含麦克风输入和受话器输出
-
可编程的通用输入输出接口(GPIO)
-
一路SIM卡接口
-
支持BT功能(需要软件版本支持)
SIM800C采用省电技术设计,在休眠模式下耗电流低至0.6毫安
1.2 NTP功能
NTP,即Network Time Protocol,是用来使计算机时间同步化的一种协议,它可以使计算
机对其服务器或时钟源(如石英钟,GPS 等等)做同步化,它可以提供高精准度的时间校正。
SIM800C模块仅支持由SNTP(简单网络时间协议Simple Network Time Protocol)功能,可用于同步因特网中的计算机时钟。
2 NTP功能相关的AT指令
为了NTP功能的整体独立性,这里将完整的记录从开机到获取到网络时间的全部步骤。
2.1 AT测试
命令 |
响应 |
描述 |
AT |
OK |
测试串口通信是否正常 |
2.2 设置波特率
命令 |
响应 |
描述 |
AT+IPR=115200 |
OK |
设置模组波特率固定为115200 |
2.3 关闭回响
命令 |
响应 |
描述 |
ATE0 |
OK |
设置模组关闭回响,即模组输出接收到的命令 |
注意:关闭回响是为了方便单片机在处理模组响应时能少处理一些字符串,在使用串口调试助手调试sim800c模组时可以,打开回响,方便理解。
模组默认打开回响。
2.4 查询SIM卡状态
命令 |
响应 |
描述 |
AT+CPIN? |
+CPIN: READY |
本条命令常用于查询SIM卡是否插好,READY表示已经读取到SIM卡,且不需要输入PIN码。 |
2.5 查询信号强度
命令 |
响应 |
描述 |
AT+CSQ |
+CSQ:<XXX> |
XXX表示信号强度; 0:小于等于-115dBm 1:-111dBm 2..30 :-110… -54dBm 31 :大于等于-52dBm 99 :未知或者不可测 |
2.6 查询GSM是否注册成功
命令 |
响应 |
描述 |
AT+CREG? |
+CREG: 0,1 |
返回(0,1)表示网络已经注册成功 |
2.7 查询GPRS是否注册成功
命令 |
响应 |
描述 |
AT+CGREG? |
+CGREG: 0,1 |
返回(0,1)表示GPRS网络已经注册成功 |
2.8 查询GPRS附着状态
命令 |
响应 |
描述 |
AT+CGATT? |
+CGATT: 1 |
已附着GPRS业务 |
2.9 设置NTP网络参数
命令 |
响应 |
描述 |
AT+SAPBR=3,1,”CONTYPE”,”GPRS” |
OK |
设置网络承载参数中的因特网类型为GPRS |
2.10 设置NTP网络APN参数
命令 |
响应 |
描述 |
AT+SAPBR=3,1,”APN”,”CMNET” |
OK |
设置网络承载参数中的接入点名称为“CMNET” |
注意:APN(Access Point Name):即“接入点名称”,用来标识GPRS的业务种类,是通过手机上网时必须配置的一个参数,其决定了手机通过哪种接入方式来访问网络。不同的运营商、不同的GPRS业务有不同的APN参数。
运营商名 |
NET 网络 APN |
WAP 网络 APN |
移动 |
CMNET |
CMWAP |
联通 |
UNINET / 3GNET |
UNIWAP / 3GWAP |
电信 |
CTNET |
CTWAP |
2.11 **网络场景
命令 |
响应 |
描述 |
AT+SAPBR=1,1 |
OK |
打开网络承载,**网络场景 |
2.12 获取本地IP地址
命令 |
响应 |
描述 |
AT+SAPBR=2,1 |
OK |
请求网络承载,获取分配的IP地址 |
2.13 设置NPT服务器
命令 |
响应 |
描述 |
AT+CNTP=”ntp1,aliyun.com”,32 |
OK |
设置NTP服务器为阿里云NTP服务器,时区为东八区。 |
注意:这里设置的时区参数为-47为48,实际上时区范围(-12~12),但考虑到有些国家和地区会用到半时区,甚至四分之一时区,所以将整个时区范围扩展 4 倍,这样在输入时区的时候都是用整数,而不需要用小数在。时区前面如果是负数则表示西时区。
2.14 开启网络时间同步
命令 |
响应 |
描述 |
AT+CNTP |
+CNTP:<XX> |
XX表示返回的状态: 1:网络时间同步成功 |
2.15获取本地时间
命令 |
响应 |
描述 |
AT+CCLK? |
+CCLK:YY/MM/DD,HH:mm:SS+32 |
获取到本地时间: YY:年(仅年份的十位和个位) MM:月 DD:日 HH:小时 Mm:分钟 SS:秒钟 加号后面数字表示时区 |
- 参考资料
1、SIM800系列_NTP_应用文档_V1.02
2、SIM800 Series_AT Command Manual
3、https://blog.****.net/ysgjiangsu/article/details/80310295 SIM800C通过NTP同步本地时间