基于STM32的SNTP授時服務器的研究與設(shè)計
摘要:針對工控領(lǐng)域?qū)r間同步的要求,給出了以STM32和W5100為核心來搭建網(wǎng)絡硬件平臺,并在其上實現(xiàn)簡單網(wǎng)絡時間協(xié)議(SNTP),從而建立嵌入式授時服務器的設(shè)計與實現(xiàn)方法。該系統(tǒng)運行穩(wěn)定,能夠?qū)崿F(xiàn)網(wǎng)絡時間同步。
關(guān)鍵詞:STM32處理器;SNTP授時;簡單網(wǎng)絡時間協(xié)議;時間同步
O 引言
隨著信息技術(shù)和網(wǎng)絡技術(shù)的飛速發(fā)展,網(wǎng)絡互連已經(jīng)滲透到國民經(jīng)濟的各行各業(yè)。而網(wǎng)絡時間同步也越來越受到重視,特別是局域網(wǎng)時間同步在國家安全和國民經(jīng)濟的諸多領(lǐng)域(如國防軍工、電信網(wǎng)、金融業(yè)、交通運輸、電子商務和電力系統(tǒng)等部門)越發(fā)不可或缺。隨著嵌入式技術(shù)的發(fā)展,嵌入式與網(wǎng)絡時間同步技術(shù)的結(jié)合,無疑具有良好的發(fā)展前景。
1 方案設(shè)計
目前網(wǎng)絡授時的實現(xiàn)方法有很多種,本文采用自行設(shè)計的嵌入式系統(tǒng)并在上面實現(xiàn)SNTP協(xié)議。從而完成網(wǎng)絡時間的同步。其系統(tǒng)框圖如圖l所示。
本系統(tǒng)采用C/S模型,分為網(wǎng)絡授時同步服務器和客戶端兩大部分,本文主要對網(wǎng)絡授時服務器部分進行研究。
在網(wǎng)絡授時同步服務器中,處理器STM32f103由內(nèi)部RTC模塊結(jié)合日歷算法來給出時間信息(年月日時分秒),再從GPS獲取時間信息,并修正自己的時間,最后結(jié)合W5100芯片搭建出一個時間服務器。當客戶端向服務器發(fā)出請求時,便可同步地統(tǒng)一客戶端的時間信息,并達到ms級精度。網(wǎng)絡傳輸時需實現(xiàn)SNTP應用層協(xié)議,設(shè)計中通過構(gòu)造SNTP協(xié)議包,并根據(jù)同步算法可計算出包交換的往返延遲。
本系統(tǒng)采用ST公司基于Cortex-M3內(nèi)核的STM32系列處理器.Cortex-M3內(nèi)核是專門用于設(shè)計高性能、低功耗、低成本、實時性嵌入式應用
系統(tǒng)的處理器核,它在提升性能的同時,又提高了代碼密度的Thumb-2指令集,同時也大幅度提高了中斷響應的緊耦合嵌套向量中斷控制器的性能。所有新功能都同時具有業(yè)界最優(yōu)的功耗水平。
TCP/IP協(xié)議棧的實現(xiàn)采用的固件芯片W5100是韓國WIZnet公司推出的固件網(wǎng)絡芯片,它集TCP/IP協(xié)議棧、以太網(wǎng)MAC和PHY為一體,可支
持TCP,UDP、ICMP、IGMP、IPv4、ARP,PPPoE、Ethemet等網(wǎng)絡協(xié)議;同時支持4個獨立的Socket通信,內(nèi)部16 K字節(jié)的發(fā)送/接收緩沖區(qū)可
快速進行數(shù)據(jù)交換,最大通信速率可達到25Mbps。此外,W5100還內(nèi)嵌10BaseT/100BaseTX以太網(wǎng)物理層,可支持自動應答(全雙工/半雙工
模式),并提供多種總線(兩種并行總線和SPI總線)接口方式,可以方便地與各種MCU連接。W5100器件的推出大大簡化了硬件電路設(shè)計,可使微控制器在沒有操作系統(tǒng)支持的情況下,真正的實現(xiàn)單芯片接入Internet。
評論