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模块
121 1
|
4月前
|
存储 算法 数据处理
LabVIEW FPGA开发NI sbRIO-9607高精度数字滤波器
LabVIEW FPGA开发NI sbRIO-9607高精度数字滤波器
47 5
|
6月前
|
前端开发 编译器 测试技术
LabVIEW FPGA利用响应式数字电子板快速开发空间应用程序
LabVIEW FPGA利用响应式数字电子板快速开发空间应用程序
54 1
|
6月前
|
传感器 数据采集 人工智能
LabVIEW FPGA开发实时滑动摩擦系统
LabVIEW FPGA开发实时滑动摩擦系统
45 0
|
6月前
|
算法 数据可视化 API
LabVIEWCompactRIO 开发指南33 测试和调试LabVIEW FPGA代码
LabVIEWCompactRIO 开发指南33 测试和调试LabVIEW FPGA代码
56 0
|
6月前
|
存储 算法 Serverless
LabVIEWCompactRIO 开发指南31 在LabVIEW FPGA中使用DMA FIFO
LabVIEWCompactRIO 开发指南31 在LabVIEW FPGA中使用DMA FIFO
74 0
|
8天前
|
算法 数据安全/隐私保护 异构计算
基于FPGA的1024QAM基带通信系统,包含testbench,高斯信道模块,误码率统计模块,可以设置不同SNR
本文介绍了基于FPGA的1024QAM调制解调系统的仿真与实现。通过Vivado 2019.2进行仿真,分别在SNR=40dB和35dB下验证了算法效果,并将数据导入Matlab生成星座图。1024QAM调制将10比特映射到复数平面上的1024个星座点之一,适用于高数据传输速率的应用。系统包含数据接口、串并转换、星座映射、调制器、解调器等模块。Verilog核心程序实现了调制、加噪声信道和解调过程,并统计误码率。
27 1
|
29天前
|
算法 数据安全/隐私保护 异构计算
基于FPGA的64QAM基带通信系统,包含testbench,高斯信道模块,误码率统计模块,可以设置不同SNR
本文介绍了基于FPGA的64QAM调制解调通信系统的设计与实现,包括信号生成、调制、解调和误码率测试。系统在Vivado 2019.2中进行了仿真,通过设置不同SNR值(15、20、25)验证了系统的性能,并展示了相应的星座图。核心程序使用Verilog语言编写,加入了信道噪声模块和误码率统计功能,提升了仿真效率。
44 4
|
29天前
|
监控 算法 数据安全/隐私保护
基于三帧差算法的运动目标检测系统FPGA实现,包含testbench和MATLAB辅助验证程序
本项目展示了基于FPGA与MATLAB实现的三帧差算法运动目标检测。使用Vivado 2019.2和MATLAB 2022a开发环境,通过对比连续三帧图像的像素值变化,有效识别运动区域。项目包括完整无水印的运行效果预览、详细中文注释的代码及操作步骤视频,适合学习和研究。
|
1月前
|
存储 算法 数据处理
基于FPGA的8PSK调制解调系统,包含testbench,高斯信道模块,误码率统计模块,可以设置不同SNR
本系统在原有的8PSK调制解调基础上,新增了高斯信道与误码率统计模块,验证了不同SNR条件下的8PSK性能。VIVADO2019.2仿真结果显示,在SNR分别为30dB、15dB和10dB时,系统表现出不同的误码率和星座图分布。8PSK作为一种高效的相位调制技术,广泛应用于无线通信中。FPGA凭借其高度灵活性和并行处理能力,成为实现此类复杂算法的理想平台。系统RTL结构展示了各模块间的连接与协同工作。
49 16

热门文章

最新文章