当前位置: 首页 > news >正文

C# 基于winform 使用NI-VISA USB口远程控制电源 万用表

1.下载完整版本NI-VISA

NI-VISA Download - NI

*注意支持的操作系统,以便后期编译

安装完成之后,打开NI MAX,插上usb口,打开测试面板进行通信

2.编程示例

见本地文件夹C:\Users\Public\Documents\National Instruments\NI-VISA\Examples\.NET

首先添加引用

不同操作系统可引用的组件不同,win11引用NationalInstruments.Visa,win10 win7 引用ivi.visa

//win11using Ivi.Visa;
using NationalInstruments.Visa; // 引用NI VISA库
//查找设备
private void SelectResource_Load(object sender, EventArgs e){using (var rmSession = new ResourceManager()){var resources = rmSession.Find("(ASRL|GPIB|TCPIP|USB)?*");foreach (string s in resources){availableResourcesListBox.Items.Add(s);}}}ResourceManager resourceManager = new ResourceManager();
MessageBasedSession tmcSession = (MessageBasedSession)resourceManager.Open("USB0::0x05E6::0x2220");//资源名称tmcSession.RawIO.Write("*IDN?");//发送命令
tmcSession.FormattedIO.FlushWrite(true);
string[] res = new string[] { "", "", "", "" };
tmcSession.FormattedIO.Scanf("%,s", out res);//读取命令
//win10  win7 查找设备using Ivi.Visa.FormattedIO;//win10  win7
using Ivi.Visa;private void SelectResource_Load(object sender, EventArgs e){IEnumerable<string> devices;try{devices = GlobalResourceManager.Find();foreach (string device in devices){Console.WriteLine("\tAddress: {0}, Alias: {1}", device, GlobalResourceManager.Parse(device).AliasIfExists);availableResourcesListBox.Items.Add(device);}}catch (VisaException ex){}}//发送命令  读取命令
IMessageBasedSession session = GlobalResourceManager.Open("USB0::0x05E6::0x2220") as IMessageBasedSession;
MessageBasedFormattedIO formattedIO = new MessageBasedFormattedIO(session);
formattedIO.WriteLine("*IDN?");//发送命令
string res = formattedIO.ReadLine();//读取命令

设备具体编程命令可见用户手册,是德电源2200系列常见命令

是德万用表常见命令

欢迎一起讨论~

http://www.lryc.cn/news/461441.html

相关文章:

  • Python设计方差分析实验
  • 【Oracle DB故障分享】分享一次由于SGA设置太小导致的DP备份失败
  • Yocto构建教程:在SDK中添加Qt5并生成带有Qt5的SDK
  • 操作系统——位示图
  • 【STM32 Blue Pill编程实例】-矩阵键盘
  • 基于SSM的药品商城系统
  • 南京邮电大学电工电子A实验十一(数据选择器及逻辑电路的动态测试)
  • 算法.图论-BFS及其拓展
  • mongodb的相关关键字说明
  • 强化学习之DDPG算法
  • 【进阶OpenCV】 (16)-- 人脸识别 -- FisherFaces算法
  • 电脑主机配置
  • 图书借阅小程序开源独立版
  • flutter TextField限制中文,ios自带中文输入法变英文输入问题解决
  • ThreadLocal的应用场景
  • Python--plt.errorbar学习笔记
  • 文件信息类QFileInfo
  • 堆排序(C++实现)
  • Qt中加入UI文件
  • Redisson使用全解
  • Go4 和对 Go 的贡献
  • 区间动态规划
  • 什么情况下需要使用电压探头
  • 数据结构——八大排序(下)
  • Linux系统:Ubuntu上安装Chrome浏览器
  • Redis位图BitMap
  • YOLOv11改进策略【卷积层】| ParNet 即插即用模块 二次创新C3k2
  • 学习threejs,网格深度材质MeshDepthMaterial
  • 算法时间、空间复杂度(二)
  • 高级java每日一道面试题-2024年10月11日-数据库篇[Redis篇]-Redis都有哪些使用场景?