使用各个模块的扫描接口
- 更新时间2025-10-09
- 阅读时长5分钟
备注 本自动翻译仅为阅读便利而提供。请参阅英文版本以获取最新和最准确的信息。
即使所用机箱处于FPGA Interface编程模式或不支持Scan Interface编程模式,您仍可以对支持的各个模块使用Scan Interface。首先必须使LabVIEW检测到机箱中的模块,然后下载编译的位文件至机箱。使用高速接口的模块(例如,NI 951x)也需下载编译的位文件。编译FPGA位文件必须安装LabVIEW FPGA模块。
设置好项目、发现模块并将比特文件下载到机箱后,请在FPGA Interface编程模式下使用FPGA目标下的模块,在Scan Interface编程模式下使用Real-Time Scan Resources项下的模块。
如果已安装LabVIEW Real-Time模块和LabVIEW FPGA模块,您可以创建用户定义的I/O变量,在FPGA VI与RT VI之间传输自定义I/O数据。您还可以在FPGA VI和RT VI之间同步代码执行。
备注 如果机箱为FPGA Interface编程模式,则在使用Real-Time Scan Resources项下的模块之前,必须始终使用“打开FPGA VI引用”函数将已编译的比特文件下载到FPGA。访问模块之前,必须保证位文件运行在FPGA上。
提示 “打开FPGA VI引用”函数运行结束到Real-Time Scan Resources项下的用户定义变量与模块返回有效数据之间会有短暂延迟。如VI中有用户定义变量,运行打开FPGA VI引用函数,然后在循环中读取变量,直到变量不返回错误。
备注 如果机箱为FPGA Interface编程模式,使用Scan Interface会预留两个可用DMA FIFO并占用部分FPGA空间,导致比没有模块处于Scan Interface编程模式的比特文件编译时间更长。
备注 如果任何模块位于Real-Time Scan Resources项下,则无法向FPGA目标的Sleep通道写入数据。
创建LabVIEW项目
备注 本自动翻译仅为阅读便利而提供。请参阅英文版本以获取最新和最准确的信息。
按照下列步骤创建LabVIEW项目:
- 配置系统。
- 拖放一个扫描接口的C系列模块至实时扫描资源项下。将待写入FPGA代码的模块置于FPGA终端下。
LabVIEW项目浏览器窗口应如下所示:
- 扫描接口编程模式中的模块
- FPGA接口编程模式中的模块
下载位文件
备注 本自动翻译仅为阅读便利而提供。请参阅英文版本以获取最新和最准确的信息。
按照下列步骤编译位文件并下载文件至机箱:
- 在FPGA终端下新建VI,并将与项目文件一起保存。从RT VI中使用该FPGA VI下载位文件至机箱。
- 右键单击FPGA VI,从快捷菜单中选择创建程序生成规范。在程序生成规范下,右键单击范例FPGA VI的生成规范,选择生成,等待生成结束。
- 在RT终端下新建VI,并将与项目文件一起保存。
- 在新建的RT VI的程序框图上放置打开FPGA VI引用句柄函数。
- 右键单击打开FPGA VI引用句柄函数,从快捷菜单选择配置打开FPGA VI引用显示配置打开FPGA VI引用对话框。
- 选择第一步创建的FPGA VI,确保已勾选运行FPGA VI,单击确定关闭对话框。
- 在程序框图上,将要在RT VI中运行的代码放置在打开FPGA VI引用句柄函数右侧。在代码外围放置定时循环或While循环结构。
- 在程序框图上,添加关闭FPGA VI引用句柄函数至包围代码的结构右侧。
- 连线打开FPGA VI引用句柄函数至关闭FPGA VI引用句柄函数,途径包围代码的结构。
- 运行RT VI。
LabVIEW项目浏览器窗口应如下所示:
- 扫描接口模式下的模块
- FPGA接口模式下的模块
- 用于下载比特文件的FPGA VI
- 用于下载比特文件的RT VI
备注 示例流程中的FPGA VI不包含FPGA代码。FPGA VI的目的仅在于下载模块位文件至机箱。模块位文件指定机箱中模块的类型和槽位。如应用程序中有LabVIEW FPGA代码执行,将代码包括在FPGA VI中。编译和运行RT VI时,VI将下载模块位文件和所有FPGA代码至机箱。
相关内容
- 同步FPGA VI和NI扫描引擎(FPGA接口)
- 配置项目
使用连接的硬件或离线硬件配置LabVIEW项目。