网站大量收购闲置独家精品文档,联系QQ:2885784924

VB2005串口通讯..doc

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

VB2005串口通讯 VB2005自带了一个串口通讯的控件SerialPort,该控件类似于VB6.0的串口Mscomm,但又有一定区别。 下面是对它们的一个比较: 1.串口的打开/关闭 VB6.0串口打开是MSComm1.PortOpen =True,VB2005则直接调用SerialPort1.Open VB6.0串口关闭是MSComm1.PortOpen= False,VB2005则直接调用SerialPort1.Close 2.参数的设置对比 VB串口设置可以单独设置,也可以通过其Setting属性设置如:MSComm1.Settings = “9600,n,8,2” ?而VB2005的串口属性只能分别设置,如: ?端口:SerialPort1.PortName ?波特率:SerialPort1.BaudRate ?数据位长度:SerialPort1.DataBit ?奇偶校验:SerialPort1.Parity ?停止位:SerialPort1.StopBits ?????com.PortName = “com1” ??????? com.BaudRate = 9600 ??????? com.DataBits = 8 ??????? com.StopBits = IO.Ports.StopBits.One ??????? com.Parity = IO.Ports.Parity.None ??????? com.Open() 3.向串行端口输出缓冲区写数据 ?VB6.0向串口写数据是MSComm1.Output方法,其传递的是字符串或数据的起始地址 ?VB2005向串口写数据是通过SerialPort1.Write方法,该方法有三种方式: ?(1).直接输出字符串,该方式只有一个参数,string,如:SerialPort1.Write SendString??? ?这里面SendString是一个字符串 ?(2).以字节方式输出,这种方式有三个参数: ?第一个参数是要输出的字节数据的起始地址 ?第二个参数是从字节数据的第几个开始 ?第三个参数是要发送的字节个数 例如:SerialPort1.Write (SendByte,1,10)就是指把字节数组的SendByte的第1到第10个字节发送到输出缓冲区 ?(3).以字符方式输出,这种方式也有三个参数: ?第一个参数是要输出的字符数据的起始地址 ?第二个参数是从字符数据的第几个开始 ?第三个参数是要发送的字符个数 例如:SerialPort1.Write (SendChar,1,10)就是指把字符数组的SendByte的第1到第10个字符发送到输出缓冲区 4.从串行端口输入缓冲区读数据 ?VB6.0从串口读数据是MSComm1.Input方法,其返回的是字符串或一个一维数据 ?VB2005从串口读数据是通过SerialPort1.Read方法,该方法有二种方式: ?(1).以字节方式读出,这种方式有三个参数: ?第一个参数buffer,是将输入写入到其中的字节数组 ?第二个参数offset,缓冲区数组中开始读出的偏移量,对于从头读的数据,应将其设为1 第三个参数count,要读取的字节数,如果读当前缓冲区所有数据,则可用其属性SerialPort1.BytesToRead作为参数传递 这里面SerialPort1.BytesToRead就是所接收的个数 例如:SerialPort1.Read (ReadByte,1,10)就是指把缓冲区的第1到第10个字节读到ReadByte字节数组中 ?(2).以字节方式读出,这种方式有三个参数: ?第一个参数buffer,是将输入写入到其中的字符数组 ?第二个参数offset,缓冲区数组中开始读出的偏移量,对于从头读的数据,应将其设为1 第三个参数count,要读取的字节数,如果读当前缓冲区所有数据,则可用其属性SerialPort1.BytesToRead作为参数传递 这里面SerialPort1.BytesToRead就是所接收的个数 例如:SerialPort1.Read (ReadChar,1,10)就是指把缓冲区的第1到第10个字节读到ReadChar字符数组中 5.相关属性 ?(1).SerialPort1.DtrEnable该值在串行通信过程中启用数据终端就绪 (DTR) 信号 在通讯时,请把该值置为1,否则读入的数据会丢失(原因尚未搞明白,可能跟硬件有关系吧) ?(2).SerialPort1.RtsEnable该值指示在串行通信中是否启用请求发送 (RTS) 信号 ?当然,还有其它属性,这里只对常用几个参数作了对比,其它参数请自行参考相关说明. VB2005向串口写数据是通过SerialPort1.Wri

文档评论(0)

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

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

1亿VIP精品文档

相关文档