新聞中心

EEPW首頁(yè) > 網(wǎng)絡(luò)與存儲(chǔ) > 設(shè)計(jì)應(yīng)用 > 嵌入式北斗網(wǎng)絡(luò)時(shí)間服務(wù)器的Web網(wǎng)頁(yè)實(shí)現(xiàn)

嵌入式北斗網(wǎng)絡(luò)時(shí)間服務(wù)器的Web網(wǎng)頁(yè)實(shí)現(xiàn)

作者:董希彥(航天恒星空間技術(shù)應(yīng)用有限公司,西安 710076) 時(shí)間:2022-08-23 來源:電子產(chǎn)品世界 收藏

摘要:本文介紹了嵌入式北斗網(wǎng)絡(luò)時(shí)間服務(wù)器的基本功能,重點(diǎn)講述了如何在該設(shè)備中添加Web網(wǎng)頁(yè)的方法及實(shí)現(xiàn)過程,以及在嵌入式設(shè)備中添加此功能應(yīng)該考慮的資源因素。

本文引用地址:http://butianyuan.cn/article/202208/437622.htm

關(guān)鍵詞;;;

1 時(shí)間服務(wù)器功能描述

北斗衛(wèi)星接收終端接收北斗導(dǎo)航衛(wèi)星發(fā)射的 RNSS (Radio Navigation Satellite System,無線導(dǎo)航衛(wèi)星系統(tǒng))無線電波信號(hào),在設(shè)備內(nèi)部通過 PVT 解算,計(jì)算出用戶當(dāng)前的位置、速度以及時(shí)間信息。北斗的時(shí)間信息具有非常好的特性,其中包括年、月、日、時(shí)、分、秒等完整信息,并且其輸出的 1pps 秒脈沖上升沿,對(duì)時(shí)精度可達(dá)到 20ns 以內(nèi),是一種非常好的時(shí)間基準(zhǔn)源。北斗網(wǎng)絡(luò)時(shí)間服務(wù)器就是利用北斗接收終端中精確的時(shí)間信息,通過格式轉(zhuǎn)換,將其轉(zhuǎn)換成標(biāo)準(zhǔn) NTP(Network Time Protocol,網(wǎng)絡(luò)時(shí)間協(xié)議)協(xié)議傳輸,在以太網(wǎng)端口實(shí)現(xiàn)對(duì)其它設(shè)備的授時(shí)功能,將北斗時(shí)間轉(zhuǎn)換成網(wǎng)絡(luò)時(shí)間服務(wù)器的基準(zhǔn)時(shí)間。在網(wǎng)絡(luò)時(shí)間服務(wù)器中授時(shí)和數(shù)據(jù)傳輸都使用網(wǎng)口,添加 Web 網(wǎng)頁(yè),可以使參數(shù)的配置和監(jiān)測(cè)也使用網(wǎng)口,一口多用,靈活方便,并且簡(jiǎn)化了設(shè)備的對(duì)外接口。image.png

2 Web網(wǎng)頁(yè)實(shí)現(xiàn)方法

