目录
在串口调试助手保存log这个功能实现时,发现如果点击保存,再取消时会出现异常错误。利用错误簇可以解决该问题。
1.错误簇概念
概念:错误簇是LabVIEW中的一个特殊的数据类型,该簇是由三个不同的控件组成:
-
1. status 状态布尔量,当有错误发生时该值为TRUE,没有错误发生时该值为FALSE;
-
2. code 标识错误代码的32位整型变量,
-
3. source 错误原因字符串,给出了出错原因的描述性信息。
2.错误簇用法
1. 如果错误输入(Error In)参数输入了一个错误,不要进行除了清理操作之外的任何其他操作,而清理操作包括了:关闭文件、关闭设备或通讯端口、将系统切换回空闲或安全状态(例如关闭电机等等);
2. 如果在函数或子VI内部出错,就需要通过函数或子VI的错误输出(Error Out)端点将该错误信息传递出去。如果从函数或子VI的错误输入端点早就传入了一个错误信息,那就原封不动的将该错误信息从错误输出端点输出。 以错误簇为条件的条件结构为例子, 当错误簇数据连接到Case结构的选择端子后,Case结构的两个默认帧的名称就自动变为“无错误”和“错误”了。在程序运行时,如果输入的错误簇中没有出错信息,就会执行Case结构中的No Error帧中的代码,反之则执行Error帧中的代码。
3.控件位置与放置:
1.在控件面板的数据容器中有输入错误3D和输出错误3D;
2.在控件面板ctrl+shift+space呼出快速放置,搜索erc和ern,按下enter就能放置控件;
4.合并错误
在程序中如果上游的函数就已经出错了,这时要做清理工作该怎么办呢?可以使用合并错误(Merge Error)函数将所有的上游错误融合在一起,如下图所示:
该函数程序面板的函数用户面板中找到。合并错误的函数将多个错误融合为一个错误,最终得到的错误是按照该函数的输入端至上而下的优先级得到的,也就是说优先级最高的输入端上如果有错误数据,最终的输出就是该错误数据。在实际的编程中,就需要按照程序中实际需要连接这个函数的错误输入数据。如果所有的输入端都没有错误发生,最后该函数的输出也是无错误的(no error)。