Tony.SerialPorts.RS232使用流程:

入口端为:Tony.SerialPorts.RS232Enroll。

⑴.引用Tony.SerialPorts.RS232.dll(将Tony.SerialPorts.RS232.dll、HDInfo.txt复制到运行目录下)。

⑵.调用入口程序:Tony.SerialPorts.RS232Enroll.GetRS232Enroll();【静态方法】。

⑶.检查Tony.SerialPorts.RS232Enroll.RunRS232Enroll是否为null,不为空可继续使用。【静态,数据类型为:Tony.SerialPorts.RS232Enroll】。

⑷.设置串口参数配置模块 RS232Setting:【按下面流程进行后,可设置串口参数,并保存为文件。】

①.如不存在串口参数配置模块 RS232Setting的配置文件:

Tony.SerialPorts.RS232.RS232Setting xSettings =new Tony.SerialPorts.RS232.RS232Setting();

xSettings = Tony.SerialPorts.RS232Enroll.RunRS232Enroll.RS232Worker.RunRS232Setting( gSettings,  gFileSaveName,  gUserName,  gRead,  ScanEvent);(内含窗体,以进行设置)

【参数说明】:

Tony.SerialPorts.RS232.RS232Setting gSettings:实例化的RS232.RS232Setting(本例中的xSettings)。

string gFileSaveName:设置好后的配置文件保存路径(含名称)。

string gUserName:实例化名称:随便起名,与其他串口区分开即可。

bool gRead:是否只读(只读:除可修改串口号,或者进行扫描串口,其他手动更改都禁止;非只读:获得全部功能。);

Tony.SerialPorts.RS232.RS232ScanHandler ScanEvent:传入串口扫描事件,扫描串口时使用,做到程序自动扫描符合条件的串口(当设备连好后,自动定位)。【具体方法另行提供】

②.如存在串口参数配置模块 RS232Setting的配置文件:

Tony.SerialPorts.RS232.RS232Setting xSettings =Tony.SerialPorts.RS232.RS232Setting.GetSetting(gPath);

【参数说明】:

string gPath:配置文件路径(含名称)。

xSettings = Tony.SerialPorts.RS232Enroll.RunRS232Enroll.RS232Worker.RunRS232Setting( gSettings,  gFileSaveName,  gUserName,  gRead,  ScanEvent);(内含窗体,以进行设置)

【参数说明】:

Tony.SerialPorts.RS232.RS232Setting gSettings:实例化的RS232.RS232Setting(本例中的xSettings)。

string gFileSaveName:设置好后的配置文件保存路径(含名称)。

string gUserName:实例化名称:随便起名,与其他串口区分开即可。

bool gRead:是否只读(只读:除可修改串口号,或者进行扫描串口,其他手动更改都禁止;非只读:获得全部功能。);

Tony.SerialPorts.RS232.RS232ScanHandler ScanEvent:传入串口扫描事件,扫描串口时使用,做到程序自动扫描符合条件的串口(当设备连好后,自动定位)。【具体方法另行提供】

⑸.生成串口:【推荐使用方法②】

方法①:Tony.SerialPorts.RS232.IRS232 IRS232Comm1=Tony.SerialPorts.RS232Enroll.RunRS232Enroll.RS232Worker.GetRS232Working(gUserName);

【参数说明】

string gUserName:实例化名称:随便起名,与其他串口区分开即可。

方法②:Tony.SerialPorts.RS232.IRS232 IRS232Comm2=Tony.SerialPorts.RS232Enroll.RunRS232Enroll.RS232Worker.GetRS232Working(gUserName,gSettingFilePath);

【参数说明】

string gUserName:实例化名称:随便起名,与其他串口区分开即可。

string gSettingFilePath:串口参数配置模块 RS232Setting的配置文件路径(含名称)。

⑹.打开/关闭串口:IRS232Comm1.Open()方法、IRS232Comm1.Close()方法
⑺.串口状态:读IRS232Comm1.Online属性
⑻.发送及接收数据:【参见: IRS232方法、IRS232属性、IRS232事件】

发送:IRS232Comm1.Transact(……)方法、IRS232Comm1.OutPut属性。

接收:IRS232Comm1.InPut属性、IRS232Comm1.InPutReadOnly属性、IRS232Comm1.Transact(……)方法、OnRs232Receive事件。

⑼.串口事件:OnRs232Receive、RS232Open、RS232Close【参见: IRS232事件】
⑽.有用资源:

①静态函数:Tony.SerialPorts.RS232.General.GetByteArray(char[] gValue)//char数组转byte数组

②静态函数:Tony.SerialPorts.RS232.General.IsPortAvailable(string s)//测试指定串口的可用性

③函数:IRS232Comm1.GetQueueStatus()//查询串口状态

其他:

【参见: 串口参数配置模块Tony.SerialPorts.RS232.RS232Setting】

【参见: Tony.SerialPorts.RS232.IRS232参考】

【注】

Tony.SerialPorts.RS232运行中,发送及接收数据并不会中断客户主线程运行。

IRS232Comm1.Open()方法、IRS232Comm1.Close()方法可能会稍微迟滞,主要依赖于客户现场情况。

IRS232Comm1.Transact(……)方法运行时间依赖于客户设置的方法参数及客户现场情况。

