Tony.SerialPorts.RS232串口参数配置模块:扫描事件例程
namespace Test_temp
{
1. public partial class Form1 : Form
2. {
3. public Form1()
4. {
5. InitializeComponent();
6. button1.Enabled = false;
7. //*引用Tony.SerialPorts.RS232.dll(将Tony.SerialPorts.RS232.dll、HDInfo.txt复制到运行目录下)
8. //获取RS232入口
9. Tony.SerialPorts.RS232Enroll.GetRS232Enroll();
10. //Tony.SerialPorts.RS232Enroll.RunRS232Enroll如果不是null,说明正确 获取串口。
11. if (Tony.SerialPorts.RS232Enroll.RunRS232Enroll != null)
12. {
13. button1.Enabled = true;
14. }
15. }
16. private Tony.SerialPorts.RS232.IRS232 IRS232Comm1 = null;
17. private void button1_Click(object sender, EventArgs e)
18. {
19. //*进行串口参数配置
20.
21. //从配置文件中获取以前配置的串口参数。
22. Tony.SerialPorts.RS232.RS232Setting xSetting = Tony.SerialPorts.RS232.RS232Setting.GetSetting(Application.StartupPath + @".\RS232Set\RS232Set1.IO");
23. 如无配置文件……
24. //Tony.SerialPorts.RS232.RS232Setting xSetting = new Tony.SerialPorts.RS232.RS232Setting();
25.
26. //调用,进行串口参数配置:(x1_Scan:串口自动扫描事件的引用。
27. Tony.SerialPorts.RS232Enroll.RunRS232Enroll.RS232Worker.RunRS232Setting(xSetting, Application.StartupPath + @".\RS232Set\RS232Set1.IO", "testScan", false , x1_Scan);
28. }
29. private void x1_Scan(Tony.SerialPorts.RS232.RS232Setting gSetting, string[] gScanRS232Port, out string gRS232Port, string gUserName)
30. {
31. //*此事件由Tony.SerialPorts.RS232Enroll.RunRS232Enroll.RS232Worker.RunRS232Setting(……)在点击“扫描”按钮后自动执行。
32. //*此事件用途:在可用的串口号集合gScanRS232Port中,分别向串口发送指定指令,如接到符合条件的数据,即认为是可用串口。
33. //*以K2000为例:用Transact方法当发送命令":SYSTem:BEEPer:STATe?",如仪表回送的命令中包含"1"(即“*1*”,*为任意字符)。
34. //*此例请将串口参数配置窗体中,接收中断字符、发送附加字符设置成“CR”。
35. //*Transact方法发送命令后主动回收数据,并不依赖于数据接收事件。
36. //*参考http://blog.csdn.net/tonysungood000/article/details/78763553
37. //*参考http://blog.csdn.net/tonysungood000/article/details/78780109
38. //*参考http://blog.csdn.net/tonysungood000/article/details/78788391
39.
40. //gSetting:用户在配置窗体中,配置好的参数设置。
41. //gScanRS232Port:可选的串口号(计算机存在的串口号集合)
42. //gRS232Port:扫描后,由用户设定符合条件的串口号。
43.
44.
45. gRS232Port = null;
46. //取得一个串口实例
47. this.IRS232Comm1 = Tony.SerialPorts.RS232Enroll.RunRS232Enroll.RS232Worker.GetRS232Working(gUserName);
48.
49. //遍历可用的串口号
50. for (int i = 0; i < gScanRS232Port.Length; i++)
51. {
52. try
53. {
54. //设置临时串口号
55. gSetting.port = gScanRS232Port[i];
56. //设置串口参数
57. this.IRS232Comm1.Settings = gSetting;
58. //打开串口
59. this.IRS232Comm1.Open();
60.
61. //向打开的串口发送指令":SYSTem:BEEPer:STATe?",如接收数据中包含 "1",即认为符合条件,返回接收到的数据,否则输出为null;
62. object xValue = this.IRS232Comm1.Transact(":SYSTem:BEEPer:STATe?", -1, 3, "1", true);
63. if (xValue != null)
64. {
65. //成功扫描到符合条件串口,设定符合条件的串口号,返回。
66. gRS232Port = gScanRS232Port[i];
67. break;
68. }
69. }
70. finally
71. {
72. this.IRS232Comm1.Close();
73. }
74. }
75. this.IRS232Comm1.Dispose();
76. this.IRS232Comm1 = null;
77. }
78.
79. }
}
Tony.SerialPorts.RS232串口参数配置模块:扫描事件例程相关推荐
- Tony.SerialPorts.RS232串口模块(二)
Tony.SerialPorts.RS232.IRS232参考 - ⑴.属性: - 1. Settings [串口参数配置][读及设置] - RS232Setting类型. - 打开串口前配置,打开串 ...
- 如何将扫码枪连接至PROFINET系统(内附详细操作方法及参数配置)
鼎实PROFINET网关与SICK扫描枪通讯例程 目录 第一章 系统目的及连接............................................................. ...
- stm32串口_【单片机】STM32串口基本配置
1 时钟使能(用到哪个串口和GPIO要把相应的时钟开启): 2 串口复位:(一般在系统刚开始配置外设的时候,都会先执行复位该外设的操作.) 3 GPIO口配置: 4 串口参数配置: 5 根据需要开启 ...
- 串口服务器支持多少模块,串口服务器模块的参数配置方法
串口服务器模块是串口服务器内部的核心硬件组件,也可以称之为串口服务器内嵌模块.串口服务器的软件功能全部集成在串口服务器核心模块内部,所以其参数配置方法也就是串口服务器的参数配置方法.在某些情况下,用户 ...
- 2.Metasploit数据库配置及扫描模块介绍
01.Metasploit数据库配置及扫描模块介绍 信息收集 信息收集是渗透测试中首先要做的重要事项之一,目的是尽可能多的查找关于目标的信息,我们掌握的信息越多,渗透成功的机会越大.在信息 ...
- 嵌入式串口转CAN模块详细参数分析
引脚定义和尺寸 测试评估板 将模块插到评估板上,注意模块引脚标注要与评估板上插座引脚标注相对应,然后进行参数设置.特别的,也可以在模块集成到电路板上后,直接通过模块的CAN口来配置参数. 通过CAN通 ...
- 串口扫描枪+linux,C#读取RS232串口扫描枪
[实例简介] C#读取RS232串口扫描枪,可以实现多线程串口扫描枪输入 [实例截图] [核心代码] 串口线程接收更新控件 └── 串口线程接收更新控件 ├── 串口线程接收更新控件 │ ├── ...
- 深入支付宝支付扫描支付-跳转支付宝二维码页面支付与自定义生成二维码支付-1参数配置篇
这里较详细总结一下支付宝扫码支付,从三个方面总结 ①参数配置 ②跳转固定的支付宝页面进行扫码支付 ③自定义二维码扫码支付 参数配置-开放平台相关配置(沙箱环境) 刚开始支付宝的配置参数还是有点让人懵逼 ...
- 程控电源CANoe上位机面板(CAN\ETH测试、RS232串口通信、编写设计思路)
程控电源CANoe上位机面板 编写此面板的目的 编写思路 一.通讯方式 1.RS232串口连接 2.CANoe与RS232串口相关的函数 3.帧格式命令字 4.校验码 二.面板设计 1.所需文件说明 ...
- c# 蓝牙虚拟串口_蓝牙模块——基础知识介绍
1. 数据透传 蓝牙模块可以通过串口(SPI.IIC)和MCU控制设备进行数据传输. 蓝牙模块可以做为主机和从机.主机就是能够搜索别的蓝牙模块并主动建立连接,从机则不能主动建立连接,只能等别人连接自己 ...
最新文章
- 主流Kubernetes发行版梳理,看完就会选了
- 深度学习未来十大趋势
- Monthly Expense POJ - 3273(二分最大值最小化)
- 【机器学习】自己手写实现线性回归,梯度下降 原理
- java base64编码的三种方式
- 英特尔处理器曝出重大安全漏洞,迫使 Linux 和 Windows 更新设计
- [转载] python怎么将十进制转换为二进制_python十进制和二进制的转换方法(含浮点数)
- 重载 重载递增递和减运算符
- 面向对象的三个基本特征_杂谈:JavaScript面向对象
- vsphere报错: 连接到虚拟机控制台失败并显示错误:VMRC 控制台的连接已断开。正在尝试重新连接
- 从今天开始阅读Java源码吧!
- windows通过vnc远程桌面
- Win10蓝牙开关不显示,任务栏不显示蓝牙图标解决方案
- 第三章:Servlet基础
- 招商银行笔试题之爱吃喵粮的小招喵
- A-Level CS 计算机科学 考试知识点——考试介绍第1章
- 五个强盗分金币的问题分析(博弈论)
- 在windows下启动容器时,报 the input device is not a TTY. If you are using mintty, try prefixing the command
- C#毕业设计——基于C#+asp.net+sqlserver的校园新闻发布系统设计与实现(毕业论文+程序源码)——新闻发布系统
- 产品经理的工作职责是什么,需要具备什么能力?
热门文章
- 阴谋还是悲剧?- 基于机器学习假设检验视角,看泰坦尼克号事件
- 计算机屏幕刷新频率,屏幕刷新率多少合适,教您电脑屏幕刷新率多少合适
- 拥塞控制,CDN,端到端
- 动手学深度学习笔记3.1+3.2+3.3
- mysql password_expired
- linux下安装asm数据库,Linux下ASM实例的安装
- 天池-小布助手对话短文本语义匹配 复赛rank3、决赛rank4代码及解决方案
- ThinkPHP3.1.3 { Fast Simple OOP PHP Framework } — [ WE CAN DO IT JUST THINK ] 报错解决办法。...
- 计算机配置时能关机吗,怎么设置时间让电脑自动关机?
- SAPnbsp;BORnbsp;--nbsp;…