LabVIEWCompactRIO 开发指南25 实施LabVIEW FPGA代码的方法

简介: LabVIEWCompactRIO 开发指南25 实施LabVIEW FPGA代码的方法

LabVIEWCompactRIO 开发指南25


实施LabVIEW FPGA代码的方法


开始开发时,应在LabVIEW项目的FPGA目标下创建VI,以便使用LabVIEW FPGA选板进行编程,该选板是LabVIEW选板的子集,包括一些LabVIEW FPGA特定函数。


应该在仿真模式下开发VI,方法是右键单击FPGA目标并选择执行ExecuteVI

on»Development Computer with Simulated I/O。通过采用这种方法,可以快速迭代设计并访问所有标准LabVIEW调试功能。如果需要访问实际的I/O,请将执行模式更改为在Execute VI on»FPGA Target。


读取和写入I/O


本节介绍了通过LabVIEW FPGAVI访问I/O的基本知识。有关使用LabVIEW FPGA的模拟和数字I/O模块定时和同步的更多详细信息,请参阅第6章:I/O的定时和同步。


要开发LabVIEWFPGA应用程序,需要将FPGA目标添加到LabVIEW项目中,以及任何必要的I/O、时钟、寄存器项、内存项或FIFO。LabVIEW帮助文档在LabVIEW项目中使用FPGA目标提供了如何设置的详细说明。


一旦将LabVIEW项目配置为面向FPGA设备,即可将I/O通道从LabVIEW项目拖放到LabVIEW FPGAVI框图上,以获取I/O节点。

820a48d595ba2f15cc4ddc2fde3e049a.png



图5.3.将I/O节点拖放到FPGA框图中。


FPGAI/O节点在调用时返回单点数据。对于大多数NIR系列设备和C系列I/O模块,可以使用LabVIEW结构和逻辑来指定采样率和触发。使用Δ-Σ转换器并具有自己板载时钟的高速模拟输入模块是一个例外。对于这些模块,可以使用属性节点控制采样率。第6章:I/O的定时和同步中的表6.2提供了使用三角积分调制的NIC系列I/O模块的列表。


对于大多数I/O节点,可以使用带有快速循环定时器VI的环路来设置采样率。样本延迟控件以刻度为单位设置速率。Ticks是FPGA时钟上的脉冲,对于大多数CompactRIO目标,其默认为40MHz。例如,在40MHz时钟上实现20,000个时钟周期的采样延迟,则采样速率为2kHz。还可以通过双击循环计时器,调整配置面板来指定以微秒或毫秒为单位的延迟。当然,无论指定什么速率,模块采样最多只能达到模块文档中指定的最大速率。


可以选择使用Sequence结构,如图5.4所示。序列结构可用于保证每次编译LabVIEW FPGA VI时,定时器和I/O节点都以相同的顺序执行。


335743d8c4d2c4c20cbb6a56d4f9c784.png


图5.4.标准模拟输入模块的采集方案


若要实现触发的应用程序,请使用对触发条件进行门控的案例结构。此触发条件可以是来自主机处理器的输入,也可以直接从FPGA上的逻辑派生。借助LabVIEW FPGA,可以实现基本或复杂的触发方案,例如重新触发、暂停触发或任何类型的自定义触发。图5.5显示了一个应用程序示例,该应用程序采用启动触发器并监视正在收集的样本数,直到达到用户指定的数量。此示例中使用的代码可以在涡轮机测试仪项目中找到,该项目可以从ni.com/compactriodevguide的Introductionand Basic Architectures部分下载。


b2167533d0d121529d99ddbeaddeca23.png



图5.5.简单的单触发


需要说明的是,上述的例程和文档,都是可以下载的,双击即可打开,其中压缩文件是可以采用粘贴复制的方式,拷贝到硬盘上。这不是图片,各位小伙伴看到后尝试一下,这个问题就不用加微信咨询了。有关LabVIEW编程、LabVIEW开发等相关项目,可联系们。附件中的资料这里无法上传,可去公司网站搜索下载。

相关文章
|
4月前
|
数据采集 传感器 监控
如何在LabVIEW中使用FPGA模块
如何在LabVIEW中使用FPGA模块
105 1
|
4月前
|
存储 算法 数据处理
LabVIEW FPGA开发NI sbRIO-9607高精度数字滤波器
LabVIEW FPGA开发NI sbRIO-9607高精度数字滤波器
44 5
|
6月前
|
前端开发 编译器 测试技术
LabVIEW FPGA利用响应式数字电子板快速开发空间应用程序
LabVIEW FPGA利用响应式数字电子板快速开发空间应用程序
51 1
|
6月前
|
传感器 数据采集 人工智能
LabVIEW FPGA开发实时滑动摩擦系统
LabVIEW FPGA开发实时滑动摩擦系统
42 0
|
6月前
|
算法 数据可视化 API
LabVIEWCompactRIO 开发指南33 测试和调试LabVIEW FPGA代码
LabVIEWCompactRIO 开发指南33 测试和调试LabVIEW FPGA代码
54 0
|
6月前
|
存储 算法 Serverless
LabVIEWCompactRIO 开发指南31 在LabVIEW FPGA中使用DMA FIFO
LabVIEWCompactRIO 开发指南31 在LabVIEW FPGA中使用DMA FIFO
69 0
|
6月前
|
机器学习/深度学习 算法 异构计算
m基于FPGA的多通道FIR滤波器verilog实现,包含testbench测试文件
本文介绍了使用VIVADO 2019.2仿真的多通道FIR滤波器设计。展示了系统RTL结构图,并简述了FIR滤波器的基本理论,包括单通道和多通道的概念、常见结构及设计方法,如窗函数法、频率采样法、优化算法和机器学习方法。此外,还提供了Verilog核心程序代码,用于实现4通道滤波器模块,包含时钟、复位信号及输入输出接口的定义。
158 7
|
6月前
|
算法 异构计算
m基于FPGA的电子钟verilog实现,可设置闹钟,包含testbench测试文件
该文介绍了基于FPGA的电子钟设计,利用Vivado2019.2平台进行开发并展示测试结果。电子钟设计采用Verilog硬件描述语言,核心包括振荡器、分频器和计数器。时间显示为2个十进制格式,闹钟功能通过存储器和比较器实现,当当前时间等于设定时间时触发。文中给出了Verilog核心程序示例,展示了时钟信号、设置信号及输出的交互。
189 2
|
6月前
|
编解码 算法 异构计算
基于FPGA的NC图像质量评估verilog实现,包含testbench和MATLAB辅助验证程序
在Vivado 2019.2和Matlab 2022a中测试的图像质量评估算法展示了效果。该算法基于NC指标,衡量图像与原始图像的相似度,关注分辨率、色彩深度和失真。提供的Verilog代码段用于读取并比较两个BMP文件,计算NC值。
|
6月前
|
算法 异构计算
m基于FPGA的MPPT最大功率跟踪算法verilog实现,包含testbench
该内容包括三部分:1) 展示了Vivado 2019.2和Matlab中关于某种算法的仿真结果图像,可能与太阳能光伏系统的最大功率点跟踪(MPPT)相关。2) 简述了MPPT中的爬山法原理,通过调整光伏电池工作点以找到最大功率输出。3) 提供了一个Verilog程序模块`MPPT_test_tops`,用于测试MPPT算法,其中包含`UI_test`和`MPPT_module_U`两个子模块,处理光伏电流和电压信号。
68 1

热门文章

最新文章