如客户现场比较复杂,通讯迟滞较大,推荐客户使用多线程编程。(Tony.SerialPorts.RS232可以运行于多线程环境中。)

Tony.SerialPorts.RS232串口模块(三)相关推荐

  1. Tony.SerialPorts.RS232串口模块(二)

    Tony.SerialPorts.RS232.IRS232参考 - ⑴.属性: - 1. Settings [串口参数配置][读及设置] - RS232Setting类型. - 打开串口前配置,打开串 ...

  2. MJKDZ PS2手柄控制OskarBot小车(三):STM32接收无线串口模块的数据并处理

    MJKDZ PS2手柄控制OskarBot小车(三):无线串口模块接收数据并处理 [目录] 1.硬件与软件设计思路 - 1.1 硬件资源 - 1.2 STM32串口接收数据的方法 2.源代码详解 - ...

  3. 程控电源CANoe上位机面板(CAN\ETH测试、RS232串口通信、编写设计思路)

    程控电源CANoe上位机面板 编写此面板的目的 编写思路 一.通讯方式 1.RS232串口连接 2.CANoe与RS232串口相关的函数 3.帧格式命令字 4.校验码 二.面板设计 1.所需文件说明 ...

  4. 单片机实验八 RS232串口通信实验(接收与发送)

    实验八 RS232串口通信实验(接收与发送) 一.实验目的 1.熟悉实验软件和硬件,进行正确的接线: 2.通过实验了解串口的基本原理及使用,理解并掌握对串口进行初始化: 3.使用串口调试助手做为上位机 ...

  5. 读取万用表USB串口模块

    简 介: 由于计算机链接的打印机无法继续工作,现在需要另外重新安装操作系统才能够继续完成设计和制作. 关键词: 串口转接,自制电路板 #mermaid-svg-pK6HRjCv9ZC0FD1Z {fo ...

  6. MTK6572 android4.4上串口模块的调试

    年前调试了一下用mtk的uart1口来外接外部模块,拓展为2个com口.写此文的目前主要是整理一下思路. 拓展ic的型号是WK2114: WK2114 原理框图 由上图可以看到首先得把主接口测试ok. ...

  7. SPI、I2C、UART(即串口)三种串行总线详解

    以下内容均来源于网络资源的学习与整理,如有侵权请告知删除. 参考博客 几个串口协议学习整理 UART IIC SPI_mainn的博客-CSDN博客 SPI.I2C.UART三种串行总线的原理.区别及 ...

  8. RS232串口通信(UART的接收部分)

    RS232串口通信(UART的接收部分) 置顶 新人博主,创作不易,波形图手绘,请给个点赞关注吧,非常感谢! 串口简介 ​ 串口作为常用的三大低速总线(UART.SPI.IIC)之一,在设计众多通信接 ...

  9. rs232串口驱动_LED驱动电路设计

    这里设计了两种方案,方案一目标需要低功耗的led,方案二目标需要高功耗的LED.这里重点说下第一种方案,方案电路图如图所示.LED直接通过一个上拉排阻将8个LED连接在单片机上,这样的优点是电路结构简 ...

  10. 小型的ESP8266-01s WiFi串口模块是否可以下载MicroPython?

    ▌01 ESP8266模块下载MicroPython 手边有这类小型的ESP8266WiFi串口模块: ESP-01S 无线透传工业级 ESP8266串口转WiFi模块 .现在有一个问题:它是否可以使 ...

最新文章

  1. 厉害了,网易伏羲三篇论文上榜 AI 顶会 ACL
  2. Android 计步功能-简单实现
  3. 博为峰JavaEE技术文章 ——MyBatis 简介(2)
  4. LeetCode 二叉树、N叉树的最大深度与最小深度(递归解)
  5. ECCV2018——点云处理相关文章
  6. 使用@property
  7. MySQL索引背后的数据结构及算法原理(employees实例)
  8. 「小程序JAVA实战」微信小程序工程结构了解(五)
  9. Node.js:常用工具、路由
  10. 使用ThinkPHP框架高速开发站点(多图)
  11. perl表达 匿名数组和匿名哈希
  12. python函数的规则_Python函数的作用域规则和闭包
  13. oracle添加两个约束,Oracle添加表约束的2种方法
  14. 蓝桥杯官网 试题 PREV-113 历届真题 估计人数【第十届】【决赛】【研究生组】【C++】【Java】【Python】三种解法
  15. 你用过会议管理系统吗?你知道它能解决什么问题吗
  16. Filtered off site request to
  17. 计算机管理员注销,肿么注销计算机管理员
  18. 写一个块linux设备驱动
  19. USB audio调试
  20. 绿色版浏览器DIY,大家别乱用网上的非官方绿色版,自己动手吧,很简单!(2015-11-26更新)

热门文章

  1. JavaScript全栈开发-工具篇
  2. delete hive_hive执行更新和删除操作
  3. 简单理解工作量单位:人月、人日、人时
  4. Android的5种快捷开关的实现
  5. Zookeeper Kafka Debezium Spark 实时数据同步方案在实际项目中的使用
  6. 春天不健脾养胃 也要等什么时候
  7. Javascript特效:五彩小球
  8. 48 款数据可视化分析工具大集合!
  9. 隔壁孩子10篇博客node入门而且写了一个前后端分离项目,你怎么还在睡觉!!!(五)
  10. windows系统桌面壁纸软件推荐名称