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,可以在同一程序中灵活适配不同运行环境的需求,提高代码的兼容性和健壮性。

相关推荐
ZPC82106 天前
docker 镜像备份
人工智能·算法·fpga开发·机器人
ZPC82106 天前
docker 使用GUI ROS2
人工智能·算法·fpga开发·机器人
tiantianuser6 天前
RDMA设计53:构建RoCE v2 高速数据传输系统板级测试平台2
fpga开发·rdma·高速传输·cmac·roce v2
博览鸿蒙6 天前
FPGA 和 IC,哪个前景更好?怎么选?
fpga开发
FPGA_小田老师7 天前
xilinx原语:ISERDESE2原语详解(串并转换器)
fpga开发·iserdese2·原语·串并转换
tiantianuser7 天前
RDMA设计50: 如何验证网络嗅探功能?
网络·fpga开发·rdma·高速传输·cmac·roce v2
Lzy金壳bing7 天前
基于Vivado平台对Xilinx-7K325t FPGA芯片进行程序在线更新升级
fpga开发·vivado·xilinx
unicrom_深圳市由你创科技7 天前
医疗设备专用图像处理板卡定制
图像处理·人工智能·fpga开发
tiantianuser7 天前
RDMA设计52:构建RoCE v2 高速数据传输系统板级测试平台
fpga开发·rdma·高速传输·cmac·roce v2
luoganttcc7 天前
Taalas 将人工智能模型蚀刻到晶体管上,以提升推理能力
人工智能·fpga开发