LabVIEW 转换unix timestamp的简便方法
2020-10-13 本文已影响0人
刘小白DOER
笔者利用LabVIEW 基于wincap来网络抓包时,发现里面抓取包的时间是UINX时间,即是从世界协调时1970年1月1日0时0分0秒起至现在的总秒数,不考虑闰秒。那在NI平台上怎么转换呢?
有一个函数——秒至日期/时间转换, 可以帮助我们方便的完成这个功能。高级函数就是NB!在树莓派linux系统上面,可以直接运行来查看unix时间,echo $(date +%s) 。
linux系统查看unix时间 labview秒至日期/时间转换but!时间标识可以是时间标识或数值, 该数值为自1904年1月1日星期五12:00 a.m(通用时间[01-01-1904 00:00:00])以来无时区影响的秒数。那1904-1970这段时间的秒数需要自己手动计算加入。第二个是该函数在转换时间标识时会丢失秒数的小数部分,针对网络数据帧的时间是包含小数点的,这个参数也需要加入。程序框图如下:
LabVIEW 转换unix timestamp程序框图功能虽小,当时在计算1904-1970之间的秒数时花了一点时间,而且在计算时需要世界协调时UTC时间。在最终转换秒数时,则使用北京时间。而且在秒数小数部分,笔记也使用元素同址操作结构,将秒数小数部分添加进去。那这个程序就可以包装成子函数,两个输入(unix时间、秒数小数部分),一个输出部分,即北京时间。
需要源码可以留邮箱。