你好,欢迎访问达普芯片交易网!|  电话:010-82614113

达普芯片交易网 > 新闻资讯 > 设计应用

嵌入式北斗网络时间服务器的Web网页实现

发布时间:2022-08-23

关键词TCP/IPHTTPCortex-M4RAM链表

1 时间服务器功能描述

北斗卫星接收终端接收北斗导航卫星发射的 RNSS (Radio Navigation Satellite System,无线导航卫星系统)无线电波信号,在设备内部通过 PVT 解算,计算出用户当前的位置、速度以及时间信息。北斗的时间信息具有非常好的特性,其中包括年、月、日、时、分、秒等完整信息,并且其输出的 1pps 秒脉冲上升沿,对时精度可达到 20ns 以内,是一种非常好的时间基准源。北斗网络时间服务器就是利用北斗接收终端中精确的时间信息,通过格式转换,将其转换成标准 NTP(Network Time Protocol,网络时间协议)协议传输,在以太网端口实现对其它设备的授时功能,将北斗时间转换成网络时间服务器的基准时间。在网络时间服务器中授时和数据传输都使用网口,添加 Web 网页,可以使参数的配置和监测也使用网口,一口多用,灵活方便,并且简化了设备的对外接口。image.png

2 Web网页实现方法

北斗网络时间服务器内部采用 STM32 的 Cortex-M4 芯片作为主控 MCU,芯片内部带有网络媒体控制器(MAC),只需要外接接口芯片就可以完成以太网的硬件功能设计。在软件设计中,使用开源的 Lwip 协议栈来实现嵌入式网络功能。Lwip 是一套专门为嵌入式系统设计的轻量级网络协议栈,支持 TCP/IP (Transmission Control Protocol/Internet Protocol,传输控制协议 / 网际协议)传输层协议,支持 HTTP(Hyper Text Transfer Protocol,超文本传输协议)应用层协议。HTTP 应用层协议在 TCP/IP 传输层基础上,使用 TCP/ IP 的端口 80,实现与 IE(Internet Explorer,网络浏览器)之间的网络通信。在嵌入式数据存储方面,软件设计中将 M4 芯片的内嵌 FLASH 分成两部分,一部分用于存储程序,一部分用于存储参数。芯片内嵌的 Flash 具有掉电保存功能,设置好的配置参数每次设备上电后都可以自动调入使用。设备中嵌入的 Web 网页采用HTML(Hyper Text Markup Language,超文本标记语言)脚本语言编写,要使用的网页首先在 PC(个人电脑)机上的编辑环境中设计完成,然后将网页生成二进制流的格式存储到嵌入式 FLASH 中,嵌入的方法是在程序中创建数组,将数据拷贝输入。多张网页以链表的数据结构存储,便于 IE 调用时查找。北斗网络时间服务器在与 PC 机通信时,将 FLASH 中的网页调入 Cortex-M4RAM 中实现参数更新,PC 机上的 IE 浏览器可以直接打开 HTML 语言网页,进行浏览和参数修改。Cortex-M4 程序中定义的变量参数,根据现场数据变化后,将参数替换到 HTML 脚本的二进制流中,通过 HTTP 协议与 IE 浏览器进行数据交互。在 IE 中设置的参数通过 HTTP 协议传输给嵌入式设备,一方面更新到 HTML 脚本的二进制流中,用于下次 IE 点击时调用,另一方面存储到嵌入式系统的数据 FLASH 中保存,这些被保存的参数在设备上电时,会根据程序调用,实时更新到网页中。

image.png

在嵌入式设备中添加 Web 网页,要充分评估有限的硬件资源,既要功能完善,也要考虑可靠性及实时性,网页在设计中不宜太过繁琐,毕竟底层硬件资源有限,增加硬件资源就是增加成本。在网页参数设置和更新时间段,要充分考虑网页任务和北斗网络时间服务器其它任务的配合,做到任务执行时间的合理分配,既不互相影响,保证其它任务的实时性,也要提高网页执行效率,更不能丢失设备数据。

1661225086388933.png

3 结语

现代的嵌入式设备中,以太网通信功能越来越普遍,在北斗接收终端中添加以太网功能,形成北斗网络时间服务器,拓展了北斗时间的应用形式。同时,将 Web 网页也嵌入到北斗网络时间服务器中,设备在与 PC 机通信时,就可以通过 IE 浏览器直接查看和设置服务器参数,不需要额外配置软件,非常方便。

参考文献:

[1] 朱升林,欧阳骏,杨晶.嵌入式网络那些事[M].北京:中国水利水电出版社,2015.

[2] 阮晓龙,李朋楠,于冠军,等.Web前端开发从学到用完美实现[M].北京:中国水利水电出版社,2016.

[3] STM32F4XX参考手册[G].2018.

[4] DP83640参考手册[G].2021.

[5] 北斗三号民用终端通用数据接口要求[S].北京:中国卫星导航定位应用管理中心,2021.

(注:本文转载自《电子产品世界》杂志2022年8月期)

热点排行

在线人工客服

点击这里给我发消息

点击这里给我发消息

点击这里给我发消息

010-82614113

客服在线时间周一至周五
9:00-17:30