资源描述:
《mscomm控件使用详解》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、MSComm控件使用详解2008-04-0619:15:39
2、分类:Windows编程
3、举报
4、字号订阅MSComm控件使用详解MSComm控件的常用属性1.MSComm1.Settings:=’9600,n,8,1’;//设置波特率,校验位,数据位,停止位Settings属性:设置串口的波特率,校验位,数据位,停止位,’9600,n,8,1’表示波特率为9600,无奇偶校验,数据位为8为,1位停止位MSComm1.InBufferSize:=1024;//接受缓冲区大小InBufferSize属性:接收缓冲区的大小,默认值为1024,也可以自己设定,比如,
5、MSComm1.InBufferSize:=2000,则接收缓冲区的大小为2000字节MSComm1.OutBufferSize:=1024;//发送缓冲区大小OutBufferSize属性:发送缓冲区的大小,默认值为1024,也可以自己设定,比如,MSComm1.OutBufferSize:=2000,则发送缓冲区的大小为2000字节MSComm1.InBufferCount:=0;//清空接受缓冲区InBufferCount属性:当前接收缓冲区接收到的数据的长度,count:=MSComm1.InBufferCount,则count值就是接收缓冲区接收
6、到的数据的长度,对InBufferCount赋值MSComm1.InBufferCount:=0,可以清空接受缓冲区MSComm1.OutBufferCount:=0;//清空发送缓冲区OutBufferCount属性:当前发送缓冲区中数据的长度,对OutBufferCount赋值MSComm1.OutBufferCount:=0,可以清空发送缓冲区MSComm1.InputMode:=comInputModeText;//以文本方式取回数据MSComm1.InputMode:=comInputModeBinary;//设置接收数据模式为二进制形式Inpu
7、tMode属性:串口接收数据的模式,comInputModeText(0)表示以文本(ASCII)方式取回数据,comInputModeBinary(1)表示以二进制方式取回数据comInputModeText,comInputModeBinary为预定义常量,分别表示0,1RcvByte:=MSComm1.InputInput属性:通过Input属性可以读取串口中接收到的数据,RcvByte:=MSComm1.Input表示读取串口接收到的数据,其中RcvByte的数据类型为:arrayofByte或arrayofVariant.在读取之前先设置RcvB
8、yte的长度:SetLength(RcvByte,len),如果一次读取所有数据,则SetLength(RcvByte,MSComm1.InBufferCount)MSComm1.Output:=OutputDatOutput属性:通过Output属性可以发送数据,MSComm1.Output:=OutputDat,则将OutputDat中的数据发送出去,其中OutputDat数据类型为arrayofByte,发送前要设置OutputDat的长度,SetLength(OutputDat,len),然后向OutputDat中填入数据,再清空发送缓冲区MSCo
9、mm1.OutBufferCount:=0,然后再发送MSComm1.Output:=OutputDatMSComm1.InputLen:=0;//////////////一次读取所有数据/////////InputLen属性:一次从Input属性中读取数据的长度,MSComm1.InputLen:=1,表示一次读取一个字节,如果MSComm1.InputLen:=0,则表示一次读取全部数据MSComm1.SThreshold:=0;//一次发送所有数据,发送数据时不产生OnComm事件SThreshold属性:通过该属性设置产生OnComm事件(发送时产
10、生)的阀值,若MSComm1.SThreshold:=0,则一次发送所有数据,发送数据时不产生OnComm事件,若MSComm1.SThreshold:=5,当发送缓冲区的字节数从5字节减少到4字节时,产生OnComm事件MSComm1.RThreshold:=1;////////////每接收1个字节就产生一个OnComm事件RThreshold属性:通过该属性设置产生OnComm事件(接收时产生)的阀值,若MSComm1.RThreshold:=0,不产生OnComm事件,若MSComm1.RThreshold:=5,接收缓冲区每收到5字节时,则产生O
11、nComm事件MSComm1.PortOpen:=True;//打