C++调用GPIB驱动头文件ni488.h内容详细分拆解

ni488.h是一个C语言库文件,用于使用NI-488.2通信协议进行控制和通信,主要包括以下内容:

  1. 宏定义:定义了许多常量、变量和函数的宏,如NI488_VERSION、NI488_REN_ADDRESS、NI488_UNL_ADDRESS等。

  2. 数据类型定义:定义了一些相关数据类型,如NiHandle、NiStatus、NiInt32等,这些数据类型通常用于函数的参数、返回值和内部实现。

  3. 函数声明:定义了许多函数声明,用于控制/通信NI-488.2设备,如Ni488Open、Ni488Close、Ni488Read等。

  4. 错误码定义:定义了一些错误码,用于标识函数执行过程中可能出现的错误,如NI488_ERR_IO、NI488_ERR_TIMEOUT等。

总之,ni488.h是NI-488.2通信协议的一个C语言API库文件,提供了许多常量、变量、数据类型和函数等,方便程序员进行开发和编写控制/通信NI-488.2设备的程序。

ni488.h是NI GPIB(General Purpose Interface Bus)驱动程序的头文件,提供对NI GPIB设备进行控制的函数、常量和数据类型的定义。

该头文件定义了以下常量:

  • GPIB_PRIMARY_ADDR:指定GPIB主机的地址
  • IBONLINE:指定一个设备处于在线状态
  • IBLOCAL:指定一个设备处于本地状态
  • IBREMOTE:指定一个设备处于远程状态
  • IBREADLINE:指定一个设备读取一行数据(以换行符为分隔符)
  • IBWRITE:指定一个设备写入数据
  • IBDEV:指定一个设备的地址和控制命令
  • IBTALK:指定一个设备处于Talker状态
  • IBLISTEN:指定一个设备处于Listener状态
  • IBEOI:指定在发送最后一个字节后自动插入EOI标志
  • IBCIC:指定取消操作时清除数据输入缓冲区
  • IBCOMPAT_CHECK:指定是否检查已连接设备的兼容性
  • GPIB_REN_DEASSERT:指定释放Remote Enable Line(REN)。

该头文件定义了以下数据类型:

  • Address:表示设备地址,类型为short int
  • Addr4882_t:表示主地址和辅助地址(如果使用的话),类型为unsigned long
  • Addr4882_t:表示主地址和辅助地址(如果使用的话),类型为unsigned long
  • ViSession:表示已初始化的会话,类型为void *。

该头文件定义了以下函数:

  • ibask:查询设备属性
  • ibclr:清除设备
  • ibconfig:配置设备
  • ibdev:初始化设备
  • ibdma:执行DMA传输
  • ibeos:配置设备的EOI行为
  • ibfind:查找设备
  • ibgts:配置设备为GTS模式
  • iblines:查询设备状态
  • ibln:打开设备连接
  • ibloc:配置设备的本地/远程状态
  • ibonl:打开或关闭设备连接
  • ibpad:配置设备地址
  • ibpct:打开设备的Pass Control模式
  • ibsic:手动清除设备输入缓冲区
  • ibsre:配置设备的SRQ行为
  • ibstop:停止设备的传输
  • ibtmo:配置设备的超时时间
  • ibtrg:在设备上触发一个软件触发
  • ibrda:读取数据
  • ibrdf:读取二进制数据
  • ibrd:读取字符串数据
  • ibrpp:读取设备返回的二进制数据
  • ibrsc:读取设备返回的字符串数据
  • ibsta:查询设备状态
  • ibwrt:写入数据
  • ibwtf:写入二进制数据
  • ibwr:写入字符串数据
  • ibwrtf:写入数据,并指定最后一个字节是否为EOI
  • ibcnt:查询已传输字节数
  • ibrsp:等待设备返回响应

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/191429.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++基础 -33- 单目运算符重载

单目运算符重载格式 a和a通过形参确定 data1 operator() {this->a;return *this; }data1 operator(int) {data1 temp*this;this->a;return temp; }举例使用单目运算符重载 #include "iostream"using namespace std;class data1 {public :int a;data1(int…

【技术分享】RK356X Android11 以太网共享4G网络

本文基于IDO-SBC3566-V1B Android11系统实现开机后以太网自动共享4G网络功能。 IDO-SBC3566基于瑞芯微RK3566研发的一款高性能低功耗的智能主板,采用四核A55,主频高达1.8GHz,专为个人移动互联网设备和AIOT设备而设计,内置了多种功能强大的嵌…

【开源】基于Vue+SpringBoot的服装店库存管理系统

项目编号: S 052 ,文末获取源码。 \color{red}{项目编号:S052,文末获取源码。} 项目编号:S052,文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 数据中心模块2.2 角色管理模块2.3 服…

JAVA全栈开发 集合详解(day14+day15汇总)

一、数组 数组是一个容器,可以存入相同类型的多个数据元素。 数组局限性: ​ 长度固定:(添加–扩容, 删除-缩容) ​ 类型是一致的 对象数组 : int[] arr new int[5]; … Student[] arr …

Effective C++(四): 资源管理

