基于CSerialPort修改类的串口调试助手源代码(支持中文、自动保存等)
转自: http://blog.csdn.net/itas109/article/details/51337538 【最新修正版2016-05-07】
http://blog.csdn.net/itas109/article/details/18359295、http://blog.csdn.net/itas109/article/details/18358297
如需转载请标明出处:http://blog.csdn.net/itas109
QQ技术交流群:129518033
本串口工具集成目前多数串口工具的优秀功能于一身,采用CSerialPort类进行编写,并在此基础上对该类进行了改进。本工具免费试用,永不过期。并且本着奉献的精神,公开本串口工具的源代码,希望广大用户反馈意见或建议。
可执行程序地址:http://pan.baidu.com/s/18F4Rk
源码地址:http://download.csdn.net/detail/itas109/6855347
代码托管:code.csdn.net/itas109/serialport_itas109
博客地址:blog.csdn.net/itas109
Email:itas109@qq.com
本软件主要在XP系统做测试使用。
本工具的主要功能有:
1.接收从串口进来的数据并在窗口显示.
2.所接收到的数据数据显示方式可以选择为字符方式或者HEX方式
3.支持显示中文
4.串口波特率可以选择为300bps-115200bps.
5.可以即时刷新存在的串口号.如果您增加了usb转串口等设备,点击刷新串口按钮后,新的串口号也会在列表中出现.
6.支持最多20个串口列表,包括COM1-COM256中的任意20个活跃串口
7.可以选择“5、6、7、8”四种数据长度.
8.可以选择为“1、2”两种停止位.
9.数据可以选择为“无、奇校验、偶校验、1、0”四种方式.
10.串口设置和字符串操作等设置在程序关闭时自动保存,打开时自动载入.您可以自行设置是否自动保存.
11.可以在字符串输入框输入您想发送的字符串,并发送.
12.可以在字符串输入框输入您想发送的HEX数据串,数据的值从00到FF,没有任何限制.
13.可以定时重复发送数据,并可以设置发送时间间隔.
14.可以在发送字符串时选择发送新行,即自动加上回车换行.
15.可以即时显示发送的字节数和接收到的字节数,按清除窗口将会清零.
16、可以设置自动清空功能,在达到50行数据时,自动清空。未设置时,达到100行,自动清空.
17、在手动发送旁边的按钮可以设置按ENTER发送数据.
另外要说明的是,由于本人编程能力有效,未免可能有些差错,在此先声明一下,您可以免费使用和自由传播本软件,但是我不对本软件所造成的任何损失负责!如果你使用了本软件,即表明您愿意接收这一条款。如果你不能接受,请立即将其删除!
如需转载请标明出处:http://blog.csdn.net/itas109
QQ技术交流群:129518033
注意:CSerialPort串口类的修正版2014-01-10 (http://blog.csdn.net/itas109/article/details/18358297)
- ************************************************************************************
- ** author: mrlong date:2007-12-25
- **
- ** 改进
- ** 1) 增加ClosePort
- ** 2) 增加 writetoProt() 两个方法
- ** 3) 增加 SendData 与 RecvData 方法
- **
- ************************************************************************************
- ** author:liquanhai date:2011-11-04
- ** 改进
- ** 1)增加 ClosePort中交出控制权,防止死锁问题
- ** 2) 增加 ReceiveChar中防止线程死锁
- ***************************************************************************************
- ** author: itas109 date:2014-01-10
- ** Blog:blog.csdn.net/itas109
- **
- ** 改进
- ** 1) 解决COM10以上端口无法显示的问题
- ** 2) 扩展可选择端口,最大值MaxSerialPortNum可以自定义
- ** 3) 添加QueryKey()和Hkey2ComboBox两个方法,用于自动查询当前有效的串口号。
- **
- */
这是一份优秀的类文件,好多的地方值得我们学习,具体在多线程,事件,自定义消息,类的封装方面等等。
Remon提供的串口类网址为: http://codeguru.earthweb.com/network/serialport.shtml,
其他贡献者:http://blog.csdn.net/liquanhai/article/details/6941574
代码下载:http://download.csdn.net/detail/itas109/6855323
代码托管:https://code.csdn.net/itas109/cserialport
(注意:)
1、源码运行时可能会出现问题:The variable 'comstat' is being used without being initialized (解决方案:http://blog.csdn.net/stephen1315/article/details/7457294)
2、程序运行时 跟硬件交互时,貌似只能够“一发一收”!(虚拟串口下没有什么问题!)(原作者解决方案:http://blog.csdn.net/itas109/article/details/51337538;太感谢了!)
最新更新:
2016-05-07补充说明:
CSerialPort类地址:https://github.com/itas109/CSerialPort
CSDN下载:http://download.csdn.net/detail/itas109/9512828
更新内容:
- 修复每次打开串口发送一次,当串口无应答时,需要关闭再打开或者接收完数据才能发送的问题。 解决办法:在m_hEventArray中调整m_hWriteEvent的优先级高于读的优先级。CommThread(LPVOID pParam)函数中读写的位置也调换。 参考:http://zhidao.baidu.com/link?url=RSrbPcfTZRULFFd2ziHZPBwnoXv1iCSu_Nmycb_yEw1mklT8gkoNZAkWpl3UDhk8L35DtRPo5VV5kEGpOx-Gea
- 修复停止位在头文件中定义成1导致SetCommState报错的问题,应为1对应的停止位是1.5。UINT stopsbits = ONESTOPBIT (写代码的时候,这里需要注意一下跟以前版本的区别!)
- switch(stopbits)和switch(parity)增加默认情况,增强程序健壮性
本人结合上述blog跟http://download.csdn.net/detail/minuby/3035400#comment、https://github.com/liquanhai/CSerialPort;修改为VS2013版本;
源码地址:http://download.csdn.net/detail/scliu12345/9529214
基于CSerialPort修改类的串口调试助手源代码(支持中文、自动保存等)相关推荐
- 基于Qt平台的集串口调试助手、示波器、图像显示功能于一体的上位机。
基于Qt平台的集串口调试助手.示波器.图像显示功能于一体的上位机. 可用的上位机及通信协议可在这里下载,通信协议可以很方便的移植到stm32上 链接:https://pan.baidu.com/s/1 ...
- 串口调试助手源代码 qt编写 带协议解析 帧判断 通信数据保存等功能
串口调试助手源代码 qt编写 带协议解析 帧判断 通信数据保存等功能 使用说明介绍 1.功能介绍: 采用Qt编写的串口调试助手工具,功能齐全,除了具备十六进制收发及文件保存等基本功能外,还具有以下功能 ...
- Java基于百度API的图片文字识别(支持中文,英文和中英文混合)
点击上方"好好学java",选择"置顶公众号" 优秀学习资源.干货第一时间送达! 精彩内容 java实战练习项目教程 2018微服务资源springboot.s ...
- 修改HTK代码,让其支持中文
利用HTK工具包进行语音识别建模时,遇到任务语法中存在中文时候,无法生成对应的底层网络,这样就需要对HTK源码的部分内容进行修改,以下是我对HTK源码HParse及HVite部分内容改动记录,希望对有 ...
- 基于qt4的串口调试助手开发
程序全部代码:https://download.csdn.net/download/haojun1996/10501590 1. 课程设计内容 本课程设计的内容是设计一个基于QT的串口调试软件,同时支 ...
- 利用VSPD、串口调试助手、Keil做串口调试
下面详细介绍下如何用虚拟串口调试串口发送接收程序. 需要用到三个软件:KEIL.VSPD XP5(virtual serial ports driver xp5.1虚拟串口软件).串口调试助手(个人感 ...
- 支持中文手写和多画布的Handraw
什么是 Handraw ? Handraw 是支持中文手写和多画布的 Excalidraw 白板工具. 官网上项目名称还是 Excalidraw-CN,所以 Handraw 应该是基于 Excalid ...
- 8266串口调试助手_开源软件分享-基于WPF的串口调试工具
最近同事在调试硬件的串口通讯功能,由于PLC暂时还没到,所以准备用USB转串口线连接在终端上,通过电脑USB口模拟串口收发功能.一开始同事下载了一款串口调试工具,发现没有自定义功能,比如通讯串口收到终 ...
- 基于QT的串口调试助手制作
目录 1.创建文件 2.串口界面制作 3.代码 4.结果 5.改进 6.百度链接 1.创建文件 创建带有ui界面的qt程序,可以点击文件-新建文件或项目就会出现上面的界面,选这Application( ...
最新文章
- mysql 返回mysql,mysql函数返回表
- Win32串口操作的技巧
- util-C# 复杂条件查询(sql 复杂条件查询)查询解决方案
- 在nodejs中操作mongodb
- mysql分页查询减轻压力_mysql分页查询优化
- SpringMVC实战(注解)
- (转)Redis上踩过的一些坑-美团
- 浏览器与node事件循环
- 企业的IT 建设的三个过程
- c++ 以当前时间为文件名打印日志
- java dbutil_DBUtil java工具类
- 机器学习之支持向量回归(SVR)
- AVPlayer AVPlayerItem cannot service a seek request with a completion handler until its status is AV
- 算法与数据结构之队列
- 访问本地环境时出现The requested URL / was not found on this server.
- 花椒前端基于 Docker 的 SSR 持续开发集成环境实践
- 最详细G1垃圾回收器日志解读
- 最新江苏安全员B考试单选练习题库
- 计算机毕业设计JAVA旅游管理系统mybatis+源码+调试部署+系统+数据库+lw
- R ggplot绘制双纵坐标轴