博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
基于CSerialPort修改类的串口调试助手源代码(支持中文、自动保存等)
阅读量:4031 次
发布时间:2019-05-24

本文共 2796 字,大约阅读时间需要 9 分钟。

转自:  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类进行编写,并在此基础上对该类进行了改进。本工具免费试用,永不过期。并且本着奉献的精神,公开本串口工具的源代码,希望广大用户反馈意见或建议。

可执行程序地址:

源码地址:

代码托管: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

注意: (http://blog.csdn.net/itas109/article/details/18358297)

  1. ************************************************************************************ 
  2. **  author: mrlong date:2007-12-25 
  3. ** 
  4. **  改进 
  5. **    1) 增加ClosePort 
  6. **    2) 增加 writetoProt() 两个方法 
  7. **    3) 增加 SendData 与 RecvData 方法 
  8. **  
  9. ************************************************************************************ 
  10. **  author:liquanhai date:2011-11-04  
  11. **  改进  
  12. **    1)增加 ClosePort中交出控制权,防止死锁问题  
  13. **    2) 增加 ReceiveChar中防止线程死锁  
  14. ***************************************************************************************  
  15. **  author: itas109  date:2014-01-10 
  16. **  Blog:blog.csdn.net/itas109 
  17. ** 
  18. **  改进 
  19. **    1) 解决COM10以上端口无法显示的问题 
  20. **    2) 扩展可选择端口,最大值MaxSerialPortNum可以自定义 
  21. **    3) 添加QueryKey()和Hkey2ComboBox两个方法,用于自动查询当前有效的串口号。 
  22. **  
  23. */  

这是一份优秀的类文件,好多的地方值得我们学习,具体在多线程,事件,自定义消息,类的封装方面等等。

Remon提供的串口类网址为:,

 

其他贡献者:

代码下载:

代码托管:

(注意:)

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类地址:

CSDN下载:

 

更新内容:

  • 修复每次打开串口发送一次,当串口无应答时,需要关闭再打开或者接收完数据才能发送的问题。 解决办法:在m_hEventArray中调整m_hWriteEvent的优先级高于读的优先级。CommThread(LPVOID pParam)函数中读写的位置也调换。 参考:
  • 修复停止位在头文件中定义成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

你可能感兴趣的文章
如何打开ipynb文件
查看>>
[Leetcode BY python ]190. Reverse Bits
查看>>
面试---刷牛客算法题
查看>>
Android下调用收发短信邮件等(转载)
查看>>
Android中电池信息(Battery information)的取得
查看>>
SVN客户端命令详解
查看>>
Android/Linux 内存监视
查看>>
Linux系统信息查看
查看>>
用find命令查找最近修改过的文件
查看>>
Android2.1消息应用(Messaging)源码学习笔记
查看>>
在android上运行native可执行程序
查看>>
Phone双模修改涉及文件列表
查看>>
android UI小知识点
查看>>
Android之TelephonyManager类的方法详解
查看>>
android raw读取超过1M文件的方法
查看>>
ubuntu下SVN服务器安装配置
查看>>
MPMoviePlayerViewController和MPMoviePlayerController的使用
查看>>
CocoaPods实践之制作篇
查看>>
[Mac]Mac 操作系统 常见技巧
查看>>
苹果Swift编程语言入门教程【中文版】
查看>>