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

相关推荐
小眼睛FPGA4 小时前
why FPGA喜欢FMC子卡?
fpga开发
tiantianuser5 小时前
NVMe简介1
fpga开发·nvme·可编程逻辑·verilogy
FPGA_ADDA6 小时前
基于RFSOC ZU28DR+DSP 6U VPX处理板
fpga开发·dsp·rfsoc28dr·zu28dr·射频采集
搬砖的小码农_Sky9 小时前
FPGA: Xilinx Kintex 7实现PCIe接口
fpga开发·硬件架构·硬件工程
9527华安9 小时前
紫光同创FPGA实现AD9280数据采集转UDP网络传输,分享PDS工程源码和技术支持和QT上位机
网络·fpga开发·udp·紫光同创·qt上位机·ad9280
9527华安1 天前
紫光同创FPGA实现AD7606数据采集转UDP网络传输,提供PDS工程源码和技术支持和QT上位机
网络·qt·fpga开发·udp·紫光同创·ad7606
szxinmai主板定制专家1 天前
基于TI AM6442+FPGA解决方案,支持6网口,4路CAN,8个串口
arm开发·人工智能·fpga开发
7yewh1 天前
FPGA前瞻篇-计数器设计与实现实例
arm开发·驱动开发·嵌入式硬件·fpga开发·硬件架构·硬件工程·精益工程
爱学习的张哥1 天前
UDP--DDR--SFP,FPGA实现之指令监测模块实现
fpga开发·udp·指令
碎碎思1 天前
FPGA+ESP32 = GameBoy 是你的童年吗?
fpga开发