1.FPGA 接口Python API
Getting Started — FPGA Interface Python API 19.0.0 documentation
2.FPGA接口C API
FPGA 接口 C API 是用于 NI 可重配置 I/O (RIO) 硬件(例如 NI CompactRIO、NI Single-Board RIO、NI 以太网 RIO、NI FlexRIO、NI R 系列多功能 RIO 和NI MXI-Express RIO 适用于嵌入式控制和采集应用。
借助 FPGA Interface C API,开发人员可以使用 LabVIEW 图形工具对 NI 硬件中的现场可编程门阵列 (FPGA) 进行编程,并选择 LabVIEW 或 C/C++ 工具对系统中的处理器进行编程。这使得具有 C 语言专业知识的工程师和科学家能够在其设计中利用 FPGA,而无需学习硬件设计,同时还可以选择重用现有的嵌入式 C 代码。
以下步骤概述了开发过程。详细说明请参考
FPGA接口C API帮助
- 开发并编译您的 LabVIEW FPGA VI。这会生成一个位文件。
- 启动 FPGA 接口 C API 生成器。根据位文件,生成 C 头文件。
- 将头文件包含在您的 C/C++ 应用程序中。
- 构建应用程序并将其部署到嵌入式目标。
3. 支持DAQmx编程的CompactRIO机箱
可以使用 C/C++ DAQmx API 对 cRIO-904x 和 cRIO-905x 系列设备进行编程。 DAQmx的实现与其他文本环境相同。
在基于文本的编程环境中使用NI-DAQmx – NI
4.Visual Studio Code工具链
NI Linux Real-Time Documentation and Tutorials — nilrt-docs 1.0 documentation
必备软件工具链
- 对于NI Linux Real-Time应用程序编程,您至少需要以下一种工具:
- 如果您计划使用LabVIEW构建顶层实时应用程序,请下载LabVIEW Real-Time模块。
- 如果您计划使用自有C/C++开发工具来构建共享库或顶层应用程序,只需下载GNU/Linux交叉编译器即可:
- GNU C和C++编译器(Linux主机)2017-2018,ARMv7 Linux
- GNU C和C++编译器(Windows主机)2017-2018,ARMv7 Linux
- GNU C和C++编译器(Linux主机)2017-2018,x64 Linux
- GNU C和C++编译器(Windows主机)2017-2018,x64 Linux
- 如果您计划使用C/C++构建顶层实时应用程序,请下载FPGA Interface C API(13.0版或更高版本)。FPGA Interface C API会根据您的LabVIEW FPGA比特文件生成一个C头文件,比特文件会公开FPGA寄存器、DMA FIFO和中断的命名参考变量。FPGA接口C API还包含一个函数API,用于读取和写入这些变量并操纵FPGA代码的运行。
- FPGA开发需要以下所有工具:
- LabVIEW(完整版或更高版本)
- LabVIEW FPGA模块
- NI-RIO驱动程序(2013版或更高版本)
5.NI Linux Real-Time Eclipse版本的C / C ++
NI Linux Real-Time Eclipse版本的C / C ++开发工具入门指南 – NI
6.在linux RT中运行shell和用户自定义程序
- 参考上述链接确认开发IDE工具
- 编写和编译程序(NI Linux Real-Time Eclipse版本的C / C ++开发工具入门指南 – NI)
- 将文件复制到目标,参考:如何在NI Linux Real-Time设备中使用FTP进行文件传输 – NI
使用WebDAV将文件传输到实时(RT)目标 – NI
- 设置文件权限(SSH 进入目标,并通过键入chmod 777为测试文件设置适当的权限(777 参数更改文件的读取、写入和执行权限)。例如:chmod 777 /home/lvuser/test要通过 SSH 连接到目标,可以使用任何终端程序(例如 PuTTY)。使用常规目标 IP 地址和端口号22。)
- 从LabVIEW访问并运行文件(编写一个简单的 LabVIEW 应用程序,将调用的测试文件和参数连接到 Shell 调用字符串中,并使用SystemExec.vi调用编译后的文件。 C代码。请参阅下面的示例。)
在 LabVIEW VI 中的 LinuxRT 设备上运行自定义 C 或 C++ 代码有两种常用方法。用户可以将代码编译为可执行文件并使用 System Exec VI 运行它,也可以编译共享库并使用调用库函数节点访问函数。
7.其他
没有方法可以使用C#、VB. NET或Measurement Studio直接编程cRIO。