没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
试读
2页
编写模块化代码几乎总是一个好主意,无论是为Windows、实时还是FPGA设备设计应用程序。子VI使代码更易于调试和故障排除,更易于记录和跟踪更改,并且通常更清晰,更易于理解,更可重用。LabVIEW FPGA子VI示例如图5.11所示。该子VI计算满足触发条件后采集的样本数量。 图5.11.子VI用于计算满足触发条件后采集的样本数量。 避免放入子VI中的项目 创建子VI时,应考虑将某些项目保留在子VI之外,特别是I/O节点和循环定时器或等待功能。 将I/O节点放置在子VI之外,使其更加模块化和可移植,并使顶层图更具可读性。这也减少了无关的I/O节点实例,否则这些实例可能会多次包含在子VI中,从而导致不必要的门使用。在LabVIEW FPGA中访问共享资源时,编译器会添加处理多个调用方所需的额外仲裁逻辑。 另一个最佳实践是避免在模块化子VI中使用循环定时器或等待功能。如果子VI有无延迟,它会尽可能快地执行,并避免减慢调用方的速度。此外,如果需要将子VI移动到单周期定时循环(SCTL)中以进行优化,则必须删除任何延迟函数,因为它们不受支持。
资源推荐
资源详情
资源评论
LabVIEW CompactRIO 开发指南 27
创建模块化、可重复使用的子 VI
编写模块化代码几乎总是一个好主意,无论是为 Windows、实时还是 FPGA 设备设计应用
程序。子 VI 使代码更易于调试和故障排除,更易于记录和跟踪更改,并且通常更清晰,更易于
理解,更可重用。LabVIEW FPGA 子 VI 示例如图 5.11 所示。该子 VI 计算满足触发条件后采集
的样本数量。
图 5.11.子 VI 用于计算满足触发条件后采集的样本数量。
避免放入子 VI 中的项目
创建子 VI 时,应考虑将某些项目保留在子 VI 之外,特别是 I/O 节点和循环定时器或等待
功能。
将 I/O 节点放置在子 VI 之外,使其更加模块化和可移植,并使顶层图更具可读性。这也减
少了无关的 I/O 节点实例,否则这些实例可能会多次包含在子 VI 中,从而导致不必要的门使
用。在 LabVIEW FPGA 中访问共享资源时,编译器会添加处理多个调用方所需的额外仲裁逻
辑。
另一个最佳实践是避免在模块化子 VI 中使用循环定时器或等待功能。如果子 VI 有无延
迟,它会尽可能快地执行,并避免减慢调用方的速度。此外,如果需要将子 VI 移动到单周期定
时循环(SCTL)中以进行优化,则必须删除任何延迟函数,因为它们不受支持。
资源评论
LabVIEW开发
- 粉丝: 3096
- 资源: 131
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功