LabVIEW条件配置对话框

条件配置对话框(Configure Condition Dialog Box)

要求:Base Development System

当右键单击**条件禁用结构(Conditional Disable Structure)**并选择以下选项时,会显示此对话框:

  • Add Subdiagram After(在后面添加子图)

  • Add Subdiagram Before(在前面添加子图)

  • Duplicate Subdiagram(复制子图)

  • Edit Condition For This Subdiagram(编辑子图条件)

此对话框用于配置子图执行的条件。


对话框组成部分

  1. Expression(表达式)

    指定一组条件语句,用于判断结构中哪个子图处于活动状态。表达式包括以下内容:

    Symbol(s)(符号)

    显示所有可用符号。

    符号 描述
    CPU 指定子图运行的处理器,需在 LabVIEW 项目中才能访问该符号。
    DeviceCode 指定目标设备的产品标识代码,格式为十六进制。
    FPGA_EXECUTION_MODE 根据 FPGA VI 的执行模式(如 FPGA 目标、模拟 I/O 等)决定执行的子图。需在 LabVIEW 项目下的 FPGA 目标中使用。
    FPGA_TARGET_FAMILY 指定 FPGA 家族(如 Virtex-II、Virtex-5),需在 LabVIEW 项目下的 FPGA 目标中使用。
    FPGA_TARGET_CLASS 指定 FPGA 目标的类别(例如 NI PXIe-7965R 的类别是 PXIE-7965R)。
    OS 指定子图运行的操作系统,需在 LabVIEW 项目中才能访问该符号。
    RUN_TIME_ENGINE 指定是否在 LabVIEW 运行时引擎(Run-Time Engine)中运行子图。
    TARGET_BITNESS 指定 LabVIEW 或其运行时引擎的位宽(32 位或 64 位)。
    TARGET_TYPE 指定子图运行的平台或目标(如 Windows、FPGA、嵌入式设备等)。
    <Custom Symbol>(自定义符号) 用户可在 Conditional Disable Symbols 页面中自定义符号。未定义的符号会标记为星号(*)。符号区分大小写。
  2. 比较运算符

    • ==:表示符号的值等于指定值。

    • !=:表示符号的值不等于指定值。

  3. Value(s)(值)

    指定符号的具体值,区分大小写,需准确输入以下有效值之一:

    符号 有效值
    CPU PowerPC、x86、null
    FPGA_EXECUTION_MODE FPGA_TARGET、DEV_COMPUTER_SIM_IO、DEV_COMPUTER_REAL_IO、THIRD_PARTY_SIMULATION
    FPGA_TARGET_FAMILY VIRTEX2、VIRTEX5、VIRTEX6、SPARTAN3、SPARTAN6、ZYNQ、KINTEX7
    OS Linux、Mac、null、PharLap、VxWorks、Win
    RUN_TIME_ENGINE True、False
    TARGET_BITNESS 32、64
    TARGET_TYPE Windows、FPGA、Embedded、RT、Mac、Unix、PocketPC、DSP
  4. Make Default?(设为默认)

    指定当前子图是否为默认子图。


知识点总结

  • 条件禁用结构允许根据目标环境配置代码的执行路径。

  • 使用条件表达式中的符号和值,可以灵活设置不同子图的运行条件。

  • 自定义符号和条件禁用符号页面提供了扩展能力,适用于更复杂的项目需求。

  • 此功能在多平台或 FPGA 开发中尤为重要,有助于提高代码的复用性和灵活性。

RUN_TIME_ENGINE 符号用于区分代码是在 LabVIEW 开发环境中运行还是在 LabVIEW 运行时引擎(Run-Time Engine)中运行,后者通常指的是运行已编译的可执行程序(如 EXE 文件)或共享库(如 DLL 文件)。

具体说明:

  • True :表示当前子图将在 LabVIEW 运行时引擎中执行,即用于部署后的可执行程序或共享库。

    • 场景:当您需要编写仅适用于运行时环境的代码时(例如优化性能、移除开发环境专用功能等)。
  • False :表示当前子图将在 LabVIEW 开发环境中运行,即直接在 LabVIEW 中运行 VI 源文件。

    • 场景:当您需要仅在开发和调试阶段使用的代码时(例如,日志记录、调试工具等)。

使用场景:

  1. 开发环境和部署环境差异化:

    根据运行环境选择不同的代码分支。例如,在开发环境中启用详细日志功能,而在运行时引擎中禁用以提升性能。

  2. 动态功能切换:

    针对开发环境或运行时的不同需求调整子图逻辑。例如,防止在部署环境中执行调试代码或开发专用工具。

  3. 资源路径处理:

    在开发环境中,文件路径可能指向本地文件系统,而运行时引擎可能需要特定的路径适配。

通过 RUN_TIME_ENGINE,可以在同一程序中灵活适配不同运行环境的需求,提高代码的兼容性和健壮性。

相关推荐
XMAIPC_Robot1 小时前
RK3568/RK3588 KVM系统虚拟化解决方案
网络·fpga开发·边缘计算
俺不是西瓜太郎´•ﻌ•`11 小时前
大实验:基于赛灵思csg324100T,pmodMAXsonar的危险距离警报
fpga开发
ThreeYear_s14 小时前
基于FPGA的超声波显示水位距离,通过蓝牙传输水位数据到手机,同时支持RAM存储水位数据,读取数据。
fpga开发
szxinmai主板定制专家15 小时前
【飞腾AI加固服务器】全国产化飞腾+昇腾310+PCIe Switch的AI大模型服务器解决方案
运维·服务器·arm开发·人工智能·fpga开发
GateWorld16 小时前
《从零掌握MIPI CSI-2: 协议精解与FPGA摄像头开发实战》-- CSI-2 协议详细解析 (三)数据格式
fpga开发·mipi csi2
hahaha601619 小时前
FPGA静态功耗
fpga开发
碎碎思19 小时前
FPGA定点和浮点数学运算-实例对比
fpga开发
GateWorld1 天前
《从零掌握MIPI CSI-2: 协议精解与FPGA摄像头开发实战》-- CSI-2 协议详细解析LLP (二)
fpga开发·mipi csi2
hahaha60162 天前
Xilinx 325T FPGA 中的 GT(GTP 或 GTX)收发器和普通 LVDS 接口的差模和共模电压
fpga开发
hahaha60162 天前
FPGA没有使用的IO悬空对漏电流有没有影响
fpga开发