zoukankan      html  css  js  c++  java
  • NI FPGA板卡程序设计概述

    NI公司提到了三种不同应用开发环境ADE:http://www.ni.com/white-paper/5956/zhs/

    • LabVIEW是NI公司主推的ADE,采用G语言(图像化语言),支持力度最大
    • LabWindows/CVI是类似于单片机界面的C语言开发环境(个人没用过,通过描述感觉像是类似于IAR, Keil MDK这类软件)。
    • 基于Measurement Studio的配合visual studio的ADE
    • (还要一种)FPGA Interface C API,可以通过这个generator软件导入LabVIEW编译好的FPGA bitfile,生成C语言头文件,然后用第三方C/C++等编程软件调用该头文件既可以实现与NI FPGA板的通信

    Measurement Studio简介

    台式机安装了visual studio 2013,然后在NI官网下载measurement studio并安装

    http://sine.ni.com/np/app/main/p/docid/nav-99/lang/zh-CN/

    安装成功后,在visual studio 2013的菜单栏中自动嵌入measurement studio

    阅读官网入门教程

    http://www.ni.com/pdf/manuals/373225d.pdf

    打开例程,发现分别提供了两种语言VB和C#


    FPGA Interface C API

    NI FPGA编程采用C语言方法

    http://www.ni.com/product-documentation/9036/en/

    使用方法:

    在LabVIEW中设计并编译FPGA VI,生成bitfile;
    用该软件导入该bitfile,生成对应的头文件;
    将该头文件包含在C/C++开发工程中;
    在C/C++开发工程中设计应用程序deploy NI的FPGA卡
    该方法的官方说明文档汇总:http://zone.ni.com/reference/en-XX/help/372928G-01/
    The FPGA Interface C API enables C/C++ applications to interact directly with compiled LabVIEW FPGA VIs on RIO devices without using LabVIEW. C/C++ applications can download a VI to a RIO target, perform DMA data transfers, wait on and acknowledge interrupts, and read from and write to named controls and indicators using C function calls.

    A C/C++ application created with the C API can run on the real-time processor of a CompactRIO or NI Single-Board RIO device, and interact with VIs running on the FPGA of the RIO system. Alternatively, a C/C++ application can run on the real-time processor of a PXI system or the processor of a Windows or Linux PC, and interact with VIs running on the FPGA of a PXI or PCI RIO device.

  • 相关阅读:
    85 容器(十二)——队列与栈:LinkedList的光芒万丈
    84 关于数据结构中的添加与取出的方法:push pop poll offer add get...
    83 lambda表达式
    82 subList()方法于asList()的細節以及UnsupportedOperationException
    81 Javaassist——class文件的操作
    80 脚本引擎——js脚本引擎
    03 NoClassDefFoundError
    79 动态编译与动态运行
    78 反射——概念、类的各种信息的获取(类名,属性,方法...)
    002 为什么接口中可以同时使用public与default 修饰抽象方法?
  • 原文地址:https://www.cnblogs.com/yuesheng/p/7181316.html
Copyright © 2011-2022 走看看