最近在作一個嵌入式的項目,遇到了一下的麻煩:shell
- 服務器和板卡(arm)之間須要嚴格的時間同步
- 板子啓動wifi配網成功以後,總會有必定的時間延時
- 配網以前的時間均爲1970-01-01,配網以後變爲如今的UTC本地時間
如今須要測試一下,從聯網成功,到時間更新完成,大體的延遲時間。bash
ARM板子的時間同步模塊爲ntp
模塊,以下圖所示:
(注:ntp是網絡時間同步協議,很是精確和穩定,可自行維基百科查詢)服務器
本次測試採用shell腳本形式,代碼以下:網絡
#!/bin/bash #ping IP地址(或網址)建議使用IP地址 ip=baidu.com cnt=2 timer=0 #從聯網到時間更新所消耗的秒數 #每次ping 兩次ip地址 while true do ping -c $cnt -w 2 $ip > /dev/null 2>&1 if [ $? -eq 0 ] then echo "聯網成功" #若是ping通了,表示wifi已經聯網了 while true do echo "timer=$timer" let "timer++" time=`date|awk '{print $6}'` #獲取板卡中當前的時間(6是由於個人板卡第6列是年份,這個須要根據系統不一樣自行修改) if [ $time -eq 2018 ] then echo "the time is $time" echo "從聯網到更新時間共經歷$timer秒" exit else echo "The time is $time" fi sleep 1 done else echo "網絡未鏈接" sleep 1 fi done
PS: 以上代碼若有問題,請留言,多謝!測試