北斗網(wǎng)絡(luò)時(shí)間服務(wù)器內(nèi)部采用 STM32 的 芯片作為主控 MCU,芯片內(nèi)部帶有網(wǎng)絡(luò)媒體控制器(MAC),只需要外接接口芯片就可以完成以太網(wǎng)的硬件功能設(shè)計(jì)。在軟件設(shè)計(jì)中,使用開源的 Lwip 協(xié)議棧來實(shí)現(xiàn)嵌入式網(wǎng)絡(luò)功能。Lwip 是一套專門為嵌入式系統(tǒng)設(shè)計(jì)的輕量級(jí)網(wǎng)絡(luò)協(xié)議棧,支持 (Transmission Control Protocol/Internet Protocol,傳輸控制協(xié)議 / 網(wǎng)際協(xié)議)傳輸層協(xié)議,支持 (Hyper Text Transfer Protocol,超文本傳輸協(xié)議)應(yīng)用層協(xié)議。 應(yīng)用層協(xié)議在 傳輸層基礎(chǔ)上,使用 TCP/ IP 的端口 80,實(shí)現(xiàn)與 IE(Internet Explorer,網(wǎng)絡(luò)瀏覽器)之間的網(wǎng)絡(luò)通信。在嵌入式數(shù)據(jù)存儲(chǔ)方面,軟件設(shè)計(jì)中將 M4 芯片的內(nèi)嵌 FLASH 分成兩部分,一部分用于存儲(chǔ)程序,一部分用于存儲(chǔ)參數(shù)。芯片內(nèi)嵌的 Flash 具有掉電保存功能,設(shè)置好的配置參數(shù)每次設(shè)備上電后都可以自動(dòng)調(diào)入使用。設(shè)備中嵌入的 Web 網(wǎng)頁(yè)采用HTML(Hyper Text Markup Language,超文本標(biāo)記語(yǔ)言)腳本語(yǔ)言編寫,要使用的網(wǎng)頁(yè)首先在 PC(個(gè)人電腦)機(jī)上的編輯環(huán)境中設(shè)計(jì)完成,然后將網(wǎng)頁(yè)生成二進(jìn)制流的格式存儲(chǔ)到嵌入式 FLASH 中,嵌入的方法是在程序中創(chuàng)建數(shù)組,將數(shù)據(jù)拷貝輸入。多張網(wǎng)頁(yè)以的數(shù)據(jù)結(jié)構(gòu)存儲(chǔ),便于 IE 調(diào)用時(shí)查找。北斗網(wǎng)絡(luò)時(shí)間服務(wù)器在與 PC 機(jī)通信時(shí),將 FLASH 中的網(wǎng)頁(yè)調(diào)入 中實(shí)現(xiàn)參數(shù)更新,PC 機(jī)上的 IE 瀏覽器可以直接打開 HTML 語(yǔ)言網(wǎng)頁(yè),進(jìn)行瀏覽和參數(shù)修改。Cortex-M4 程序中定義的變量參數(shù),根據(jù)現(xiàn)場(chǎng)數(shù)據(jù)變化后,將參數(shù)替換到 HTML 腳本的二進(jìn)制流中,通過 HTTP 協(xié)議與 IE 瀏覽器進(jìn)行數(shù)據(jù)交互。在 IE 中設(shè)置的參數(shù)通過 HTTP 協(xié)議傳輸給嵌入式設(shè)備,一方面更新到 HTML 腳本的二進(jìn)制流中,用于下次 IE 點(diǎn)擊時(shí)調(diào)用,另一方面存儲(chǔ)到嵌入式系統(tǒng)的數(shù)據(jù) FLASH 中保存,這些被保存的參數(shù)在設(shè)備上電時(shí),會(huì)根據(jù)程序調(diào)用,實(shí)時(shí)更新到網(wǎng)頁(yè)中。

image.png

在嵌入式設(shè)備中添加 Web 網(wǎng)頁(yè),要充分評(píng)估有限的硬件資源,既要功能完善,也要考慮可靠性及實(shí)時(shí)性,網(wǎng)頁(yè)在設(shè)計(jì)中不宜太過繁瑣,畢竟底層硬件資源有限,增加硬件資源就是增加成本。在網(wǎng)頁(yè)參數(shù)設(shè)置和更新時(shí)間段,要充分考慮網(wǎng)頁(yè)任務(wù)和北斗網(wǎng)絡(luò)時(shí)間服務(wù)器其它任務(wù)的配合,做到任務(wù)執(zhí)行時(shí)間的合理分配,既不互相影響,保證其它任務(wù)的實(shí)時(shí)性,也要提高網(wǎng)頁(yè)執(zhí)行效率,更不能丟失設(shè)備數(shù)據(jù)。

1661225086388933.png

3 結(jié)語(yǔ)

現(xiàn)代的嵌入式設(shè)備中,以太網(wǎng)通信功能越來越普遍,在北斗接收終端中添加以太網(wǎng)功能,形成北斗網(wǎng)絡(luò)時(shí)間服務(wù)器,拓展了北斗時(shí)間的應(yīng)用形式。同時(shí),將 Web 網(wǎng)頁(yè)也嵌入到北斗網(wǎng)絡(luò)時(shí)間服務(wù)器中,設(shè)備在與 PC 機(jī)通信時(shí),就可以通過 IE 瀏覽器直接查看和設(shè)置服務(wù)器參數(shù),不需要額外配置軟件,非常方便。

參考文獻(xiàn):

[1] 朱升林,歐陽(yáng)駿,楊晶.嵌入式網(wǎng)絡(luò)那些事[M].北京:中國(guó)水利水電出版社,2015.

[2] 阮曉龍,李朋楠,于冠軍,等.Web前端開發(fā)從學(xué)到用完美實(shí)現(xiàn)[M].北京:中國(guó)水利水電出版社,2016.

[3] STM32F4XX參考手冊(cè)[G].2018.

[4] DP83640參考手冊(cè)[G].2021.

[5] 北斗三號(hào)民用終端通用數(shù)據(jù)接口要求[S].北京:中國(guó)衛(wèi)星導(dǎo)航定位應(yīng)用管理中心,2021.

(注:本文轉(zhuǎn)載自《電子產(chǎn)品世界》雜志2022年8月期)



關(guān)鍵詞: 202208 TCP/IP HTTP Cortex-M4 RAM 鏈表

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