VB MSCOM使用方法

作者&投稿:习安 (若有异议请与网页底部的电邮联系)
VB编程 使用MSComn控件向串口通信端口发送字符信息,把例子的程序完整的复制了,编译没错,但就是不显示~

完整源码,我 来替你 调试一下

手里有个 连接器,可以 方便的 短接 Tx Rx,做自发自收测试!


VB的控件箱里mscom串口通信这个控件,添加后就 是对串口事件编程
界面上主要是设置波特率和打开串口,下图是我设计 的界面,程序比较长,没法贴出来,但比较简单
第一步作到能 显示收到的原始数据,进一步要会转换格式和保存

在窗体中添加名为MyComm的MSComm控件,并设置空间的属性,如下:

Private Sub Form_Load()
Dim i As Integer
With MSComm1
If .CommPort <> 2 Then .CommPort = 2 '设置Com2为通信端口
.Settings = "9600,N,8,1" '设置通信端口参数 9600赫兹、无校验、8个数据位、1个停止位.(这里需要进一步说明的是:.Setting=”BBBB,P,D,S”。
'含义是:B:Baud Rate(波特率);P:Parity(奇偶);D:Data Bit;S:Stop Bit)
.InBufferSize = 1024 '设置缓冲区接收数据为1024字节
.OutBufferSize = 512
.InputMode = comInputModeText '设置数据接收模式为16进制形式
.InputLen = 1 '设置Input一次从接收缓冲读取字节数为1
.RThreshold = 1 '设置接收一个字节就产生OnComm事件
.OutBufferCount = 0 '清空发送缓冲区
.InBufferCount = 0 '滑空接收缓冲区
If Not .PortOpen Then
.PortOpen = True '打开通信端口
End If

End With

推荐一个 好文档Visual_Basic与_RS-232_串行通信控制 如果有 串口通信硬件线路,调试很方便的当然,如果 没有,也没有关系,因为 有 虚拟串口 软件让软件调试非常简便 请去 武汉鸿伟光电 看看,有 虚拟串口 vspd 软件 下载

Private Sub Form_Load()
On Error GoTo Err '出错处理
With MSComm1
.CommPort = 1 '设置串行口为COM1
.Settings = "9600,n,8,1" '设置波特率为1200,无奇偶校验,8位数据位,1位停止位
.InputMode = 0 '设置数据接收按字符串方式
.InputLen = 0 '读取缓冲区的所有内容
.RThreshold = 1 '每接收到1个字节就触发一次OnComm事件
.PortOpen = True '打开串口
End With
Exit Sub
Err: MsgBox "打开端口出错!", vbExclamation
End Sub


仪征市13623697144: VB 中mscomm串口控件的使用... -
永矩斯林: 你这种情况, 很明显是端口被某程序占用了, 如果你的电脑没有什么特殊的程式或现在有的连接,那通常是你目前程式并没有完全结束,同任务管理器看看. 建议先做好端口扫描, 然后依据逐个端口测试未使用..写这种程序楼主一定要注意下面...

仪征市13623697144: PC机通过VB如何与单片机进行通信?具体一点,VB程序如何写,单片机如何接收,MSComm如何控制串口 -
永矩斯林: pc通过串口接收单片机数据用串口oncomm 的CommEvent事件,然后在timer里面循环接收.发送数据就用按钮.

仪征市13623697144: VB连接ACCESS数据库 -
永矩斯林: (1)建立Access数据库(2)引用Ado Data控件和数据感知控件DataGrid(3)分别设置Ado Data控件的ConnectionString、Command- Type、RecordSource三个重要的属性以及DataGrid控件的Data- Source属性 在设置Ado Data控件的...

仪征市13623697144: 使用VB,串口发送大文件,串口设置怎么写 -
永矩斯林: 建议使用 二进制读取文件的方式发送.Open "TESTFILE" For Binary Access Write As #1 Close #1 在二进制访问模式中,可以把文件指针移到文件的任何地方.文件刚被打开时,文件指针指向第一个字节,以后将随着文件处理命令的执行而移动.收到 # 你就继续读取文件发送,收到!你就停止读取.如此循环,直到文件结束,判断文件结束的命令为 eof(#1)=true 我只能告诉你这个方法,具体代码自己写吧.照抄别人的代码不如自己写的代码学到东西的东西多.

仪征市13623697144: VB怎么调用Access数据库 -
永矩斯林: 首先,我们需要引用ADO.具体的方法是,在"工程" -- "引用" 中,找到"Microsoft ActiveX Data Object *.* Library",这里的"*.*"是指的时ADO的版本号,一般来说,利用程序或ActiveX控件都具有向下兼容性,所以我们尽可能选择比较新...

仪征市13623697144: 利用VB访问access数据库 -
永矩斯林: 从数据库中查找某个值,一般都不用data、adodata、datacombo、datagrid之类的控件,除非是列出数据库的很多个值.你的题意就是只查找某个值,所以最好最高效的方法是使用ADO数据库对象,包括:adodb.connection用于连接数据库 ...

仪征市13623697144: 急求VB与Access数据库连接的详细步骤 -
永矩斯林: 方法1, 建立一个模块 将工程的启动设置为 SUB MAIN 在模块里写下面代码 Public db As Database Public rs As Recordset Sub main() set db=db.opendatabase("数据库路径"<建议用相对路径--就是把数据库文件和工程文件放在同一目录下--...

仪征市13623697144: 怎么用VB连接到有密码的ACCESS数据库? -
永矩斯林: 1. 如果有链接字符串,则更改链接字符串:Data Source=path\abc.mdb;Jet OLEDB:Database password=12342. 如果是Data控件,需要设置Data的connect和DatabaseName属性.Data1.connect=”; pwd=1234”Data1.DatabaseName=APP.path ...

仪征市13623697144: VB怎么连接MSSql数据库? -
永矩斯林: 要连接SQL数据库有两种方法用ADODC或ADO.方法一: (ADODC) 首先须引用Projects-Components-Microsoft ADO Data Controls 6.0 (OLEDB).之后在表单设置ADODC控件.然后Form_Load()输入以下代码:Private Sub Form_Load(...

仪征市13623697144: VB如何调用并使用数据库 -
永矩斯林: 连接很简单,你可以用手动在VB中连接.但是你必须建立datagrid控件,用来存储数据在vb中显现. 或者写入公共模块代码.如下: Public Sub main() adocon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\saint....

你可能想看的相关专题

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网