一.C#与VC编写串口通信程序的常见方法和区别
在Visual Studio 6.0中编写串口通讯程序,一般使用VC 串口控件如MSComm、VC串口类或基于dl形式的串口控件。在VC环境中使用得比较多的是Mscomm串口控件和CSerialPort串口类,MScomm是微软提供的一个串口控件,但Visual Studio.Net没有将其加入控件库,Visual Studio.Net同样可以用很多方法来编写串口通讯程序,在C#中同样可以用原来的MSComm控件,编程非常简单,但与VC中使用一样,都需要注册;也可以自己调用API函数实现串口通信;微软在.NET中专门推出了一个串口控件,基于.NET的P/Invoke调用方法实现,这是最常用的一种方法,这个串口控件名叫SerialPort,与VC下的串口类CSerialPort名字差不多。
微软的NET Framework 类库包含了SerialPort串口类,可以不再采用第三方控件的方法来设计串口通讯程序,方便地实现了所需要串口通讯的多种功能,为了使MSComm编程方法快速转换到以SerialPort类为核心的串口通讯的设计方法,本文还讨论了Visual Studio 6.0的MSComm控件和SerialPort 类设计方法的异同点。
二.SerialPort常用属性、方法和事件
1.命名空间
System.IO.Ports命名空间包含了控制串口重要的SerialPort类,该类提供了同步 I/O 和事件驱动