以RK3568为例,ARM核心板如何实现NTP精准时间同步?

  1. 背景

网络时间协议NTP(Network TimeProtocol)是用于互联网中时间同步的标准互联网协议,可以把计算机的时间同步到某些时间标准。NTP对于我们产品来说有什么用呢,简单的讲,当你的设备时间不准确了,你可以接入到互联网,从网上同步一下时间,非常方便。

对于我们嵌入式行业,大批量生产板卡烧写系统时,逐个给产品统一时间无疑是一件很痛苦的事情,所以我们选择一台主机作为NTP服务器,让板卡通过NTP服务去同步该时间,便可高效解决这个问题!

2. 技术实现

接下来为大家演示下使用方法,这里使用RK3568评估板与一台电脑主机做方案验证。

图1 HD-RK3568-CORE核心板

2.1 电脑主机配置

1.Windows 运行打开"regedit"编辑注册表;

2.找到"HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters",Type设定值修改为"NTP";

3.找到"HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config",AnnounceFlags修改设定值为5。AnnounceFlags的值为5时,强制时钟源为本地CMOS时钟。

4."HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer",Enabled数值修改为1。此作用为开启NTP服务器功能(默认是不开启NTP Server服务,除非电脑升级成为域控制站)

5.重起Windows Time服务

a)打开开始菜单输入"CMD"在命令行模式下输入:

复制代码
net stop w32time && net start w32time

重启一下win32time服务,如未启动w32time 只需执行 net start w32time 即可

b) 打开运行框 输入services.msc 打开服务.

将windows time 服务设置为自启

(实测开启自动启动,重启后依然没有启动,需要手动启动)

6.NTP服务为UDP 123端口,注意防火墙放开该端口,windows防火墙放开方法:

复制代码
netsh advfirewall firewall add rule name="NTP Server" dir=in action=allow protocol=UDP localport=123

7.设置网口ip为192.168.1.10与开发板保持同网段。

2.2 linux端(RK3568)

1.如使用buildroot文件系统,则使用chrony去同步时间:

复制代码
/etc/chrony.conf
server 192.168.1.110 iburst
maxdistance 16.0
makestep 1.0 3
driftfile /var/lib/chrony/drift
rtcsync

重启chrony服务

复制代码
/etc/init.d/S49chrony restart

2.如使用debian使用ntp

复制代码
systemctl stop ntp
ntpdata 192.168.1.110

END

相关推荐
u1521096484919 分钟前
S.S.Audio PRO A2音频隔离器
嵌入式硬件·音视频·实时音视频·视频编解码·视频
zd84510150037 分钟前
RS485 总线详解
单片机·嵌入式硬件
半条-咸鱼2 小时前
【STM32】I2C协议原理、HAL读写与OLED显示操作
嵌入式硬件·c·信息与通信
wohoo_wangzi2 小时前
苏州晟雅泰电子:关于W25Q128JVSIQ这个芯片物料的参数,规格及应用领域
嵌入式硬件
科芯创展5 小时前
1A,1MHz,30VIN,XZ4115,降压恒流LED驱动芯片
单片机·嵌入式硬件
集芯微电科技有限公司5 小时前
四通道2A输出集成功率电感降压模块专为紧凑型方案设计
人工智能·单片机·嵌入式硬件·生成对抗网络·计算机外设
踏着七彩祥云的小丑5 小时前
嵌入式测试学习第 37 天:异常场景测试:断电、拔插、干扰、非法指令
单片机·嵌入式硬件·学习
望眼欲穿的程序猿5 小时前
读取芯片内部温度传感器
嵌入式硬件·rust
望眼欲穿的程序猿5 小时前
ADC 模拟电压采集
嵌入式硬件·rust
IT方大同5 小时前
(嵌入式操作系统)信号量
嵌入式硬件·c#