精华内容
下载资源
问答
  • vb程序,显示利用控件,打开设置串口,发送和接收ascii码的上位机基本应用。适用和单片机通信。
  • VB中右键换行

    2015-01-05 11:14:00
    /r/n 能在邮件中进行换行, 在VB中使用  ASCII码的 chr(10)、chr(13) 就能使VB发送邮件实现换行

    /r/n  能在邮件中进行换行,

    在VB中使用 

    ASCII码的

    chr(10)、chr(13)

    就能使VB发送邮件实现换行

    展开全文
  • VB2010串口调试

    2014-09-29 11:07:00
    串口调试一个强大稳定的串口调试工具,完美支持Win7等Windows操作系统,支持常用的波特率及自定义波特率,能设置校验、数据位和停止位,能以ASCII码或十六进制接收或发送任何数据或字符(包括中文),可以任意设定...
  • 串口编程调试工具的VB源代码,支持手动和自动发送消息,设置参数,可以按十六进制,ASCII码、地址、4/8位地址接收消息,发送时也支持本选项。
  • 如果数据使用简单的文本(标准 ASCII码),那么每个数据包使用7位数据。每个包是指一个字节,包括开始/停止位,数据位和奇偶校验位。由于实际数据位取决于通信协议的选取,术语“包”指任何通信的情况。
  • VB调试串口通讯

    2008-01-22 16:34:00
    现有电子秤一台,使用串口与计算机进行通讯。...所有字符均发送11位ASCII码,一个起始位。在VB中与串口通讯需要引入控件MSComm串口通讯控件(在Microsoft Comm Control 6.0中)。具体程序如下:控件简称:MSC
    现有电子秤一台,使用串口与计算机进行通讯。编写VB程序来访问串口,达到读取电子秤上显示的数据。该电子秤为BE01型仪表,输出为RS-232C标准接口,波特率为300-9600、偶校验、7个数据位、2个停止位。所有字符均发送11位ASCII码,一个起始位。在VB中与串口通讯需要引入控件MSComm串口通讯控件(在Microsoft Comm Control 6.0中)。具体程序如下:控件简称:MSC
    Dim Out(12) As Byte  '接收var中的值
    Dim var As Variant  '接收MSC.input中的数值
    Dim nRece As Integer  '计算MSC.inputbuffer的个数
    Dim i As Integer, j As Integer '随即变量,计算循环
    ****************************************************************************
    Private Sub Form_Load()
        ClearText
        With MSC
            .CommPort = 1 '设置Com1为通信端口
            .Settings = "9600,E,7,2"  '设置通信端口参数 9600赫兹、偶校验、7个数据位、1个停止位.(这里需要进一步说明的是:.Setting=”BBBB,P,D,S”
    含义是:BBaud Rate(波特率);PParity(奇偶);DData BitSStop Bit
            .InBufferSize = 40 '设置缓冲区接收数据为40字节
            .InputLen = 1 '设置Input一次从接收缓冲读取字节数为1
            .RThreshold = 1  '设置接收一个字节就产生OnComm事件
        End With
    End Sub
    ****************************************************************************
    Private Sub ClearText()
        Text3.Text = ""
        Text2.Text = "5"
        Text1.Text = ""
    End Sub
     
    Private Sub Command1_Click()
        ClearText
    '    nRece = 0 '计数器清零
        With MSC
            .InputMode = comInputModeBinary '设置数据接收模式为二进制形式
            .InBufferCount = 0  '清除接收缓冲区
            If Not .PortOpen Then
                .PortOpen = True  '打开通信端口
            End If
        End With
    End Sub
    Private Sub MSC_OnComm()
        DelayTime  ‘用来延续时间
        ClearText
        With MSC
            Select Case .CommEvent '判断通信事件
                Case comEvReceive: '收到Rthreshold个字节产生的接收事件
                    SwichVar 1
                    If Out(1) = 2 Then '判断是否为数据的开始标志
                        .RThreshold = 0  '关闭OnComm事件接收
                    End If
                    Do
                        DoEvents
                    Loop Until .InBufferCount >= 3  '循环等待接收缓冲区>=3个字节
    '                nRece = nRece + 1
                    For i = 2 To 12
                        SwichVar i
                        Text1.Text = Text1.Text & Chr(Out(i))
                    Next
                    Text1.Text = LTrim(Text1.Text)
                    Text2.Text = Text2.Text & CStr(nRece)
                    .RThreshold = 1 '打开MSComm事件接收
                Case Else
    '                .PortOpen = False
            End Select
        End With
    End Sub
    ****************************************************************************
    Private Sub DelayTime()
        Dim bDT As Boolean
        Dim sPrevious As Single, sLast As Single
       
        bDT = True
        sPrevious = Timer (Timer可以计算从子夜到现在所经过的秒数,在Microsoft Windows中,Timer函数可以返回一秒的小数部分)
        Do While bDT
            If Timer - sPrevious >= 0.3 Then bDT = False
        Loop
        bDT = True
    End Sub
    通信传输速率为9600bps,则最快速度1.04ms发送一个字节,仪表每秒发送50帧数据,每帧数据有4个字节,即每秒发送200个字节,平均5.0ms 发送一个字节,连续读取串口数据时要在程序中添加循环等待程序
    Private Sub SwichVar(ByVal nNum As Integer)
        DelayTime
        var = Null
        var = MSC.Input
        Out(nNum) = var(0)
    End Sub
    设置接收数据模式采用二进制形式,即 InputMode=comInputModeBinary,但用Input属性读取数据时,不能直接赋值给 Byte 类型变量,只能通过先赋值给一个 Variant 类型变量,返回一个二进制数据的数组,再转换保存到Byte类型数变量中。
    Private Sub Text1_Change()
        Text3.Text = CText(Text1.Text) - CText(Text2.Text)
    End Sub
    ****************************************************************************
    Private Function CText(ByVal str As String) As Currency
        If str <> "" Then
            CText = CCur(Val(str))
        Else
            CText = 0
        End If
    End Function
    仪表每秒发送50帧数据,微机收到一帧完整数据至少需要20 ms时间,然后再进行数据处理。如果微机在下一帧数据接收前即20ms内能将数据计算处理完毕,则接收缓冲区内只会保存有一帧数据,不会存有两帧以上数据,接收缓冲区的大小不会影响实时监测效果(接收缓冲区>4字节),这时完全可以实现实时监测或实时控制;如果微机在20ms内不能将数据计算处理完毕,接收缓冲区设置得又很大,在数据计算处理完毕前,接收缓冲区内就会保存有两帧以上数据,而且一次工作时间越长,缓冲区内滞留数据帧就越多,数据采集和数据处理之间产生逐渐增大的额外时间差,当接收缓冲区充满后,时间差不再增大,固定在某一值,部分数据因不能及时采集到接收缓冲区中,数据产生丢失现象,真实工作情况就会和微机处理结果产生较大的时间差,对实时监测和实时控制很不利,这种情况下接收缓冲区的大小就会影响实时监测效果,所以接收缓冲区设置不能过大,以保证数据处理的实时性。
     小结:本文所用的仪表为梅特勒公司出产的BE01型电子秤,其输出的每个编码均为标准的ASCII码。其他的仪表存在发射的编码中含有BCD压缩码,而且分为高低位,需要接收后对其进行解码换算,之后还要将高位和低位数字进行相加,即可以将其BCD码换算成实数。另还存在误差的可能:判断最大值,仪表在刚开始工作时有干扰,会传导一些乱码,位移传感器有参数偏差,最大值一般都略大于50毫米,所以取51为极限最大值,取-51为极限最小值。暂时先写这些,当然其他的情况可以依此类推!
     
    展开全文
  • 以前做的通讯基本都是“发送命令-响应”的方式,后来接触电子称通讯,发现这种”连续响应“的通讯方式在数据的处理上还是有些去别的。 以MP-C系列电子天平30kg量程(上海舜宇恒平)为...所有数据位ASCII码,波特率9...

    20201126更新

    更改通讯方式方法1)

    开机自检过程中按一次扣重---

    8888---

    按扣重---

    6(或者Kg/b键)---

    显示F7PIT---

    按扣重---

    Kg/b键调整到P  CONT(手动)或者P  AUTO(自动)---

    按扣重--

    -波特率设置---

    按扣重---

    TYPE---

    按扣重---

    PR0或者PR1---

    扣重---

    完成。关机重启动

    或者:

    开机自检过程中按一次扣重---8888---按扣重---显示F1,用公斤和磅的单位转换键切换到F4,按扣重,选择P-CONT

    更改通讯方式方法2)

    在开机自检的时候按一下扣重,然后输入8888,按扣重,

    天平会显示F1 CAL 用单位转换键切换到F4 AU,

    按扣重就可以用单位转换键选择打印的方式,

    OFF 代表手动,P CONT代表自动,

    选好后,按扣重确认即可。

     

    以前做的通讯基本都是“发送命令-响应”的方式,后来接触电子称通讯,发现这种”连续响应“的通讯方式在数据的处理上还是有些去别的。

    以MP-C系列电子天平30kg量程(上海舜宇恒平)为例。

    RS232通讯,接线方式2#-TXD,3#-RXD,5#-GND

     

    2 ----3

    3 ----2

    5 ----5

    注意:需要将F4-PCONT修改为P AUTO

    所有数据位ASCII码,波特率9600BPS,8位数据位,无校验。

    根据手册提供的说明书,以及通过串口工具调试可知,通讯协议如下:

    1、当大于0KG且小于10KG时

    ST,GS,  0.312 ,kg
    U.W.       0 g
    PCS        0pcs

    2、当大于等于10KG时(用手按的,截图不一致)

    US,GS, 10.967 ,kg
    U.W.       0 g
    PCS        0pcs

    3、当小于0KG时

    ST,GS,- 0.312 ,kg
    U.W.       0 g
    PCS        0pcs

    本次工程中只用到称重,故数据处理中将字符"GS"开始的18个字符(为确保数据的完整性)。

    之所以用"GS"作为标志字符,是因为当重量大于等于10KG时,"ST"会变成"US",故选择“GS".

    然后取重量字符串并转换为Single型

    Dim aa As String

    Dim WT As Single

    StartIndex = str.IndexOf("GS")

    aa = str.Substring(StartIndex, 18)

    Dim B As String = Mid(aa, 4, 7)

    WT = CType(Val(B), Single)

    以上

    展开全文
  • 现有电子秤台使用串口和计算机进行通讯编写VB来访问串口达到读取电子...ASCII码个起始位在VB中和串口通讯需要引入Control控件MSComm串口通讯Control控件(在Microsoft Comm Control 6.0中)具体如下:Control控件简称:MSC
  • 所有字符均发送11位ASCII码,一个起始位。在VB中与串口通讯需要引入控件MSComm串口通讯控件(在Microsoft Comm Control 6.0中)。具体程序如下:控件简称:MSC Dim Out(12) As Byte '接收var中的值Dim var As ...
  • 电子秤程式

    千次阅读 2006-10-22 13:02:00
    现有电子秤一台,使用串口与计算机进行通讯。...所有字符均发送11位ASCII码,一个起始位。在VB中与串口通讯需要引入控件MSComm串口通讯控件(在Microsoft Comm Control 6.0中)。具体程序如下:控件简称:MSC

    现有电子秤一台,使用串口与计算机进行通讯。编写VB程序来访问串口,达到读取电子秤上显示的数据。该电子秤为BE01型仪表,输出为RS-232C标准接口,波特率为300-9600、偶校验、7个数据位、2个停止位。所有字符均发送11位ASCII码,一个起始位。在VB中与串口通讯需要引入控件MSComm串口通讯控件(在Microsoft Comm Control 6.0中)。具体程序如下:控件简称:MSC

    Dim Out(12) As Byte '接收var中的值

    Dim var As Variant '接收MSC.input中的数值

    Dim nRece As Integer '计算MSC.inputbuffer的个数

    Dim i As Integer, j As Integer '随即变量,计算循环

    ****************************************************************************

    Private Sub Form_Load()

    ClearText

    With MSC

    .CommPort = 1 '设置Com1为通信端口

    .Settings = "9600,E,7,2" '设置通信端口参数 9600赫兹、偶校验、7个数据位、1个停止位.(这里需要进一步说明的是:.Setting=”BBBB,P,D,S”。

    含义是:B:Baud Rate(波特率);P:Parity(奇偶);D:Data Bit;S:Stop Bit)

    .InBufferSize = 40 '设置缓冲区接收数据为40字节

    .InputLen = 1 '设置Input一次从接收缓冲读取字节数为1

    .RThreshold = 1 '设置接收一个字节就产生OnComm事件

    End With

    End Sub

    ****************************************************************************

    Private Sub ClearText()

    Text3.Text = ""

    Text2.Text = "5"

    Text1.Text = ""

    End Sub

     

    Private Sub Command1_Click()

    ClearText

    ' nRece = 0 '计数器清零

    With MSC

    .InputMode = comInputModeBinary '设置数据接收模式为二进制形式

    .InBufferCount = 0 '清除接收缓冲区

    If Not .PortOpen Then

    .PortOpen = True '打开通信端口

    End If

    End With

    End Sub

    Private Sub MSC_OnComm()

    DelayTime ‘用来延续时间

    ClearText

    With MSC

    Select Case .CommEvent '判断通信事件

    Case comEvReceive: '收到Rthreshold个字节产生的接收事件

    SwichVar 1

    If Out(1) = 2 Then '判断是否为数据的开始标志

    .RThreshold = 0 '关闭OnComm事件接收

    End If

    Do

    DoEvents

    Loop Until .InBufferCount >= 3 '循环等待接收缓冲区>=3个字节

    ' nRece = nRece + 1

    For i = 2 To 12

    SwichVar i

    Text1.Text = Text1.Text & Chr(Out(i))

    Next

    Text1.Text = LTrim(Text1.Text)

    Text2.Text = Text2.Text & CStr(nRece)

    .RThreshold = 1 '打开MSComm事件接收

    Case Else

    ' .PortOpen = False

    End Select

    End With

    End Sub

    ****************************************************************************

    Private Sub DelayTime()

    Dim bDT As Boolean

    Dim sPrevious As Single, sLast As Single

     

    bDT = True

    sPrevious = Timer (Timer可以计算从子夜到现在所经过的秒数,在Microsoft Windows中,Timer 

    展开全文
  • CommTone6串口调试精灵/WEB串口通信

    热门讨论 2011-12-19 21:51:16
    支持常用的110-115200bps波特率,能设置校验、数据位和停止位,能以ASCII码或十六进制接收或发送任何数据或字符(包括中文),可以任意设定自动发送周期。 新增加发送文件功能,支持超大4GB文件传输。 增加OCX二...
  • 2:7bit压缩编码只能传输ASCII码表中的前128个字符,一般不推荐使用,一条短信最多可以传输160个字符,不推荐使用这种编码方式。除非你知道你要传递的内容是在这128个字符中。 方法: 1. 发短信1:long SendMSG...
  • xcyx.smart

    2014-10-15 23:24:20
    三菱FX系列PLC编程口通信协议总览 三菱FX系列PLC编程口通信协议总览 该协议实际上适用于PLC编程端口以及 FX-232AW 模块的通信。...5、PLC侧的响应码中"和效验"是指从"站号"到"EXT"之间的各代码的ASCII码的累加
  • 可以2种模式工作:实时模式:通过电脑串口发送控制命令(可以是ASCII码或字符串)给控制器,在电脑上位机界面上实时控制继电器的输出;程序模式:通过电脑串口下载控制程序到控制器,控制器保存程序,并根据程序和时间...
  • UltraEdit13.0

    2007-04-26 15:45:34
    UltraEdit 是一套功能强大的文本编辑器,可以编辑文本、十六进制、ASCII ,可以取代记事本,内建英文单字检查、C++ 及 VB 指令突显,可同时编辑多个文件,而且即使开启很大的文件速度也不会慢。软件附有 HTML 标签...
  • Java局域网通信——飞鸽传书源代码 28个目标文件 内容索引:JAVA源码,媒体网络,飞鸽传书 Java局域网通信——飞鸽传书源代码,大家都知道VB版、VC版还有Delphi版的飞鸽传书软件,但是Java版的确实不多,因此这个Java...
  • JAVA上百实例源码以及开源项目

    千次下载 热门讨论 2016-01-03 17:37:40
     Java局域网通信——飞鸽传书源代码,大家都知道VB版、VC版还有Delphi版的飞鸽传书软件,但是Java版的确实不多,因此这个Java文件传输实例不可错过,Java网络编程技能的提升很有帮助。 Java聊天程序,包括服务端和...
  • CruiseYoung提供的带有详细书签的电子书籍目录 ... 该资料是《Visual C++ 2005入门经典》的源代码及课后练习答案 对应的书籍资料见: Visual C++ 2005入门经典 ...原书名: Ivor Horton's Beginning Visual C++ 2005 ...
  • SendMessageTimeout 向窗口发送一条消息 SendNotifyMessage 向窗口发送一条消息 3. API之文件处理函数 CloseHandle 关闭一个内核对象。其中包括文件、文件映射、进程、线程、安全和同步对象等 CompareFileTime...
  • WinRAR_4.0.exe

    2011-02-04 11:34:33
    如果输出文件名没有指定,注释数据会被发送到标准输出设备。 例子: 1) rar cw oldarch comment.txt 2) rar cw -scuc arc unicode.txt 3) rar cw arc d 从压缩文件中删除文件。请注意,如果这个命令导致...
  • DirectX8VB组件调用模块.ec disk.ec DisplaySettings.ec DIY 热键框模块.ec DLL.ec DLL注入模块.ec DOS命令模块.ec dqf1996.ec EC.EC edb-html.ec EdbServer1.0 客户端.ec EDB、高级表格、XLS互换.ec edb到...
  • 1345个易语言模块

    2012-01-27 19:41:59
    DirectX8VB组件调用模块.ec disk.ec DisplaySettings.ec DIY 热键框模块.ec DLL.ec DLL注入模块.ec DOS命令模块.ec dqf1996.ec EC.EC edb-html.ec EdbServer1.0 客户端.ec EDB、高级表格、XLS互换.ec edb到...
  • 1350多个精品易语言模块提供下载

    热门讨论 2011-06-06 17:51:09
    DirectX8VB组件调用模块.ec disk.ec DisplaySettings.ec DIY 热键框模块.ec DLL.ec DLL注入模块.ec DOS命令模块.ec dqf1996.ec EC.EC edb-html.ec EdbServer1.0 客户端.ec EDB、高级表格、XLS互换.ec edb到...

空空如也

空空如也

1 2
收藏数 30
精华内容 12
关键字:

vb发送ascii码