网站导航免费论文 原创论文 论文搜索 原创论文 网学软件 学术大家 资料中心 会员中心 问题解答 原创论文 论文素材 设计下载 最新论文 下载排行 论文上传 在线投稿 联系我们
返回网学首页
网学联系
最新论文 推荐专题 热门论文 素材专题
当前位置: 网学 > 编程文档 > VB.net > 正文
VB6.0使用MSComm控件(串行通讯组件)
来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/15
下载{$ArticleTitle}原创论文样式

一.引用
串行通讯组件(MSComm 控件)包含在专业版及企业版中.
MSComm 组件并不是主动出现在工具箱的,当我们需要用到它时,做如下步骤:
1.在工具箱上右键单击,在弹出的对话框中选择 "部件"选项
2.在"控件"标签中,找到"Microsoft Comm Control 6.0"选项,并勾选它,然后按"确定"
3.这时,工具箱中会出现一个"电话机"的图标.已经OK啦.
(我用的是简体中文版的.)
二.属性
常用属性 : 说明
CommPort: 设置通讯端口号 (1-16).例:MSComm1.CommPort=1 ''指定使用COM1作通讯传输.
Settings:以字符串的形式设置并返回波特率、奇偶校验、数据位、停止位.
格式为"BBBB,P,D,S".默认值为"9600,N,8,1"
BBBB为联机速度,
P为同位检查方式,None无(默认值),Even偶数,Mark记号,Odd奇数,Space空白.
D为数据位数,4-8.
S为停止位,1,1.5,3.
"9600,N,8,1"的意思是"所使用的通讯端口是以每秒9600 Bit的速度作传输,不作同位的检查,每个元是8个Bit,而停止位是1个Bit"
注:四项的顺序是不可前后对调的,其中的字母N可以是大写,也可以是小写.
HandShaking:设置通讯双方的交握协议,即流量控制.
0-comNone:(默认值)没有交握协议.
1-comXOnXOff:(Xon/Xoff)交握协议.
2-comRTS:RTS/CTS(Request To Send/CLear To Send)交握协议.
3-comRTSXonXoff:Request To Send和Xon/Xoff交握协议.
Output: 将一个字符串写入传输缓冲区.
例:MSComm1.Output="ABCDE",此即将ABCDE 5个字符通过RS232传送出去.
Input: 从对方所传至输入缓冲区的字符读进程序中,并清除缓冲区中已被读取的字符.这是一种FIFO(first in first out)的机制.
例:Buffer$=MSComm1.Input.将输入缓冲区的字符读入Buffer字符串变量中.
InputLen: 指定由串行端口读入的字符串长度.(每次读取input时,读取多少字节)
MSComm1.InputLen=10 ''当程序执行Input指令时,只会读取10个字符.假设在输入缓冲区中有
55个字节,则每次Input指令会读取10个字节进来,因此要全部读完所有的数据需要执行6次Input指令.
RThreshold: 接受的字符数.RTHreshold=1----表示当有一个字节到达接收缓冲区时,响应OnComm事件。RTHreshold=10----表示10个字节到达时才响应OnComm事件。
SThreshold: 传输中所能允许的最小字符数. 设置 Sthreshold 属性为 0(缺省值),数据传输事件不会产生 OnComm 事件。若设置 Sthreshold 属性为 1,当传输缓冲区完全空时,MSComm 控件产生 OnComm 事件。如果在传输缓冲区中的字符数小于 value,CommEvent 属性设置为 comEvSend,并产生 OnComm 事件。comEvSend 事件仅当字符数与 Sthreshold 交叉时被激活一次。例如,如果 Sthreshold 等于 5,仅当在输出队列中字符数从 5 降到 4 时,comEvSend 才发生。如果在输出队列中从没有比 Sthreshold 多的字符,comEvSend 事件将绝不会发生。
DTREnable:决定是否使Request To Send(RTS)行有效.
PortOpen:设置通讯端口的状态.True(打开)/False(关闭).
三.错误消息
下面列出了 MSComm 控件可以捕获的错误:
错误号: 描述
380    无效属性值 comInvalidPropertyValue
383   属性为只读 comSetNotSupported
394    属性为只读 comGetNotSupported
8000   端口打开时操作不合法 comPortOpen
8001   超时值必须大于 0
8002   无效端口号 comPortInvalid
8003   属性只在运行时有效
8004   属性在运行时为只读
8005   端口已经打开 comPortAlreadyOpen
8006   设备标识符无效或不支持该标识符
8007   不支持设备的波特率
8008   指定的字节大小无效
8009   缺省参数错误
8010   硬件不可用(被其它设备锁定)
8011   函数不能分配队列
8012   设备没有打开 comNoOpen
8013   设备已经打开
8014   不能使用 comm 通知
8015   不能设置 comm 状态 comSetCommStateFailed
8016   不能设置 comm 事件屏蔽
8018   仅当端口打开时操作才有效 comPortNotOpen
8019   设备忙
8020   读 comm 设备错误 comReadError
8021   为该端口检索设备控制块时的内部错误 comDCBError
 

网学推荐

免费论文

原创论文

浏览:
设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
湘ICP备09003080号