本帖最后由 54chenjq 于 2020-3-9 01:07 编辑
SNTP(Simple Network Time Protocol),是NTP协议的简化,SNTP虽然不如NTP精准,但非常适用于基于单片且具备网络通讯功能对时使用。
SNTP协议采用服务器/客户端工作方式,通过广播或者点播操作,实现对客户端系统时间的对时。客户端的时间可能由RTC来提供,长期运行过程中随着微小误差的积累,系统时间会出现较大偏离。此时,我们希望通过一种手段来完成系统时钟校准,对时的方式由很多种,比如接触比较多的:授时中心;通过以太网来获取网络时间。今天,在EK-TM4C1294XL上尝试用SNTP来获取时间。
基于实现初始以太网协议栈的基础上,开始j进入正题:
step 1. 建立一个UDP socket;
step 2. 将这个UDP socket与以太网接口进行绑定;
step 3. 连接NTP服务器;
step 4. 发送 NTP 请求;
step 5. 等待NTP服务器的应答;
setp 6. 解析时间,作user的对时操作。
从ntp7.aliyun.com获取时间,看看效果:
![](/data/attachment/forum/202003/07/185635owzzyilbklxsyky8.png.thumb.jpg)
此内容由EEWORLD论坛网友54chenjq原创,如需转载或用于商业用途需征得作者同意并注明出处