Windows 10 64位下USB串口PL2303驱动和MSComm不兼容

本文探讨了基于PL2303芯片的USB转串口线在64位系统下的驱动兼容性问题,特别是在Windows10系统中使用MSComm控件时遇到的异常情况,并提供了解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先需要知道的就是基于PL2303芯片的USB转串口线在64位系统下,包括Windows 7和Windows 10,驱动有点小问题,就是不能装最新的驱动,具体可以去搜索

“PL2303 64位 驱动”

按照网上说的方法,替换了比较老版本的驱动,用串口调试助手是没问题了;在VS2010下用MSComm控件写的串口程序,事件处理函数OnCommMscomm1( )也能正常执行(缓冲区有字符事件),但是调用mscomm.get_input( )去读缓冲区的时候就会抛出异常,无法读取接收到的字符。

中间各种怀疑,各种尝试和无用功省略1w字。。。
贴两个讨论帖
http://tieba.baidu.com/p/3929273415
http://bbs.youkuaiyun.com/topics/350205174

最后终于发现是USB转串口线的问题,准确地说是PL2303驱动兼容性的问题。
总结起来,有以下解决办法
- 目前的情况就是,在64位的Windows 10系统下(Windows 7没试过),如果用最新版本的驱动,那么调用mscomm.get_input( )去读缓冲区不抛异常,但是不能发送(包括用串口调试助手);如果用老版本的驱动,那么就不能用MSComm控件,用CSerialPort吧
- 用32位的系统或者VC6.0,动作不小
- 用其他方案的USB串口线,比如我改成国产的CH340的就没这问题


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值