嵌入式GUI时间转换处理与LCD12864菜单设计探索

需积分: 9 7 下载量 29 浏览量 更新于2024-08-09 收藏 532KB PDF 举报
"使用时间转换处理-由lcd12864初探嵌入式gui底层菜单设计" 在嵌入式系统开发中,特别是在GUI界面设计的过程中,时间转换处理是一个重要的环节,尤其对于处理历史数据或者时区转换的情况。在本案例中,我们探讨的是如何在PI系统中进行时间转换处理,这涉及到对 Offline 的 Archive 文件的操作。 首先,使用时间转换处理涉及到两个主要的命令行参数:-tfix 和 -of。 `-tfix` 参数是必需的,用于指定一个时间转换文件,这个文件定义了时间戳和偏移量的关系。而 `-tfixend` 和 `-oeendtime` 是可选参数,前者用于设定所有大于该时间的事件不再进行处理,后者则用于设定转换后Archive文件的结束时间,如果不指定,结束时间默认为最新事件时间。 时间转换文件是一种ASCII文本文件,其内容包含一系列的时间戳和偏移量,两者之间用逗号分隔。每一行以“#”开头的被视为注释,空行和空白会被忽略。偏移量的单位为秒。例如,如果文件中有一条记录"2000000000,3600",表示所有时间戳为2000000000及之后的事件需要向前移动3600秒,即一个小时,这意味着所有事件将被提前一小时处理。 在PI系统中,当数据从不同的源头进入或流出Archive文件时,可能会遇到各种问题。为了解决这些问题,我们有以下一系列的检查和解决步骤: 1. 确认问题是发生在Client机、Server机还是Interface机上,或者可能是网络问题。 2. 使用Telnet检查网络连接是否正常。 3. 查看Client机的`c:\pipc\dat`目录下的`setup.log`和`pipc.log`文件,以获取错误信息。 4. 在Server机上确认所有PI进程是否正常运行,并使用`netstart`检查。 5. 检查PI进程与`pinetmgr`的通信状态。 6. 使用`pidiag –eerrno`查看错误代码的意义。 7. 通过`pigetmsg`查看特定子系统的日志,以确定问题发生的具体时间点。 8. 当系统崩溃时,利用Windows的Dr. Watson工具收集异常信息。 9. 如果涉及`pinetmgr`,检查是否有其他进程占用5450端口。 10. 对于Archive问题,使用`piartool-as`和`piartool-ss`查看数据流信息,`piartool-aw`检查Archive文件的状态。 11. 如果与UpdateManager相关,用`pilistupd`来诊断问题。 12. 确定问题是否只影响特定接口或Point。 13. 检查内置的PI Point和Interface是否正常工作。 14. 分析软件安装或升级日志,如`SetupPIServer.log`和`PIServerMaster.log`。 15. 最后,访问PI技术支持网站(http://techsupport.osisoft.com)寻求官方帮助。 通过以上步骤,可以系统性地定位和解决PI系统中的各种问题,确保数据的准确性和系统的稳定性。在GUI底层菜单设计中,理解并熟练运用这些技术,将有助于创建更高效、用户友好的人机交互界面。