日期:2014-05-19  浏览次数:20964 次

c# 串口 问题
我   用了两个办法!但是都没有成功!

1.用   serialPort   打开   发送   都不出异常   但是   我在串口监视   程序里   看不到   我的   发送   数据

2.   用   三方类   ,主要   是操作   api   但是   打开com口时   报错


高手   帮个忙!   谢谢!

------解决方案--------------------
.NET 2.0 新加了 System.IO.Port.SerialPort 类,应该不难,给你个例子:

http://www.codeproject.com/cs/system/rs232ThreadSafe.asp


另外你需要注意,收到串口数据的那个线程通常不是主线程,如果你需要用主线程中的控件去显示数据,就一顶要用控件的Invoke或BeginInvoke来做.
------解决方案--------------------
注意串口的波特率之类的外还要注意协议,
如果你的设备可能是用于群集的话, 肯定会有地址。地址不对就出错。
比如,公路上的车检器这类的。


-----------------------------------------
DotNetX.CN 专注于.Net技术--技术文章、IDE插件、开发工具、电子书籍!欢迎下载和推荐!
http://www.dotnetx.cn http://bbs.dotnetx.cn
------解决方案--------------------
SerialPort serialport = new SerialPort();
serialport.PortName = port;
serialport.Parity = parity;
serialport.BaudRate = baudrate;
serialport.DataBits = databits;
serialport.StopBits = stopbits;
serialport.DataReceived += new SerialDataReceivedEventHandler(serialport_DataReceived);
serialport.ReadBufferSize = 50; ;
serialport.ReceivedBytesThreshold = 1;

serialport.Open();