C Sharp串口通信程序.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C Sharp串口通信程序

创建C#串口通信程序需要注意什么呢?创建C#串口通信程序的步骤是什么?那么本文就向你详细介绍创建C#串口通信程序集体的内容。 在.NET平台下创建C#串口通信程序,.NET 2.0提供了串口通信的功能,其命名空间是System.IO.Ports。这个新的框架不但可以访问计算机上的串口,还可以和串口设备进行通信。我们将使用标准的RS 232 C 在PC间通信。它工作在全双工模式下,而且我们不打算使用任何的握手或流控制器,而是使用无modem连接。创建C#串口通信程序的具体实现是如何的呢?让我们开始吧: 创建C#串口通信程序之命名空间 System.IO.Ports命名空间中最重用的是SerialPort 类。 创建C#串口通信程序之创建SerialPort 对象 通过创建SerialPort 对象,我们可以在程序中控制串口通信的全过程。 我们将要用到的SerialPort 类的方法: ReadLine():从输入缓冲区读一新行的值,如果没有,会返回NULL WriteLine(string):写入输出缓冲 Open():打开一个新的串口连接 Close():关闭 //create?a?Serial?Port?object ? SerialPort?sp?=?new?SerialPort?();? 默认情况下,DataBits 值是8,StopBits 是1,通信端口是COM1。这些都可以在下面的属性中重新设置: BaudRate:串口的波特率 StopBits:每个字节的停止位数量 ReadTimeout:当读操作没有完成时的停止时间。单位,毫秒 还有不少其它公共属性,自己查阅MSDN。 创建C#串口通信程序之串口的硬件知识 在数据传输的时候,每个字节的数据通过单个的电缆线传输。包包括开始位,数据,结束为。一旦 开始位传出,后面就会传数据,可能是5,6,7或8位,就看你的设定了。发送和接收必须设定同样 的波特率和数据位数。 创建C#串口通信程序之无猫模式 没有Modem模式的电缆只是简单地交叉传送和接收线。同样DTR DSR, 和 RTS CTS也需要交叉。 这里,我们三条线。互连2和3(一段的2pin连接3pin),连接两端的5pin。 创建C#串口通信程序示例程序 如果想使用默认属性,按“Save Status”按钮,如果想改变属性按“Property”。设定好之后,可以通信了。 主窗口的代码 #region?Using?directives ? ? using?System; ? using?System.Collections.Generic; ? using?System.ComponentModel; ? using?System.Data; ? using?System.Drawing; ? using?System.Windows.Forms; ? using?System.IO.Ports; ? ? #endregion ? ? namespace?Serialexpample ? { ? partial?class?Form1?:?Form ? { ? //create?instance?of?property?page ? //property?page?is?used?to?set?values?for?stop?bits?and ? //baud?rate ? ? PropertyPage?pp?=?new?PropertyPage(); ? ? //create?an?Serial?Port?object ? SerialPort?sp?=?new?SerialPort(); ? ? public?Form1() ? { ? InitializeComponent(); ? } ? ? private?void?propertyButton_Click(object?sender,?EventArgs?e) ? { ? //show?property?dialog ? pp.ShowDialog(); ? ? propertyButton.Hide(); ? } ? ? private?void?sendButton_Click(object?sender,?EventArgs?e) ? { ? try? { ? //write?line?to?serial?port ? sp.WriteLine(textBox.Text); ? //clear?the?text?box ? textBox.Text?=?; ? } ? catch?(System.Exception?ex) ? { ? baudRatelLabel.Text?=?ex.Message; ? } ? ? } ? ? private

文档评论(0)

zhuwenmeijiale + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:7065136142000003

1亿VIP精品文档

相关文档