当前位置:编程学习 > C#/ASP.NET >>

[求助]关于vb.net下的serialport出错的问题

小弟在vb.net下使用serialport控件遇到了问题,请教各位大大。
    我编写的程序是采集工控机4个串口的数据,其中三个串口是真实的com接口,第4个是一个气象站的串口,用的是气象站自带的USB转接器,在计算机上识别成是串口,环境是winxp+vs.net 2010
    问题如下:程序上我用了4个serialport控件,采集频率1分钟1个数(最大长度不超过64位的字符串)。serialport.open后,发送指令,采集数据都正常,但运行2-3天以后,气象站的串口会提示出错:“System.UnauthorizedAccessException: 对端口“com4”的访问被拒绝,在 System.IO.Ports.InternalResources.WinIOError(Int32 errorCode, String str)
   在 System.IO.Ports.SerialStream..ctor(String portName, Int32 baudRate, Parity parity, Int32 dataBits, StopBits stopBits, Int32 readTimeout, Int32 writeTimeout, Handshake handshake, Boolean dtrEnable, Boolean rtsEnable, Boolean discardNull, Byte parityReplace)”。此时就再也不能访问这个串口了,只能重启计算机,然后过了2-3天又不行了。
   我查询论坛以前的帖子,又尝试了几种办法(例如采集数据后serialport.close,dispose然后再open或为serialPort_DataReceived设置bool型全局变量),更换新的气象站设备,还是无法解决这个问题,更奇怪的是同样的程序,在另一个自动站的工控机上,运行一切正常,从来没出过错。
在此请教各位大大,这是什么问题呢?如何解决呢?万分感谢,100分送上。
     --------------------编程问答-------------------- USB-COM转接器确实不太稳定,1、更新设备驱动,2、换个真实的COM口试下! --------------------编程问答--------------------
引用 1 楼 long_0662 的回复:
USB-COM转接器确实不太稳定,1、更新设备驱动,2、换个真实的COM口试下!

谢谢您的建议,但设备驱动已经通过驱动精灵更新到最新版了,气象站这个设备是USB---->串口----->zigbee的方式,整体都是原厂封装好的,不能摆脱转换器。 --------------------编程问答-------------------- 自己顶一下!!!!! --------------------编程问答-------------------- 加张串口卡试下,USB的东西系不太稳定的
如果其他站没问题,试下调换工控机测试下
首先搵出问题所在吧(硬件还是软件) --------------------编程问答-------------------- 朋友我也在做串口的东西

usb modem 来电显示功能。交流下呗。 --------------------编程问答-------------------- 换一下气象站自带的USB转接器和连接线试试,线不要太长。
补充:.NET技术 ,  VB.NET
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,