文章目录 一、智能指针驱动的RAII二、shared_ptr 和 weak_ptr三、如何复制 RAII 对象四、在资源管理类中应该提供对原始资源的访问函数 为了防止忘记调用 delete 造成的内存泄露,我们应该尽可能让对象管理资源,并且采用 RAII 机制(Resource Acquisition …

Sql Server数据库跨机器完整恢复(源文件恢复)

问题描述 在操作系统异常的情况下,SQL Server 和相关的业务系统遭受了不可用的情况。由于操作系统问题,导致旧服务器无法正常运行。为了恢复业务功能并确保数据完整性,采取了以下步骤来在新机器上进行 SQL Server 的重新安装和数据恢复。 面…

【超全】React学习笔记 中:进阶语法与原理机制

React学习笔记 React系列笔记学习 上篇笔记地址:【超全】React学习笔记 上:基础使用与脚手架 下篇笔记地址:【超全】React学习笔记 下:路由与Redux状态管理 React进阶组件概念与使用 1. React 组件进阶导读 在掌握了 React 的基…

Verilog 入门(七)(任务、函数)

文章目录 任务任务定义任务调用 函数函数说明部分函数调用 值变转储文件 任务 一个任务就像一个过程,它可以从描述的不同位置执行共同的代码段。共同的代码段用任务定义编写成任务,这样它就能够从设计描述的不同位置通过任务调用被调用。任务可以包含时…

actual combat 24 —— 创建数据库表定义码值字段时,tinyint类型和varchar(2)该如何选择?

tinyint:最大数值为127,占用1字节空间varchar(2):最大数值为99,占用2字节空间,但当存储的数字为个位数时varchar类型是可变的,只占用1个字节空间。 从这个角度来看的话,用tinyint类型来存储码值…

前端开发神器之 VsCode AI 辅助插件 DevChat

目录 前言DevChat介绍DevChat 独特优势注册账号安装插件设置密钥访问指令AI 解疑 最后 #AI编程助手哪家好?DevChat“真”好用 # 前言 我们都有过写代码时反复看了半天也不知道bug在哪,大大浪费了时间。一些基础的代码可能看一会儿能够解决,但…

k8s(三): 基本概念-ReplicaSet与Deployment

PeplicaSet ReplicaSet 的目的是维护一组在任何时候都处于运行状态的 Pod 副本的稳定集合,通常用来保证给定数量的、完全相同的 Pod 的可用性。 最佳实践 Deployment 是一个可以拥有 ReplicaSet 并使用声明式方式在服务器端完成对 Pod 滚动更新的对象。 尽管 Rep…

oracle sql相关语法

SQL*PLUS 在SQL*PLUS执行,会在执行后显示查询的执行计划和统计信息 SET AUTOTRACE ON;SELECT * FROM your_table WHERE column_name value;SET AUTOTRACE OFF;PLSQL PLSQL查询sql界面,鼠标右键,点击执行计划,会出现sql的执行计…

matlab 汽车单车模型固定点跟踪算法

1、内容简介 略 29-可以交流、咨询、答疑 2、内容说明 单车模型固定点跟踪算法 单车模型,固定点跟踪算法,动画演示, 汽车单车模型、转弯动画、固定点跟踪算法、pid控制 3、仿真分析 略 A[0,5;0,0];B[0;1]; Q10*eye(2);R1; Klqr(A…

Java高级技术-反射

认识反射、获取类 获取类的方法 获取类的构造器 获取类的构造器、并对其进行操作 获取构造器的作用:依然是初始化对象返回 获取成员变量 获取成员变量的方法 获取成员变量的作用:赋值、取值 获取类的成员方法 方法 作用:依然是执行 作用、…

webGL开发学科演示项目方案

开发学科演示项目需要考虑到教育目标、互动性和用户体验。以下是一个可能的技术方案,可用于实现这样的项目,希望对大家有所帮助。北京木奇移动技术有限公司,专业的软件外包开发公司,欢迎交流合作。 1.WebGL 框架: 选择…

golang 函数选项模式

一 什么是函数选项模式 函数选项模式允许你使用接受零个或多个函数作为参数的可变构造函数来构建复杂结构。我们将这些函数称为选项,由此得名函数选项模式。 例子: 有业务实体Animal结构体,构造函数NewAnimal()&…

【超全】React学习笔记 上:基础使用与脚手架

React学习笔记 React系列笔记学习 中篇笔记地址:【超全】React学习笔记 中:进阶语法与原理机制 下篇笔记地址:【超全】React学习笔记 下:路由与Redux状态管理 React 简介 React 是一个由 Facebook 开发并维护的用于构建用户界面的…

C++的一些基础

1、reinterpret_cast reinterpret_cast是四种强制转换中功能最为强大的(最暴力,最底层,最不安全)。它的本质是编译器的指令。 它的作用:它可以把一个指针转换成一个整数,也可以把一个整数转换成一个指针。…

网络运维与网络安全 学习笔记2023.12.2

网络运维与网络安全 学习笔记 第三十三天 今日目标 Linux系统综述、部署本地Linux、配置Linux网络 SSH远程控制、远程文档管理、选购ECS云主机 Linux系统综述 Linux是一种操作系统 Linux之父,Linus Torwalds 1991年10月,发布0.02版(第一…

Redis集群详解

1.1 什么是Redis集群 Redis集群是一种通过将多个Redis节点连接在一起以实现高可用性、数据分片和负载均衡的技术。它允许Redis在不同节点上同时提供服务,提高整体性能和可靠性。根据搭建的方式和集群的特性,Redis集群主要有三种模式:主从复制…